Fórum Um Select com Group by complicado #186554
06/10/2003
0
Boa tarde colegas,
com o select abaixo eu obtenho os registros das notas fiscais dos clientes passados aos parametros, mas eu preciso que ele so retorne a ultima nota.
Cheguei nesse select ja com ajudas de vcs do clube e mais do que nunca continuo precisando,
se eu usar
ele me mostra a ultima nota mas soma o valor de todas as outras notas de numeração diferente
agradeço a atenção
com o select abaixo eu obtenho os registros das notas fiscais dos clientes passados aos parametros, mas eu preciso que ele so retorne a ultima nota.
Cheguei nesse select ja com ajudas de vcs do clube e mais do que nunca continuo precisando,
with QryTemp do
begin
Close;
DatabaseName := DM.TArqEmpr.DatabaseName;
SQL.Clear;
SQL.Add(´select´);
SQL.Add(´C.v1 as Cod, C.v2 as Cliente, C.v4 as Municipio, C.v5 as UF,´);
SQL.Add(´C.v12 as Contato, C.v13 as Telefone, R.v1 as codrep,´);
SQL.Add(´R.v2 as Representante, C.Datacad,´);
SQL.Add(´N.Dnf as Data, N.nnf as Nota, sum (N.vlr * N.qte+ n.ipi) as Valor´);
SQL.Add(´from arqclie C, arqprnf N, arqrepr R´);
SQL.Add(´Where (C.v1 = N.ncl) and (N.nre = R.v1) and (N.nnf = N.nnf) and´);
SQL.Add(´(c.v1 between :cli1 and :cli2) and´);
SQL.Add(´(n.nre between :rep1 and :rep2)´);
SQL.Add(´Group by C.v1, C.v2, C.v4, C.v5, C.v12,C.v13,R.v1, R.v2, C.datacad,´);
SQL.Add(´n.dnf, n.nnf´);
SQL.Add(´order by R.v1,C.v1, n.nnf´);
Params[0].Value := mdtCliIni.Text;
Params[1].Value := mdtCliFim.Text;
Params[2].Value := mdtRepIni.Text;
Params[3].Value := mdtRepFim.Text;
Open;
end;
se eu usar
SQL.Add(´N.Dnf as Data, max (N.nnf) as Nota, sum (N.vlr * N.qte+ n.ipi) as Valor´);
ele me mostra a ultima nota mas soma o valor de todas as outras notas de numeração diferente
agradeço a atenção
Macario
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)