MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Dmax nãofunciona

    Compartilhe

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 07:37

    Boa noite a todos

    estou com um problema no codigoabaixo:

    Private Sub Comando34_Click()
    If IsNull(Me.CpDataAg) = True Then
    MsgBox " O CAMPO DATA AGENDA NAOPODE FICAR EM BRANCO", vbCritical, "INFORME UMA DATA"
    Me.CpDataAg.SetFocus
    Exit Sub
    End If
    Me.CPNPJ = Forms!FrmCadProcesso.CPPJ
    Dim Y As Variant
    Y = DMax("[Sequencia]", "CAD_TRAMITACAO", "[AG_ORI_SEQ] = " & CPNPJ)
    If IsNull(Y) = True Then
    Y = 0
    End If
    Me.ULTSEQ = Y
    Me.DataLan = Now()
    CpUser = DLookup("[CdUsuario]", "Usuario")

    Me.CFicha = Me.REFERENCIA
    Me.ULTSEQ = Me.CPSequencia
    Me.Arquivo = Forms!FrmCadProcesso.Quadro13
    Me.DataLan = Date
    End Sub
    A unica linha que nao esta sendo executa e a linha Dmax
    Não consigo gerar a numeração sequencia conforme o código acima.


    Última edição por Alexandre Neves em Seg 26 Set 2016, 10:04, editado 1 vez(es) (Razão : Estava 'Damx')

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5889
    Registrado : 05/11/2009

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Alexandre Neves em Seg 26 Set 2016, 10:05

    Bom dia,

    Corrigi-lhe o título para possibilitar procuras
    Coloque
    Y = DMax("Sequencia", "CAD_TRAMITACAO", "AG_ORI_SEQ = " & CPNPJ)


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 12:32

    Prezado Alexandre, muito obrigado pela ajuda, vou testar
    Desculpe o erro de digitalização no Titulo.

    Att

    Ney Santos

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 13:06

    Prezado Alexandre , infelizmente não funcionou tambem.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2324
    Registrado : 14/08/2013

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  FabioPaes em Seg 26 Set 2016, 13:25

    AG_ORI_SEQ contem o mesmo Valor que o CPNPJ??? Se nao for dara problemas para localizar o Maior valor amigo...

    Se o campo AG_ORI_SEQ for Numero mude sua função para:

    Y = DMax("Sequencia", "CAD_TRAMITACAO", "AG_ORI_SEQ = " & CPNPJ & "")


    Agora se For Texto mude para:

    Y = DMax("Sequencia", "CAD_TRAMITACAO", "AG_ORI_SEQ = '" & CPNPJ & "'")


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 15:04

    Prezado Fabio..
    Sim Os campos são Iguais ambos são números, o tipo é Inteiro Longo.
    Para uma melhor explicação:
    Tenho uma tabela Cad_Processo, nela tem um Campo "PJ" esse campo é Exclusivo( Chave Primaria).
    Tenho a Tabela CAD_TRAMITACAO, onde o campo "AG_ORI_SEQ" recebe o valor do campo PJ da outra tabela.(Cad_Processo)
    O campo em questão "Sequencia" é como um numerador dos tramites que acontecem em cada processo.
    Como eu estou desenvolvendo esse sistema, mas tive de importar dados ja existentes do programa antigo do meu cliente e
    tive de respeitar o formato de cada campo.
    E assim para cada Processo cujo "PJ" e único eu tenho de criar uma sequencia.
    Utilizei exemplo mas também não esta funcionando..
    Não sei mais oque fazer.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2324
    Registrado : 14/08/2013

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  FabioPaes em Seg 26 Set 2016, 16:30

    AG_ORI_SEQ contem o mesmo Valor que o CPNPJ??? Se nao for dara problemas para localizar o Maior valor amigo...

    O que eu quis dizer é que, CPNPJ me parece um campo que conterá números de CNPJ ou de CPF certo? ja o Campo AG_ORI_SEQ me parece que conterá outros dados... Foi por isso que fiquei confuso...

    O ideal mesmo e vc copiar as partes envolvidas para um novo BD, juntamente com dois ou mais registros (podem sem FICTÍCIOS) para podermos testar...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 16:54

    Prezado Fabio mais uam grato por estar ajudando.
    CPNPJ e  so um nome que inventei para um campo.
    Explicando abro um formulario onde vejo ou lanço um processo.
    Feito isso preciso abrir a tramitação. ( Imagine um form. de Pedidos, onde depois voce lança os detalhes do pedido)
    no caso os detalhes é a tramitação. o campo que une esses dois forms.  para que s elance a tramitação correta e um campo na tabela Dad_Processo chamado "PJ".
    Quando eu lanço um processo através do form. CadastroProcessos,  e gerado um novo "PJ" que e o campo chave da tabela Cad_processos.
    Bom  a tabela Cad_Tramitação e ligada a a tabela Cad_processos pelo campo AG_ORI_SEQ que recebe o o numero do "PJ".
    Então quando lanço uma tramitação,  o código faz o seguinte:
    Adiciona um novo registro na tabela CAD_Tramitação, informando varias informações e precisa gerar uma numeração que indique
    qual e a ultima tramitação que foi lançada.
    Porem preciso filtrar que processo esta sendo modificado isso se faz através do campo AG_ORI_SEQ , que recebeu o campo PJ da tabela Cad_Processo.
    Esse BD e de um programa antigo do cliente tive de importar as tabelas, por isso os nomes são estranhos.
    Perdoe se estiver confuso.
    Posso filtrar uns registros e enviar um bd

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2324
    Registrado : 14/08/2013

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  FabioPaes em Seg 26 Set 2016, 17:11

    Melhor posta o exemplo somente com as partes envolvidas... Mande poucos registros para nao confundir muito...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Seg 26 Set 2016, 18:22

    SEGUE O BD BEM COMPACTADO
    ABRA O FORM "LocFicha" digite 100 escolha arquuivo "M"
    ele vai mostrar o processo de 2 cliques na caixa de listagem ele abrira o processo
    no form processo que vai abrir clique em Tramitação clique no botao"+" parta adcionar um nov regsitro
    prteecnha as guias  e clique no botao comando 34
    Anexos
    Database1.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1 Mb) Baixado 4 vez(es)

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2324
    Registrado : 14/08/2013

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  FabioPaes em Ter 27 Set 2016, 00:30

    Amigo, aqui funcionou certinho... ele traz o Maior Numero certinho... para testar, coloque uma Mensage Box logo a baixo do
     Y= Dmax...


    Agora me fala uma coisa, o que deveria estar acontecendo apos clicar no Comando34, e que nao esta ocorrendo? Pois se for o preenchimento do Campo ULTSEQ esta ocorrendo um probleminha que descrevo na imagem a baixo:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Veja se seria isso...


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Ney Santos
    Intermediário
    Intermediário

    Respeito às Regras 75%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 23/05/2011

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  Ney Santos em Ter 27 Set 2016, 07:42

    Prezado Fabio
    Oque dizer depois de uma explicação tão detalhada..
    Você está completamente certo, acontece que eu inverti a linha,
    pois deveria pegar o valor do campo UlSeqe lançar no campo CpSequencia.
    Acabei que depois dessa aula maravilhosa ( rss) reescrevi o codigo e ficou mais funcional,
    pois vi que não havia necessidade do campo ULTSEQ veja como ficou:

    Private Sub Comando34_Click()
    If IsNull(Me.CpDataAg) = True Then
    MsgBox " O CAMPO DATA AGENDA NAOPODE FICAR EM BRANCO", vbCritical, "INFORME UMA DATA"
    Me.CpDataAg.SetFocus
    Exit Sub
    End If
    Me.CPPJ = Me.CPNPJ
    Dim Y As Variant
    Y = DMax("SEQUENCIA", "CAD_TRAMITACAO", "AG_ORI_SEQ = " & CPNPJ & "")
    If IsNull(Y) = True Then
    Y = 0
    End If
    'MsgBox Y
    Me.CPSequencia = Y + 1
    Me.DataLan = Now()
    CpUser = DLookup("[CdUsuario]", "Usuario")
    Me.CFicha = Me.REFERENCIA
    Me.Arquivo = Forms!FrmCadProcesso.Quadro13
    Me.DataLan = Date
    End Sub

    Como voce pode ver(a linha em negrito) eu agora lanço o valor direto no campo Sequencia.
    Meu muito obrigado, a s vezes o erro está na nossa cara e não enxergamos.
    Att

    Ney Santos
    Post Resolvido.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2324
    Registrado : 14/08/2013

    Re: [Resolvido]Dmax nãofunciona

    Mensagem  FabioPaes em Ter 27 Set 2016, 14:13

    Pois então, esse foi um ponto que eu tinha duvidas, mas esqueci de postar (Me.CPSequencia = Y + 1) 


    Que bom que deu certo agora... Ate a próxima se Deus quiser!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

      Data/hora atual: Qui 08 Dez 2016, 14:08