USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Compara tabelas
Irenko
BELO HORIZONTE
MG - BRASIL
Postada em 31/05/2004 10:59 hs            
Preciso de ajuda nesta instrução. Seguinte.: Na instrução SQL da SUB MontaBaixas abaixo montei as saídas agrupando o codigo na tabela BAIXAS, até ai tudo bem funciona normalmente. Agora na segunda instrução da SUB MontaEntrada preciso montar as entradas tambem somando a quantidade e agrupando, so que eu preciso comparar as duas tabelas, sendo que se existir entrada referente ao codigo ja baixado da tabela Baixa a intrução Sql compare as duas tabelas e monte as entradas, ou seja, se o codigo da tabela Entrada exitir na tabela Baixa eu mostre tambem a quant. de entrada referente a este codigo. Como faço para corrigir a segunda SUB?

Private Sub MontaBaixas()
Dim BdBaixas As DAO.Database,
Dim Tbbaixas As DAO.Recordset,
Dim Ln3
Ln3 = 4
Plan421.Range("a4:N65000").ClearContents
Set BdBaixas = OpenDatabase("C:EstoqueMateriais.mdb")
Set Tbbaixas = BdBaixas.OpenRecordset("SELECT CODIGO, Sum(SAIDA) AS TOTAL FROM BAIXAS GROUP BY CODIGO", dbOpenSnapshot)

Private Sub MontaEntrada()
Dim BdBaixas As DAO.Database
Dim TbEntrada As DAO.Recordset, TbEntrada1 As DAO.Recordset
Dim Ln3
Ln3 = 4

Set BdBaixas = OpenDatabase("C:EstoqueMateriais.mdb")
Set TbEntrada1 = BdBaixas.OpenRecordset("SELECT Baixas.Codigo,Entrada.Codigo1 Sum(Entrada) AS ENTRA FROM Entrada,Baixas WHERE Entrada.Codigo1=Baixas.Codigo1 GROUP BY Codigo", dbOpenSnapshot)
''Set TbEntrada = BdBaixas.OpenRecordset("SELECT Baixas.Codigo,Entrada.Entrada FROM Baixas,Entrada WHERE Entrada.Codigo1=Baixas.Codigo ", dbOpenSnapshot)

     
FatBoy
Pontos: 2843 Pontos: 2843
LONDRINA
PR - BRASIL
Postada em 31/05/2004 11:15 hs            
Não entendi muito bem , mais talvez este exemplo ajude:
Not In
 
Select codigo,Nome from Tabela1
Where codigo not in (select codigo From Tabela2)
 
Este exemplo irá listar todos os codigo e nomes da tabela 1 que não estão no select da tabela2
 
Ah...vc pode usar tb sum() e group by para ter os totais
TÓPICO EDITADO
   
Irenko
BELO HORIZONTE
MG - BRASIL
Postada em 31/05/2004 11:58 hs            
fatBoy é + ou - isso, so acho que é ao contrario. Vou tentar ser mais claro.
 
Na tabela Baixa ref. a sub MontaBaixa executei as seguintes baixas:
Cód. 000434  02 pc
Cód. 000434  03 pc
A instrução Sql execultou normalmente mostrando-me 05 pc.
 
Agora dei entrada no mesmo codigo na tabela Entrada, sendo:
Cód. 000434  1 pc
Cód. 000434  2 pc
A instrução Sql da sub MontaEntrada tem que me mostrar 03 pc somando e agrupando, isso se este codigo existir na tabela baixa. Deu pra entender?
     
Irenko
BELO HORIZONTE
MG - BRASIL
Postada em 31/05/2004 14:23 hs            
Amigos, meu campo Entrada na tabela entrada estava como texto, alterei para interger e funcionou conforme abaixo, so que carregou fora de ordem, como posso ajustar?
 
Set TbEntrada1 = BdBaixas.OpenRecordset("SELECT Baixas.Codigo,Sum(Saida)As sSaida,Sum(Entrada.Entrada)AS sEntrada FROM Entrada,Baixas WHERE Baixas.Codigo=Entrada.Codigo1 GROUP BY Baixas.Codigo,Entrada.Codigo1 ", dbOpenSnapshot)
     
Página(s): 1/1    

CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página