COMO FACO ESSA SQL USANDO DAO 3,51

MARCOSLING 06/12/2009 15:41:11
#329251
Citação:

WEBIER escreveu:
fiz e tb nao deu nada!



tentou informar as datas manualmente em todos os formatos?
tentou eliminar as datas?
PH1959 07/12/2009 17:13:27
#329301
webbier
se nada deu cero, vai aki uma sugestão

cria o sql no proprio access 97 e roda a consulta para ver se funciona ....depois vc copia e cola no vb
MARCOSLING 07/12/2009 17:30:49
#329304
Citação:

RCMRO escreveu:
WEBIER,

Não faça isso. O Marcos está tentando te ajudar e vc sabe que não é por ai.
Se você executar o SELECT original como uma CONSULTA no ACCESS 97 ele dá pau mas se usar o ACCESS 2003 ele funciona sem problemas, como já te disse no tópico em que eu te ajudei a criar o SQL.
Porque não experimenta rodar o SQL abaixo no ACCESS 2003, confirma que lá roda sem problemas e procura a solução no VB, tentando trocar a referencia do seu DAO ?? O ACCESS 97 pura e simplesmente não executa SUB-QUERIES. Para isso você precisa do ACCESS 2003. Só isso... Nada a ver com o formato da data.

Executa no 2003, please, e procura a solução noa DAO

SELECT      prd.DESCRICAO               AS var_Desc,
prd.CODIGO AS var_codEnt,
prd.QUANT_ESTOQUE AS var_Quant,
peiult.CUSTO AS var_Custo,
peiult.FRETE AS var_Frete,
peiult.IMPOSTO_VALOR_COMPRA AS var_ImpCompra,
peiult.CUSTO_COMPRA AS var_VlrCompra,
peiult.VENDA AS var_VENDA
FROM Produtos AS prd
INNER JOIN Produtos_Entrada_Itens AS peiult
ON prd.Codigo = peiult.Codigo_Produto
INNER JOIN (SELECT pei1.CODIGO_PRODUTO,
MAX(pei1.Data_Entrada) AS Data_Entrada,
MAX(pei1.Codigo) AS Codigo
FROM Produtos_Entrada_Itens AS pei1
WHERE pei1.Data_Entrada BETWEEN #11/01/2009# AND #11/30/2009#
GROUP BY pei1.CODIGO_PRODUTO) AS pei
ON peiult.Codigo_Produto = pei.Codigo_Produto
AND peiult.Data_Entrada = pei.Data_Entrada
AND peiult.Codigo = pei.Codigo
ORDER BY prd.descricao



Na verdade RCMRO, o access97 suporta subquery, mas existe algumas frescuras na sintaxe.

WEBIER 08/12/2009 20:54:52
#329377
Citação:

PH1959 escreveu:
webbier
se nada deu cero, vai aki uma sugestão

cria o sql no proprio access 97 e roda a consulta para ver se funciona ....depois vc copia e cola no vb



já fiz isso com a sql q nosso amigo MARCOSLING me passou...
... no access 97 funciona blz... o problema tah no VB q nao mostra nada e nem dar erro.
WEBIER 09/12/2009 21:19:04
#329436
Resolvi assim:

Tirei tudo q se tratava em relação a campos do tipo DATA/HORA e mudei o MAX() para pegar o CODIGO.

ficou assim:
[Ô]SELECT tb_prod.DESCRICAO AS var_Desc, tb_prod.CODIGO AS var_codEnt, tb_prod.QUANT_ESTOQUE AS var_Quant, tb_proEnt_Itens.CUSTO AS var_Custo, tb_proEnt_Itens.FRETE AS var_Frete, tb_proEnt_Itens.IMPOSTO_VALOR_COMPRA AS var_ImpCompra, tb_proEnt_Itens.CUSTO_COMPRA AS var_VlrCompra, tb_proEnt_Itens.VENDA AS var_VENDA FROM (Produtos AS tb_prod INNER JOIN Produtos_Entrada_Itens AS tb_proEnt_Itens ON tb_prod.CODIGO = tb_proEnt_Itens.CODIGO_PRODUTO) INNER JOIN [SELECT tb_Prod_Ent_Itens2.CODIGO_PRODUTO, Max(tb_Prod_Ent_Itens2.CODIGO) AS Codigo FROM Produtos_Entrada_Itens AS tb_Prod_Ent_Itens2 GROUP BY tb_Prod_Ent_Itens2.CODIGO_PRODUTO]. AS tb_imaginada ON (tb_proEnt_Itens.CODIGO_PRODUTO = tb_imaginada.CODIGO_PRODUTO) AND (tb_proEnt_Itens.CODIGO = tb_imaginada.Codigo) ORDER BY tb_prod.descricao[Ô]


o nosso amigo MARCOSLING ajudou a chegar a esse ponto ai...
Obrigado!
Página 3 de 3 [25 registro(s)]
Tópico encerrado , respostas não são mais permitidas