Sql - Sum() Group By Having

Firebird

07/05/2007

Olá a todos
Estou com problema numa instrucao SQL. ela retorna o erro.
Invalid expression in the having clause (neither an aggregate function nor a part of the group by clause)
O curioso é que so acontece o erro quando rodo na rede, quando rodo na maquina local não acontece erro nenhum.

M_Aux := ´SELECT TMP_DTVENCTO, TMP_ANOMES, ´;
M_Aux := M_Aux + ´COUNT(TMP_DTVENCTO) CONTA, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRCMS) VALORCMS, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRCMSCANCELADA) VALORCANCEL, ´;
M_Aux := M_Aux + ´SUM(TMP_VALORCMSEMPRESA) VALOREMPRESA, ´;
M_Aux := M_Aux + ´SUM(TMP_VALORCMSTERCEIRO) VALORTERCEIRO, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRPEDIDO) PEDIDO ´;
M_Aux := M_aux + ´FROM TEMPGERAL ´;
M_Aux := M_aux + ´GROUP BY TMP_DTVENCTO, TMP_ANOMES ´;
M_Aux := M_Aux + ´HAVING ( TMP_VLRCMS > 0 ) ´ ;

DmDados.CliDtStAcao.Close;
DmDados.SqlDtStAcao.Close;
Dmdados.SqlDtStAcao.CommandText := M_Aux;
Dmdados.CliDtStAcao.Open;

Toda dica será muito bem vinda.
Abraços a todos
Neto


Neto

Neto

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

07/05/2007

M_Aux := ´SELECT TMP_DTVENCTO, TMP_ANOMES, ´;
M_Aux := M_Aux + ´COUNT(TMP_DTVENCTO) CONTA, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRCMS) VALORCMS, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRCMSCANCELADA) VALORCANCEL, ´;
M_Aux := M_Aux + ´SUM(TMP_VALORCMSEMPRESA) VALOREMPRESA, ´;
M_Aux := M_Aux + ´SUM(TMP_VALORCMSTERCEIRO) VALORTERCEIRO, ´;
M_Aux := M_Aux + ´SUM(TMP_VLRPEDIDO) PEDIDO ´;
M_Aux := M_aux + ´FROM TEMPGERAL ´;
M_Aux := M_aux + ´GROUP BY TMP_DTVENCTO, TMP_ANOMES ´;
M_Aux := M_Aux + ´HAVING [b:f43ff1c5eb]SUM([/b:f43ff1c5eb]TMP_VLRCMS[b:f43ff1c5eb])[/b:f43ff1c5eb] > 0´ ;


GOSTEI 0
Neto

Neto

07/05/2007

Obrigado emerson.en

Abraços e obrigado

Neto


GOSTEI 0
POSTAR