Fórum ADO #293296
26/08/2005
0
Estou montando uma Query dinamica com ADOQuery e esbarro
neste problema..
QryCadastro.Sql.Clear;
QryCadastro.Sql.Add(´Select C.Apelido,
sum(S.Quantidade*S.PrecoLiquido) as Venda,´);
QryCadastro.Sql.Add(´sum(S.Quantidade*S.CustoProduto)+
sum (S.Quantidade*S.ValorIcms)+
sum(S.Quantidade*S.Comissao) as Custo,´);
QryCadastro.Sql.Add(´sum(S.Quantidade*(S.PrecoLiquido-S.CustoProduto-S.ValorIcms-S.Comissao)) as Lucro´);
QryCadastro.Sql.Add(´From SaidaProduto S, CadastroCliente C´);
QryCadastro.Sql.Add(´where S.IdCodigoCliente = C.IdCodigoCliente´);
QryCadastro.Sql.Add(´and S.DataEmissao Between
#´+wdat1+´ and ´+wdat2+´´);
QryCadastro.Sql.Add(´Group By C.Apelido´);
QryCadastro.Sql.Add(´Order By C.Apelido´);
Está me dando um erro de MsJET4.0.....
porém se eu colocar tudo isto dentro do ADOQuery e rodar funciona,
so na escrita dinamica e que da problema..
Se alguem puder me dar uma ajuda...
Grato pela atenção..
Robson.
Robsons
Curtir tópico
+ 0Posts
26/08/2005
Rjun
Gostei + 0
29/08/2005
Robsons
Gostei + 0
29/08/2005
Rjun
Gostei + 0
29/08/2005
Robsons
Só costumo usar os parametros quando uso o componente...
Se existir outra maneira, me de uma ajuda...
Grato
Gostei + 0
29/08/2005
Rjun
SELECT C.Apelido, SUM(S.Quantidade * S.PrecoLiquido) AS Venda, SUM(S.Quantidade * S.CustoProduto) + SUM(S.Quantidade * S.ValorIcms) + SUM(S.Quantidade * S.Comissao) AS Custo, SUM(S.Quantidade * (S.PrecoLiquido - S.CustoProduto - S.ValorIcms - S.Comissao)) AS Lucro From SaidaProduto S, CadastroCliente C WHERE S.IdCodigoCliente = C.IdCodigoCliente AND S.DataEmissao BETWEEN #:wdat1 AND :wdata2 GROUP BY C.Apelido ORDER BY C.Apelido
Depois coloque isso no seu código:
qryCadastro.Parameters.ParamByName(´wdat1´).Value := StrToDate(wdat1); qryCadastro.Parameters.ParamByName(´wdat2´).Value := StrToDate(wdat2); qryCadastro.Open; try // coloque o q vc deve fazer com o resultado finally qryCadastro.Close; end;
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)