[firebase-br] Select de Vendas por Produto de 1 Periodo e por Vendedor
Gilmar Barbosa
gilmarbgomes em gmail.com
Sex Nov 5 13:14:53 -03 2010
Boa Tarde,
Estou tentando montar um Select que me faça a separação das vendas da
seguinte forma:
1. De um determinado Vendedor
2. De um determinado Período (Tipo 01/10/2010 a 31/10/2010).
3. De um determinado nome de Produto.
4. Mostrando a Quantidade Total e o Valor Total por Produto (agrupamento
pelo código do Produto).
Montei a seguinte instrução Select no Delphi com Firebird 2.5, mas não estou
conseguindo mostrar o resultado desejado, pois exibe em cada linha todos os
produtos e não por Agrupamento :
QryVendas.Close;
QryVendas.SQL.Clear;
// Selecionando os campos que serao usados na consulta
QryVendas.SQL.Add('Select DOCTO, VEND, DATA, COD_MERC, DESCPRO, SUM(QTDE) AS
QTDE, SUM(PR_TOTAL) AS PR_TOTAL FROM SAIDAS');
// Selecionando o Vendedor
QryVendas.SQL.Add('Where VEND like '+QuotedStr(edtvendedor.Text));
// Selecionando somente a serie CI
QryVendas.SQL.Add('and DOCTO LIKE '+ #39 + '%CI' + #39);
// Selecionando a data inicial e final
QryVendas.SQL.Add('and DATA >= :DTINI and DATA <= :DTFIM');
// Selecionando a descricao do produto
QryVendas.SQL.Add('and DESCPRO LIKE '+ #39 + EDTPRODUTO.TEXT + #39);
// Agrupa por Codigo do Produto
QryVendas.SQL.Add('Group By DOCTO, VEND, DATA, COD_MERC, DESCPRO');
// Ordenando por Data
QryVendas.SQL.Add('Order By COD_MERC');
// passando os parametros das datas inicial e final
QryVendas.ParamByName('DTINI').asdate:= DTINICIAL.DATE;
QryVendas.ParamByName('DTFIM').asdate:= DTFINAL.DATE;
// abrindo a query para ser exibida no dbgrid.
QryVendas.Open;
Se alguém puder em dar uma ajuda, agradeço.
Gilmar
Nucleus Tecnologia da Informação
Mais detalhes sobre a lista de discussão lista