MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Compartilhe
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  HARYSOHN em 4/12/2017, 18:52

    Amigos tenho a seguinte consulta que funciona perfeitamente:

    StrSql = "Select idMovimento as Num,IdCaixa as Documento, space(3) & dataMovimento As Movimento, Historico AS Histórico, iif(valorCredito=0,'',format(valorcredito,'standard')) As Crédito, " _
    & "iif(valordebito=0,'',format(valorDebito,'standard')) AS Débito, format(SaldoLinha,'standard') as Saldo, CpDescId, cpTipoId, CpContaId" _
    & " FROM " & tblTemp & " WHERE " & filtro & " ORDER BY dataMovimento;"

    Esta consulta é baseada na tabela constante na string tblTemp
    Nesta tabela tenho o campo cpTipoID (Em negrito acima)
    Este campo refere-se a uma identificação na tabela ContaDetalhes

    Pretendo através do Dlookup exibir na consulta o campo referente
    Tentei assim a a consulta retorna vazia:

    StrSql = "Select idMovimento as Num,IdCaixa as Documento, space(3) & dataMovimento As Movimento, Historico AS Histórico, iif(valorCredito=0,'',format(valorcredito,'standard')) As Crédito, iif(valordebito=0,'',format(valorDebito,'standard')) AS Débito, format(SaldoLinha,'standard') as Saldo, CpDescId, cpTipoId, CpContaId" _
    & "DLookup(TipoConta, ContaDetalhes, Id_Detalhes = CpTipoID)" _
    & " FROM " & tblTemp & " WHERE " & filtro & " ORDER BY dataMovimento;"

    Alguma sugestao?

    Saudações
    Harysohn


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  HARYSOHN em 4/12/2017, 19:16

    Amigos.. Em uma MSG funciona com aspas duplas:

                MsgBox DLookup("[TipoConta]", "ContaDetalhes", "[Id_Detalhes] = 53")

    Na consulta SQL/VBA com aspas Simples:
    DLookup('TipoConta', 'ContaDetalhes', 'Id_Detalhes = 53')

    44400 StrSql = "Select idMovimento as Num,IdCaixa as Documento, space(3) & dataMovimento As Movimento, Historico AS Histórico, iif(valorCredito=0,'',format(valorcredito,'standard')) As Crédito, " _
                 & "iif(valordebito=0,'',format(valorDebito,'standard')) AS Débito, format(SaldoLinha,'standard') as Saldo, CpDescId, cpTipoId, CpContaId," _
                 & " DLookup('TipoConta', 'ContaDetalhes', 'Id_Detalhes = 53')" _
                 & " FROM " & tblTemp & " WHERE " & filtro & "  ORDER BY dataMovimento;"

    Obrigado


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  HARYSOHN em 4/12/2017, 19:23

    Agora funciona colocando o numero da id

    DLookup('TipoConta', 'ContaDetalhes', 'Id_Detalhes = 53')

    Como ao inves de 53 colocar o campo referante na tabela de origem?

    Que é o cpTipoID

    Cumprimentos


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  HARYSOHN em 4/12/2017, 19:47

    A solução:

    StrSql = "Select idMovimento as Num,IdCaixa as Documento, space(3) & dataMovimento As Movimento, Historico AS Histórico, iif(valorCredito=0,'',format(valorcredito,'standard')) As Crédito, " _
    & "iif(valordebito=0,'',format(valorDebito,'standard')) AS Débito, format(SaldoLinha,'standard') as Saldo, CpDescId, cpTipoId, CpContaId," _
    & " DLookup('TipoConta', 'ContaDetalhes', 'Id_Detalhes = ' & CpTipoID)" _
    & " FROM " & tblTemp & " WHERE " & filtro & " ORDER BY dataMovimento;"

    Dlookup em uma consulta SQL/VBA fazendo referência a um campo da tabela de origem

    DLookup('TipoConta', 'ContaDetalhes', 'Id_Detalhes = ' & CpTipoID)


    Cumprimentos


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  Alexandre Neves em 4/12/2017, 19:52

    Boa noite, amigo Hary
    Porque não incluir na instrução o relacionamento da tabela?
    StrSql = "Select idMovimento as Num,IdCaixa as Documento, space(3) & dataMovimento As Movimento, Historico AS Histórico, iif(valorCredito=0,'',format(valorcredito,'standard')) As Crédito, iif(valordebito=0,'',format(valorDebito,'standard')) AS Débito, format(SaldoLinha,'standard') as Saldo, CpDescId, cpTipoId, CpContaId", _
    & "(SELECT TipoConta FROM ContaDetalhes WHERE Id_Detalhes=CpTipoID) AS TipoConta" _
    & " FROM " & tblTemp & " WHERE " & filtro & " ORDER BY dataMovimento;"
    Abraço,

    Será mais rápido que DLookup


    .................................................................................
    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
    avatar
    HARYSOHN
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 12246
    Registrado : 01/03/2011

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  HARYSOHN em 4/12/2017, 20:18

    Boas Alexandre... Tudo na Paz?

    Então... o que ocorre é que este formulário é baseado em uma tabela temporária...
    ou seja, quando o formulário abre extrai as informações da tabela base segundo critérios de filtros de dias... justamente devido a limitação de registro na lstBox... Ao abrir o formulário é criada uma tabela temporária que recebe os registros filtrados da tabela original... essa tabela é excluida recriada a cada operação...Eu ate fiz o relacionamento... o que funcionou para uma consulta... so que o relacionamento impede a exclusao e criação de nova tabela... Então dá erro "A tabela Tmp já existe" Por isso optei pelo Dlookup


    Abraços


    .................................................................................
    PILOTO
    الله أكبر Paz, Justiça e Liberdade! الله أكبر
    CLIQUE AQUI E VEJA O VÍDEO >>> BIOMETRIA EM ACCESS

    Iniciando no Access? Então veja esse tópico e também esse


    BUSCA NO FÓRUM - CLIQUE AQUI!!!

    Quando tua dúvida for RESOLVIDA, dê retorno com AGRADECIMENTO a aqueles que gastaram seu tempo em te ajudar.
    Clique no botão Resolvido logo acima do botão Enviar, do lado direito. Todos nós agradecemos.  
    [Você precisa estar registrado e conectado para ver esta imagem.]

    gutobrotas
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 66
    Registrado : 16/02/2013

    Re: [Resolvido]Consulta a campo de outra tabela cujo ID está na tabela da consulta

    Mensagem  gutobrotas em 6/12/2017, 16:13

    caramba... vcs manjam demais!!!
    vou tentar adaptar aqui
    obrigado

      Data/hora atual: 16/11/2018, 12:21