Autor Tópico: consulta com parâmetros de dois bancos  (Lida 4043 vezes)

aneachic

  • Visitante
consulta com parâmetros de dois bancos
« Online: Dezembro 23, 2007, 02:02:12 pm »
Olá,

Estou desenvolvendo um sistema que utiliza duas bases de dados distintas e precisava criar uma consulta com dados de uma tabela de um banco que, tomando por base o Código do lançamento apresentasse para mim os itens desta tabela que existem em uma tabela de outro banco.
Resumindo precisava utilizar o comando INNER JOIN na instrução SQL comparando os códigos, simulei a consulta com tabelas do mesmo banco e funciona perfeitamente, o problema é que cada tabela está em um banco de dados e não estou conseguindo fazer um INNER JOIN entre elas.

Obrigado,

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: consulta com parâmetros de dois bancos
« Responder #1 Online: Dezembro 23, 2007, 08:33:23 pm »
Faça Sub-Consulta ou no lookup vc pode obter dados de outra conexão, ou busque os dados vi sc_lookup

aneachic

  • Visitante
Re: consulta com parâmetros de dois bancos
« Responder #2 Online: Dezembro 24, 2007, 08:26:54 am »
se eu buscasse os dados via sc_lookup, como eu poderia utilizar esta informação no INNER JOIN?

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: consulta com parâmetros de dois bancos
« Responder #3 Online: Dezembro 25, 2007, 09:03:19 pm »
Não poderia usar no inner join. A cada registro lido vc iria na mão e buscaria os registros relacionados da tabela e banco qu enão fazem parte da conexão principal, e moveria esses valores para os campos criados manualmente na consulta.

aneachic

  • Visitante
Re: consulta com parâmetros de dois bancos
« Responder #4 Online: Dezembro 26, 2007, 10:10:56 am »
Estou tentando fazer essa busca manualmente, no lookup de consulta do campo criado, porém oque não estou conseguindo fazer é um select a busque dados de uma tabela de um banco de dados que não é o banco sobre o qual a consulta foi desenvolvida.

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: consulta com parâmetros de dois bancos
« Responder #5 Online: Dezembro 26, 2007, 10:35:19 am »
Você pode criar uma segunda conexão e passar o nome dela como parâmetro do sc_lookup.

aneachic

  • Visitante
Re: consulta com parâmetros de dois bancos
« Responder #6 Online: Dezembro 27, 2007, 08:45:13 am »
consegui fazer funcionar utilizando a clausula NOT IN e informando o caminho completo da tabela do outro banco (Sevidor.Banco.Usuário.Tabela), porém agora estou com outro problema, tenho que calcular a diferença entre dois campos data só que estão no formado "dd/mm/aaaa hh:mm:ss" e a macro sc_dif_date não os está aceitando.....

Victor Alcântara de Moraes

  • Novato
  • *
  • Mensagens: 34
  • CBTU - Metrorec
    • www.metrorec.com.br
    • Email
Re: consulta com parâmetros de dois bancos
« Responder #7 Online: Dezembro 27, 2007, 11:22:55 am »
Não sei se entendi bem a sua dúvida mas vamos lá, em algumas aplicações que desenvolvi aqui também às vezes necessitava mexer com a data e tinha problemas de compatibilidade com data e hora, o que faço é no campo onde a data vai ser processada, troquei o tipo, em campos, vai no campo que tem a data e nas configurações dele a primeira que tem dizendo o tipo geralmente está marcado como data e hora, troca para somente data.
Acho que soluciona seu problema, espero ter ajudado.
Atenciosamente,
Victor A Moraes.
CBTU - Metrorec
GEIOM - DESENVOLVIMENTO

aneachic

  • Visitante
Re: consulta com parâmetros de dois bancos
« Responder #8 Online: Dezembro 27, 2007, 04:47:39 pm »
No meu caso, na consulta o campo está marcado como campo data, porém ele apresenta o campo apenas mascarado como data, quando a gente faz a consulta SQL para cálculo da diferença de dadas o valor que o SQL busca é do do banco que é data e hora e eu não tenho como alterar informações deste banco, pois esta informação é apresentada em um banco de um outro sistema, que eu consulto para alimentar informações no sistema que estou desenvolvendo.
Tentei utilizar o clausula datediff do sql pedindo para calcular a diferença através do parametro "dayofyear" porém na consulta não consigo fazer funcionar, este comando só funcionou em um formulário.
o que vou tentar fazer é utilizar a funcão e tentar utilizar algum tipo de CONVERT para separar as informações de data e hora.

Victor Alcântara de Moraes

  • Novato
  • *
  • Mensagens: 34
  • CBTU - Metrorec
    • www.metrorec.com.br
    • Email
Re: consulta com parâmetros de dois bancos
« Responder #9 Online: Dezembro 28, 2007, 09:35:38 am »
tenta fazer com que o campo que pegue a data do banco diretamente, assim vc pode manipular o campo fica mais fácil, só não sei se numa consulta da pra criar um novo campo buscando de outra base de dados.
CBTU - Metrorec
GEIOM - DESENVOLVIMENTO

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: consulta com parâmetros de dois bancos
« Responder #10 Online: Dezembro 28, 2007, 06:28:41 pm »
da sim, através do ajax, no evento onrecord vc movimetna o valor lido da tabela para o campo criado manualmente.