GARANTIR DESCONTO

Fórum O que esta errando nesta SQL? #58792

03/09/2007

0

Bom na aplicação estou chamando a SQL pelo select assim
dm.zqFluxoMes.SQL.clear;
  dm.zqFluxoMes.sql.Text:=´ select referentemesano, sum(valorpg)as Total, e_s, ´
                +´ Iif(E_S = ´´E´´, ´´Total de Entradas no Mes´´||+´´ - ´´||+referentemesano, ´´Total de Saídas no Mes..´´||+´´ - ´´||+referentemesano)as Historico_Total ´
                +´ from fluxocaixa where substring(referentemesano from 1 for 2) = :pMes and substring(referentemesano from 4 for 7) = :pAno ´
                +´ and e_s = ´´E´´ group by 1,3 ´
                +´ union all ´
                +´ select  referentemesano, sum(valorpg)as Total, e_s, ´
                +´ Iif(E_S = ´´E´´, ´´Total de Entradas no Mes´´||+´´ - ´´||+referentemesano, ´´Total de Saídas no Mes..´´||+´´ - ´´||+referentemesano)as Historico_Total ´
                +´ from fluxocaixa where substring(referentemesano from 1 for 2) = :pMes and substring(referentemesano from 4 for 7) = :pAno ´
                +´ and e_s = ´´S´´ group by 1,3 order by 1 desc ´;
  dm.zqFluxoMes.ParamByName(´PMes´).Value:=StrToInt(ComboBox1.Text);
  dm.zqFluxoMes.ParamByName(´PAno´).Value:=StrToInt(MaskEdit3.Text);
  dm.zqFluxoMes.Open;


Aonde o combobox1 e maskedit3 é o mes e ano que eu passo pelo parametro, e o resultado não esta retornando nada.

Resolvi fazer um simulado no IBExpert da mesma select
select referentemesano, sum(valorpg)as Total, e_s,
                 Iif(E_S = ´E´, ´Total de Entradas no Mes´||+´ - ´||+referentemesano, ´Total de Saídas no Mes..´||+´ - ´||+referentemesano)as Historico_Total
                 from fluxocaixa where substring(referentemesano from 1 for 2) = :pMes and substring(referentemesano from 4 for 7) = :pAno
                 and e_s = ´E´ group by 1,3
                 union all
                 select  referentemesano, sum(valorpg)as Total, e_s,
                 Iif(E_S = ´E´, ´Total de Entradas no Mes´||+´ - ´||+referentemesano, ´Total de Saídas no Mes..´||+´ - ´||+referentemesano)as Historico_Total
                 from fluxocaixa where substring(referentemesano from 1 for 2) = :pMes and substring(referentemesano from 4 for 7) = :pAno
                 and e_s = ´S´ group by 1,3 order by 1 desc
E aqui me retorna o valor.

Achei que os componente combobox e maskedit estivessem com outro nome, mais não estão, são este mesmos.


Adriano_servitec

Adriano_servitec

Responder

Posts

03/09/2007

Adriano_servitec

Ja resulvi, foi burrice minha, é que estava aproveitando outro select e não percebi que o combo e o mask estavam transformando de string para inteiro, ai foi só retirar a funçaõ [b:6383a9c472]STRTOINT[/b:6383a9c472] que funcionou :D


Responder

Gostei + 0

04/09/2007

Martins

Ja resulvi, foi burrice minha, é que estava aproveitando outro select e não percebi que o combo e o mask estavam transformando de string para inteiro, ai foi só retirar a funçaõ [b:78a2d07565]STRTOINT[/b:78a2d07565] que funcionou :D


8)
Esquenta não isso acontece, vc não é primeiro e não será o último, bola pra frente.

Bons códigos.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar