MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


3 participantes

    [Resolvido]Ultimo registo do cliente, não da tabela.

    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 13:10

    Gostei do código abaixo, fornecido pelo colega Noobezinho, fico grato.
    Mas acontece que preciso trazer o ultimo registro de um certo cliente
    ele me traz o primeiro registro dele.

    Não estou sabendo como colocar um filtro, alguém pode me ajudar, por favor



    [Resolvido]Ultimo registo do cliente, não da tabela. 1e0shx


    Código



    Dim seq As String, k
    DoCmd.OpenForm "Frm_Sinais", acNormal
    DoCmd.GoToRecord , "Frm_Sinais", acNewRec


    seq = "[DataInternacao] & '|' & [DataInternacao_UTI] & '|' &[MotivoInternacao] & '|' & [HPMA] & '|' &[AntecedentesPessoais] & '|' & [Reinternacao_Menor24] & '|' &[Reinternacao_Menor30] & '|' & [Especialidade]"
    seq = DlookupX(seq, "Tbl_Sinais", "ID_Cliente =" & Me.ID_Cliente & "")
    k = Split(seq, "|")


    If Not IsNull(k(0)) Then
    [Forms]![Frm_Sinais]![DataInternacao] = k(0)
    [Forms]![Frm_Sinais]![DataInternacao_Uti] = k(1)
    [Forms]![Frm_Sinais]![MotivoInternacao] = k(2)
    [Forms]![Frm_Sinais]![HPMA] = k(3)
    [Forms]![Frm_Sinais]![AntecedentesPessoais] = k(4)

    If Not IsNull(k(5)) Then

    [Forms]![Frm_Sinais]![Reinternacao_Menor24] = True
    End If

    End

    If Not IsNull(k(6)) Then

    [Forms]![Frm_Sinais]![Reinternacao_Menor30] = True

    End If

    [Forms]![Frm_Sinais]![Especialidade] = k(7)

    End If

    Módulo








    Public Function DlookupX(NomeCampo As Variant, nomeTabela As Variant, Optional filtro As String = "") As Variant
    Dim rs As DAO.Recordset
    On Error GoTo trataerro
    Dim strSql As String
    strSql = "Select (" & NomeCampo & ") AS k FROM " & nomeTabela & IIf(filtro = "", ";", " WHERE " & filtro & ";")
    Set rs = CurrentDb.OpenRecordset(strSql, 4)
    DlookupX = rs("K")
    rs.Close
    Set rs = Nothing
    sair:
       Exit Function
    trataerro:
    Select Case Err.Number
       Case 3061: MsgBox "DLookupX - Campo inexistente...", vbInformation, "Aviso"
       Case 3031: MsgBox "DLookupX - Conexão fechada com a base de dados...", vbInformation, "Aviso"
       Case 3078: MsgBox "DlookupX - Tabela inexistente...", vbInformation, "Aviso"
       Case 3464: MsgBox "DlookupX - Tipos de dados incopatíveis...", vbInformation, "Aviso"
       Case 3021: DlookupX = Null
       Case Else
           MsgBox "DLookupX - " & Err.Description & " Nº: " & Err.Number
    End Select
    End Function


    Última edição por nursing1 em 25/2/2018, 13:23, editado 1 vez(es) (Motivo da edição : ADD IMG)
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 13:38

    Vamos fazer jus que quem tem direito

    Essa função e outras, foram gentilmente fornecidas aqui no fórum pelo amigo Avelino Sampaio.


    Para retornar o ultimo registro de um cliente, não seria mais fácil utilizar uma consulta que retorne isso?

    Acredito que deva ter um campo data ou outro qualquer para verificação do ultimo registro.

    Então, na consulta irá usar o TOP 1  com o campo data digamos decrescente.

    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 14:04

    Essa formularios vai ser feito
    Dia e Noite ou as x só dia

    Como poderia fazer pela Data, colocando um campo dia e noite.
    Sei lá.
    Difícil eu acho.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Ideias

    Mensagem  nursing1 25/2/2018, 14:19

    Uma luz....
    Estou pensando em achar um lógica
    Para guardar o numero do registro do formulário em uma variável.

    Tipo assim, cada cliente vai ter uma variável que receberá o valor do código da evolução.
    Quando ele criar outra evolução, essa variável muda para o valor da evolução atual.

    Vou pensar um pouco mais...


    A variável zera ao fechar o programa,
    tenho que ter um campo com esse numero, que terá que ser atualizado a cada nova evolução.



    Última edição por nursing1 em 25/2/2018, 14:53, editado 1 vez(es) (Motivo da edição : dúvidas)
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 14:59

    Está se esquecendo da hora. Wink

    Tem a data com a hora junto

    Assim é verificado a data e a hora ao mesmo tempo

    now() - retorna o dia e hora atual



    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 15:03

    mas como fazer com que me traga o ultimo horário da data, e tem mais
    tem uns médicos que fazem a evolução da noite na madrugada, da na busca da data anterior não vai achar a da madrugada.

    A idéia é boa, mas para o meu caso scratch



    Talvez funcione como mencionei

    Na tabela cadastroCliente, criou um campo codigoEvolucao
    que ficará em branco em quanto não lançarem uma evolução.

    Quanto abrir uma evolução para esse cliente, o campo na cadastroCliente.codigoEvolucao recebe esse código
    que virá por um update.

    Na minha cabeça funciona. rs



    Última edição por ahteixeira em 1/3/2018, 08:22, editado 2 vez(es) (Motivo da edição : duvidas)
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 15:33

    Jerry

    Sabe utilizar a janela imediata do vba?

    Se não, seria interessante vc ver no google como trabalhar com ela.

    Ela vai te ajudar a sanar muitas dúvidas.

    Copie e cole essa expressão na janela imediata: a cada linha de um enter

    ? #25/02/2018 11:58:31# < #25/02/2018 12:27:38#


    ? #25/02/2018 12:27:38# >#25/02/2018 11:58:31

    Veja que cada uma das expressões irá retornar verdadeiro.

    Isso significa que o Access irá colocar sempre a ultima data-hora na consulta que mencionei.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 15:38

    Entendi sobre o que pretende.

    Quando precisar é procura pelo código digitado na tblCadastroCliente.

    Ótima solução.



    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 21:29

    Para gerar o código abaixo criei uma consulta de update, nela pede o codigo da evolução e o id do cliente.
    Funciona perfeitamente.

    mas quando colo no código não acontece nada.  scratch


    SQL="UPDATE Tbl_Pacientes SET Tbl_Pacientes.CodEvolucao = [Formulários]![Frm_Evolucao]![CodigoEvolucao] WHERE (((Tbl_Pacientes.ID_Cliente)=[Formulários]![Frm_Cad_Pacientes]![ID_Cliente]));

    CurrentDb.Execute (SQL)


    Já tenho um update que funciona perfeitamente, que é esse abaixo.
    No código

    SQL = "Update [Tbl_Leito] set [Status] = 'Ocupado' where Leito =" & Me.Leito.Column(0) & "" '


    Alguém sabe onde está o erro?


    Última edição por ahteixeira em 1/3/2018, 08:22, editado 2 vez(es) (Motivo da edição : COLEI O CODIGO ERRADO)
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 22:12

    Primeiro experimente colocar a aspas duplas no final da sentença SQL, se não funfar, tente a de baixo.


    SQL="UPDATE Tbl_Pacientes SET Tbl_Pacientes.CodEvolucao = " & [Forms]![Frm_Evolucao]![CodigoEvolucao] & " WHERE (((Tbl_Pacientes.ID_Cliente)=" & [Forms]![Frm_Cad_Pacientes]![ID_Cliente] & "));"


    Se funcionar, vai dar mensagem que um registro foi atualizado.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 22:29

    Funcionou, sem avisar que a linha iria ser atualizada, estranho né, por que geralmente avisa.
    A unica coisa que tive que tirar foi o  ponto e virgula.

    Muito obrigado, obrigado mesmo.


    E não coloquei nenhum código para tirar alerta...


    Última edição por ahteixeira em 1/3/2018, 08:23, editado 2 vez(es) (Motivo da edição : ps)
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 22:46

    Vou ver se vai funcionar o objetivo principal.
    Dai dou como resolvido

    Uma duvida, meu formulario não abre nem a pau.

    Dai clic no navegador com o lado direito e mandei pra designe
    tb não aparece, observei que apareceu a barra de rolagem a esquerda e embaixo.

    Ela ta lá pra baixo.

    Como resolve isso.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 25/2/2018, 22:50

    apareceu agora, coloque auto centralizar

    Falha nossa, o engraçado é que nunca desapareceu assim.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 25/2/2018, 22:57

    Sei como é isso. Razz

    Estava a uma semana sem poder fixar a janela imediata na parte debaixo da página de VBA.

    Até que descobri que ela está la embaixo, quase nas profundezas do inferna, tive deixar ela bem grande pra poder corrigi a coisa. Twisted Evil

    Verdade, o tópico não for resolvido ainda, eita. to viajando!

    [ ]'s





    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 26/2/2018, 00:40

    Então, o código do Avelino Sampaio.

    Como trato os nulos nessa função
    Eu vi que pode se usar a função Nz, mas não estou acertando.

    Erro em tempo de execução '94'
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 26/2/2018, 00:57

    Vou ver na semana com calma

    Noobezinho, esse codigo na tabela evolução funciona perfeitamente, quando está nulo ele copia os campos para o formulario.

    Mas não esta acontecendo o mesmo para a tabela sinais.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 26/2/2018, 01:47

    Não tem segredo

    Nz(valor,0)

    Se o valor for nulo, retorna 0

    Em consultas ou dentro de controles de formulário,  use ( ; ) no lugar  de ( , )


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 28/2/2018, 13:48

    Como eu faço, a pesquisa abaixo

    [Resolvido]Ultimo registo do cliente, não da tabela. Foto10

    Eu quero trazer os dados da tabela Tbl_Sinais enquanto o codigo da mesma for igual ao campo codSinais da tabela pacientes.



    SELECT Tbl_Sinais.CodigoSinais, Tbl_Sinais.DataInternacao, Tbl_Sinais.DataInternacao_Uti
    FROM Tbl_Sinais
    WHERE (((Tbl_Sinais.CodigoSinais)=[Tbl_Pacientes]![CodSinais]));




    Chamada da função








    seq = DlookupX(seq, "Tbl_Sinais", "ID_Cliente =" & Me.ID_Cliente & "")


    função







    Public Function DlookupX(NomeCampo As Variant, nomeTabela As Variant, Optional filtro As String = "") As Variant
    Dim rs As DAO.Recordset
    On Error GoTo trataerro
    Dim strSql As String
    strSql = "Select (" & NomeCampo & ") AS k FROM " & nomeTabela & IIf(filtro = "", ";", " WHERE " & filtro & ";")
    Set rs = CurrentDb.OpenRecordset(strSql, Cool

    DlookupX = rs("K")
    rs.Close
    Set rs = Nothing
    sair:
       Exit Function
    mas como fica a chamada da função, aqui destaquei em vermelho.



    Já vi que vou ter que mexer na função tb, Sad
    Anexos
    [Resolvido]Ultimo registo do cliente, não da tabela. AttachmentNew System3.zip
    Ai está o projeto
    Você não tem permissão para fazer download dos arquivos anexados.
    (574 Kb) Baixado 26 vez(es)
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 28/2/2018, 16:11

    Como funciona

    Frm_Cad_Pacientes

    Nessa tela apesar do nome, não farei cadastro de pacientes, apenas vou escolher qual paciente vou trabalhar, dai eu clic no paciente que eu quero na caixa de listagem
    e nos botões abaixo eu escolho o que fazer
    SINAIS - EVOLUÇÃO

    dependendo da seleção, vou trazer alguns campos, não todos, que ja tenha registro anterior.
    Exemplo, o cliente tal, já tem uma evolução anterior ( o numero dessa evolução está cadastrado na tabela cadastro de paciente). Se houver dados vai me trazer no registro novo, caso contrario vai ficar em branco.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 28/2/2018, 20:46

    Jerry

    Primeiro:

    SELECT Tbl_Sinais.CodigoSinais, Tbl_Sinais.DataInternacao, Tbl_Sinais.DataInternacao_Uti

    FROM Tbl_Sinais WHERE (((Tbl_Sinais.CodigoSinais)=[Tbl_Pacientes]![CodSinais]));


    Isso só funciona com critério baseado num registro de um formulário. Ex.Sad=me!CodigoSinais).

    Mas esqueça o DlookupX() , porque não é o caso.

    Você escreveu:

    "dependendo da seleção, vou trazer alguns campos, não todos, que ja tenha registro anterior."


    Terá que definir em formulário com quais campos deseja trabalhar:

    Tem duas maneiras de se fazer isso, e é você que deverá definir como fazer:

    - Criar um formulário, para que o usuário escolha com quais campos irá trabalhar.
     Uma vez que é escolhido os campos, faz-se uma consulta  para exibir os campos escolhidos no formulário
     que irá se abrir.
      Coloque essa consulta na fonte de registro desse formulário(Sinais/evolução), via código VBA.

    - Se sempre for utilizar as mesmas mudança para a exibição dos campos nos formulário
     poderá fazer consultas distintas para cada situação.
     Mas terá que ter também um formulário antes, para a escolha com que trabalhar.

    Me fiz entender?


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Cont

    Mensagem  nursing1 28/2/2018, 22:02

    Então, vc está querendo dizer que não é possivel fazer consulta em uma tabela baseado em um campo em outra tabela.
    Não manjo muito, pra não falar nada de SQL, mas achei que seria possivel rolar ai um INNER JOIN, não sei.

    O problema tb seria adaptar isso ao código do Avelino

    Tá vou re ler sua informação e ver o que faço, fico muito grato pela sua ajuda.
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 28/2/2018, 22:22

    Sua segunda opção é a que preciso.
    Por que sempre vão  ser os mesmo campo que serem importado.

    Então antes de abrir o formulário que preciso, tenho que abrir um formulario de consulta, apenas com os campos que preciso para depois abrir o outro já com os campos copiados.
    É isso.


    Última edição por ahteixeira em 1/3/2018, 08:26, editado 2 vez(es) (Motivo da edição : erros ortograficos)
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 28/2/2018, 22:32

    Acabou de me vir uma ideia.



    dar um select na tabela pacientes e me importando o codEvolucao para um campo que irei cria no formulario, vou precisar deixar ele invisivel, ou escondido atrás de algo.

    Uma vez o campo estando com ele, esse comando abaixo eu só troco o que está destacado em vermelho para
    "CodEvolucao="&Me.CodEvolucaoAnterior& ""

    seq = Nz(DlookupX(seq, "Tbl_Sinais", "ID_Cliente =" & Me.ID_Cliente & ""), 0)

    Tenho que tratar o erro se campo estiver vazio.(O paciente acabou de ser admitido e não tem nenhuma evolução)

    E vou tentar sua ideia tb


    Última edição por nursing1 em 28/2/2018, 22:36, editado 1 vez(es)
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 28/2/2018, 22:34

    Gosto muito de programação, mas confesso que tenho muita dificuldade.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Alvaro Teixeira 1/3/2018, 08:33

    Olá a todos,

    Jerry, isso é o mais importante, está no sítio certo com o MaximoAccess.

    Estive a retirar o título das suas mensagens, quando abrimos um tópico colocamos o título na primeira mensagem e o sistema repete automaticamente.
    Devemos deixar vazio, é importante para as "buscas" no forum.

    Abraço a todos
    avatar
    nursing1
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 16/02/2017

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  nursing1 3/3/2018, 16:49

    Por enquanto está funcionando o código abaixo, usando a função do Sr. Avelino

    Private Sub CMD_Sinais_Click()

    Dim seq As String, k
    DoCmd.OpenForm "Frm_Sinais", acNormal
    DoCmd.GoToRecord , "Frm_Sinais", acNewRec

    [Forms]![Frm_Sinais]![ID_Cliente] = [Forms]![Frm_Pacientes]![ID_Cliente] ' Coloca o codigo do formulario = ao do cliente selecionado no form cad_paciente
    [Forms]![Frm_Sinais]![Nome] = [Forms]![Frm_Pacientes]![Nome] ' Mostra o nome do cliente apenas para efeito visual
    [Forms]![Frm_Sinais]![Leito] = [Forms]![Frm_Pacientes]![Leito] ' Mostra o nome do cliente apenas para efeito visual

    ' Verifica se já existe um lançamento no campo codSinais na tabela paciente

    Flag = Nz(DLookup("codSinais", "Tbl_Pacientes", "ID_Cliente=" & Me.ID_Cliente), 0)

    ' se a consulta acima for diferente de 0 vai executar o codio abaixo, caso contrario o formulário vai abrir em branco

    If Flag <> 0 Then


    seq = "[DataInternacao] & '|' & [DataInternacao_UTI] & '|' &[MotivoInternacao] & '|' & [HPMA] & '|' & [AntecedentesPessoais] & '|' & [Reinternacao_Menor24] & '|' &[Peso] & '|' & [Emergencia] & '|' & [Enfermaria] & '|' & [CentroCirurgico] & '|' &[Reinternacao_Menor30] & '|' & [Especialidade]" ' & '|' &[Carro9] & '|' & [Carro10]"

    'busca na tabela sinais o valor da flag (que é o ultimo registro do cliente)
    seq = Nz(DlookupX(seq, "Tbl_Sinais", "CodigoSinais =" & Flag & ""), 0)


    k = Split(seq, "|")


    [Forms]![Frm_Sinais]![DataInternacao] = k(0)
    [Forms]![Frm_Sinais]![DataInternacao_Uti] = k(1)
    [Forms]![Frm_Sinais]![MotivoInternacao] = k(2)
    [Forms]![Frm_Sinais]![HPMA] = k(3)
    [Forms]![Frm_Sinais]![AntecedentesPessoais] = k(4)
    [Forms]![Frm_Sinais]![Reinternacao_Menor24] = k(5)
    [Forms]![Frm_Sinais]![Peso] = k(6)
    [Forms]![Frm_Sinais]![Emergencia] = k(7)
    [Forms]![Frm_Sinais]![Enfermaria] = k(Cool
    [Forms]![Frm_Sinais]![CentroCirurgico] = k(9)
    [Forms]![Frm_Sinais]![Reinternacao_Menor30] = k(10)
    [Forms]![Frm_Sinais]![Especialidade] = k(11)


    End If




    ' Atualiza o campo CodSinais com o codigo atual
    SQL = "UPDATE Tbl_Pacientes SET Tbl_Pacientes.CodSinais = " & [Forms]![Frm_Sinais]![codigoSinais] & " WHERE (((Tbl_Pacientes.ID_Cliente)=" & [Forms]![Frm_Sinais]![ID_Cliente] & "))"

    CurrentDb.Execute (SQL)
    End Sub
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Noobezinho 3/3/2018, 18:16

    Opa!

    Ótimo Jerry

    Parabéns!

    Valeu pelo retorno!

    Boa sorte!


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.

    Conteúdo patrocinado


    [Resolvido]Ultimo registo do cliente, não da tabela. Empty Re: [Resolvido]Ultimo registo do cliente, não da tabela.

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 11:03