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)
|
|
|
|
|
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)
|
|
|
|