[RESOLVIDO] Erro ao Executar Report PDF com função SUM no SQL

Estou usando uma expressão SQL no Report PDF e tenho a intenção de fazer uma totalização numa tabela (função SUM).

Para isso fui lá em Configuração do SQL e na caixa de texto Comando SQL coloquei o seguinte:

“SELECT L.cod_devedor, C.nome, SUM(L.valor) FROM tab_lanc_devedores L LEFT OUTER JOIN tab_devedores D ON L.cod_devedor = D.cod_devedor INNER JOIN tab_colaborador C ON D.tab_colaborador_colaboradorid = C.colaboradorid GROUP BY C.nome HAVING SUM(L.valor) <> 0”

Executando no phpMyAdmin ou no MySQL Workbench funciona perfeitamente, INCLUSIVE NO SQL Builder do próprio SC V8.

Porém ao executar no SC V8 aparece EXATAMENTE o seguinte ERRO:

image

Basta eu retirar o SUM da primeira parte, ficando assim: “SELECT L.cod_devedor, C.nome, L.valor FROM …” a aplicação funciona porém sem o totalizador que eu preciso “linha a linha” no PDF.

Alguém pode me ajudar por favor ???

Use alias no campo, desta forma:

SUM(L.valor) AS valor

Obrigado Kleyber mas não resolveu.

Queria saber porque o SC coloca essas aspas no SUM(L.valor) do SQL …

image

Como ficou o teu select? Poste aqui pra gente ver, por gentileza…

Ficou assim …

Pois é colega… você não fez o que te indiquei… o teu select precisa ficar assim:

SELECT
   L.cod_devedor,
   C.nome,
   SUM(L.valor) AS valor
FROM
...
...
...

Faça essa alteração no campo do teu select e tente novamente.

É que já tinha tentado assim e não funcionou …

O erro continua aparecendo …

image

Essas aspas que aparecem só no primeiro SUM não aparecem no segundo, tá vendo?

To achando que essas aspas inseridas pelo SC V8 é que estão bagunçando pois se rodar no SQL Builder do proprio SC V8 funciona como postei acima …

Esse campo L.valor existe na tabela? Se existir ele é numérico? Realmente o parser do SC é bem chatinho mesmo…

Existe e é numérico.

Olha só o mesmo SQL rodando no SQL Builder sem problemas …

Entendi. Crie uma view com esse SELECT e coloque a chamada da view na Configuração do SQL e veja se funciona

Criar a VIEW tranquilo … mas como chamo a VIEW lá do Comando SQL do Report PDF??

SELECT
   <campo1_da_view>,
   <campo2_da_view>,
   ...
   ...
FROM view

Cara muito obrigado.

Com a criação da VIEW burlamos o SC V8 e agora funcionou como eu precisava.

Valeu mesmo.

1 Curtida

Agora que você citou que estás usando o SC versão 8… na nova versão o que te passei no início já funcionaria, pois o parser foi melhorado. Mas que bom que deu certo.

1 Curtida

coloque um Aliás para a coluna SUM.

Rodar a instrução direto em um executar SQL funciona, mas ao usar em um evento de aplicação, ao gerar a aplicação o SC modifica a instrução.

Haroldo coloquei mas mesmo assim não funcionou. Parece que por eu usar o SC V8 colocando o ALIAS não resolve.

Criando uma VIEW resolveu meu problema mas obrigado pela interação.