Fórum SQL - não estou conseguindo adicionar os dados por fora #253429
05/10/2004
0
With QryItens do
begin
SQL.clear;
SQL.add(´Select Servico,Codigo,Sum((ItensMO.Quantidade*ItensMO.Preco)+ItensMO.Conserto) as Total, Sum(ItensMO.Quantidade) as Qtde,ItensMO.Situacao´);
SQL.add(´From MaoObra,ItensMO´);
SQL.add(´Where ItensMO.CodProduto = MaoObra.Codigo´);
SQL.add(´and ItensMO.DataPed Between :VarDataI and :VarDataF´);
if Edit1.Text <> ´´ then //verifico antes se não dá erro
SQL.add(´and ItensMO.CodCliente =:VarCod´);
SQL.add(´Group By Servico,Codigo,ItensMO.Situacao´);
SQL.add(´Order By Total Desc´);
end;
if Edit1.Text <> ´´ then
QryItens.ParamByName(´VarCod´).AsInteger:=StrToInt(Edit1.Text);
QryItens.ParamByName(´VarDataI´).AsDate:=StrToDate(MaskEdit1.Text);
QryItens.ParamByName(´VarDataF´).AsDate:=StrToDate(MaskEdit2.Text);
QryItens.Prepare;
QryItens.Open;
e mando imprimir, e não sei nada, mais se eu fizer direto na sql dá, eu só não faço direto por q não sei como fazer com as variáveis q preciso, pois se os valores q elas receberem para gerar o relatório forem vazias dá um erro, então faço dessa forma. Alguém tem alguma idéia para resolver isso?
Janete
Curtir tópico
+ 0Posts
05/10/2004
Czar
Gostei + 0
05/10/2004
Janete
não dá mensagem nenhuma, simplesmente o relatório q gero da forma q passei limpando a sql e gerando não aparece nada, e o q simplesmente pego a sql já com códigos dentro dela dá certo, não entendo por q não dá dessa forma q estou tentando fazer
Gostei + 0
06/10/2004
Janete
não dá mensagem nenhuma, simplesmente o relatório q gero da forma q passei limpando a sql e gerando não aparece nada, e o q simplesmente pego a sql já com códigos dentro dela dá certo, não entendo por q não dá dessa forma q estou tentando fazer[/quote:644b634bea]
sobe
Gostei + 0
06/10/2004
Martins
begin QryItens.Close; QryItens.SQL.clear; QryItens.SQL.add(´Select Servico,Codigo,Sum((ItensMO.Quantidade*ItensMO.Preco)+ItensMO.Conserto) as Total, Sum(ItensMO.Quantidade) as Qtde,ItensMO.Situacao´); QryItens.SQL.add(´From MaoObra,ItensMO´); QryItens.SQL.add(´Where ItensMO.CodProduto = MaoObra.Codigo´); QryItens.SQL.add(´and ItensMO.DataPed Between :VarDataI and :VarDataF´); if Edit1.Text <> ´´ then //verifico antes se não dá erro QryItens.SQL.add(´and ItensMO.CodCliente =:VarCod´); QryItens.SQL.add(´Group By Servico,Codigo,ItensMO.Situacao´); QryItens.SQL.add(´Order By Total Desc´); if Edit1.Text <> ´´ then QryItens.ParamByName(´VarCod´).AsInteger:=StrToInt(Edit1.Text); QryItens.ParamByName(´VarDataI´).AsDate:=StrToDate(MaskEdit1.Text); QryItens.ParamByName(´VarDataF´).AsDate:=StrToDate(MaskEdit2.Text); QryItens.Prepare; QryItens.Open;
Boa Sorte!!!
Gostei + 0
06/10/2004
Janete
+ItensMO.Conserto
Sum((ItensMO.Quantidade*ItensMO.Preco)+ItensMO.Conserto) as Total
se eu tirar esse +ItensMO.Conserto, dá certo, só q fico sem poder acrescentar o valor do conserto no total do serviço, e preciso. Se alguém puder me ajudar agradeço. :lol:
Gostei + 0
06/10/2004
Janete
agora está assim:
Select Servico,Codigo,Sum(ItensMO.Quantidade*ItensMO.Preco) as Total, Sum(ItensMO.Quantidade) as Qtde,Sum(ItensMO.Conserto) as Cons
.......
eu separei em um outro total o conserto, mais agora precisava somar o Total+Cons e colocar n Order By da sql para q fique o maior valor primeiro para o menor
agora está assim:
Order By Total Desc
existe alguma forma de fazer esse calculo dentro da sql mesmo, alguma coisa tipo (Order By Total+Cons Desc)
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)