[RESOLVIDO] erro na aplicação de pdfReport ao usar o sql com função SUM(CAMPO)

Olá pessoal, estou com um problema ao utilizar uma sql na aplicação de pdfReport. Estou fazendo um relatório e quando coloco a instrução SQL igual o código abaixo funciona blzSELECT qtdCC, qtdMDA, qtdCL, qtdVisitantes, qtdVisitanteFoiNoCulto, qtdGes, qtdCriancas, valorOferta FROM celulareuniaocab
porém eu quero os totais de cada registro, por isso utilizo a função sql de SUM(CAMPO), igualmente abaixo, mas da erroSELECT SUM(qtdCC), SUM(qtdMDA), SUM(qtdCL), SUM(qtdVisitantes), SUM(qtdVisitanteFoiNoCulto), SUM(qtdGes), SUM(qtdCriancas), SUM(valorOferta) FROM celulareuniaocab
o código está correto pois consigo executar no phpmyadmin e funciona normalmente. mas na aplicação aparece o erro seguinte

code: SELECT SUM(qtdCC) as sc_field_0, SUM(qtdMDA) as sc_field_1, SUM(qtdCL) as sc_field_2, SUM(qtdVisitantes) as sc_field_3, SUM(qtdVisitanteFoiNoCulto) as sc_field_4, SUM(qtdGes) as sc_field_5, SUM(qtdCriancas) as sc_field_6, SUM(valorOferta) as sc_field_7 from celulareuniaocab [/code]Atenção Erro ao acessar o banco de dados Unknown column 'SUM(qtdCC)' in 'field list' SELECT `SUM(qtdCC)` as sc_field_0, `SUM(qtdMDA)` as sc_field_1, `SUM(qtdCL)` as sc_field_2, `SUM(qtdVisitantes)` as sc_field_3, `SUM(qtdVisitanteFoiNoCulto)` as sc_field_4, `SUM(qtdGes)` as sc_field_5, `SUM(qtdCriancas)` as sc_field_6, `SUM(valorOferta)` as sc_field_7 from celulareuniaocab
Obs. Já atualizei o scriptcase para a versão 9.0.007, acredito que deve ser algum BUG. Se não for e alguém puder me ajudar, desde já agradeço.

Bom dia,

Você deve usar ALIAS em cada campo, tipo:

SUM(qtdCC) AS qtdCC

Bom dia Keyber, obrigado pela ajuda, resolveu em parte. Quando eu busco apenas em uma tabela “celulareuniaocab” funciona blz, porém quando eu faço o código mais complexo para pegar valores de outras tabelas para fazer a clausula WHERE com esse código abaixo SELECT SUM(crc.qtdCC) as qtdCC, SUM(crc.qtdMDA) as qtdMDA, SUM(crc.qtdCL) as qtdCL, SUM(crc.qtdVisitantes) as qtdVisitantes, SUM(crc.qtdVisitanteFoiNoCulto) as qtdVisitantesCulto, SUM(crc.qtdGes) as qtdGes, SUM(crc.qtdCriancas) as criancas, SUM(crc.valorOferta) as Oferta FROM celulareuniaocab crc, celulas c, celulasupervisorarea csa, celulasupervisorsetor css WHERE c.celulaSupervisorSetorId = [supervisorSetorId] AND c.celulaSupervisorSetorId = css.idsupervisorSetor AND c.idCelula = crc.celulaId AND css.supervisorAreaId = csa.idsupervisorArea dá o seguinte erro Atenção Erro ao acessar o banco de dados Unknown column 'SUM(crc.qtdCC)' in 'field list' SELECT `SUM(crc`.`qtdCC)` as qtdcc, `SUM(crc`.`qtdMDA)` as qtdmda, `SUM(crc`.`qtdCL)` as qtdcl, `SUM(crc`.`qtdVisitantes)` as qtdvisitantes, `SUM(crc`.`qtdVisitanteFoiNoCulto)` as qtdvisitantesculto, `SUM(crc`.`qtdGes)` as qtdges, `SUM(crc`.`qtdCriancas)` as criancas, `SUM(crc`.`valorOferta)` as oferta from celulareuniaocab crc, celulas c, celulasupervisorarea csa, celulasupervisorsetor css where c.celulaSupervisorSetorId = 1 AND c.celulaSupervisorSetorId = css.idsupervisorSetor AND c.idCelula = crc.celulaId AND css.supervisorAreaId = csa.idsupervisorArea não estou conseguindo encontrar qual o erro do sql na app, se puder me dá uma idéia do que está errado, agradeço.
Desde já, Obrigado.

O interessante é que no PHPMyadmin funciona normalmente com o código que postei acima, porém na app da o erro.

Bom dia Junior,

O Scriptcase tem um limite no parser para “entender” algumas queries mais complexas. Te sugiro criar uma view e coloque essa view na tua aplicação que deverá funcionar.

Tive um problema semelhante, só que com a função MAX. A query rodava no phpMyAdmin, no Database Builder do Scriptcase mas no pdfReport não. A saída realmente foi uma view.

Bom dia Kleyber, mais uma vez obrigado pela ajuda, agora compreendi o motivo, o limite do scriptcase.
Consegui resolver meu problema da seguinte maneira:
Criei uma aplicação de controle e no evento OnValidateSuccess realizo um sc_lookup com essa mesma sql, e funciona perfeitamente, então eu repasso os valores através da macro sc_redir para aplicação de pdfReport e na aplicação de pdf crio cada campo para receber o valor dos dados enviados, de modo que todo o processamento fica na aplicação de controle.
Agora gostaria de saber, como funciona essa “view” que vc me falou? onde posso fazer ela? no mysql ou na aplicação? Pode me dar uma dica?
obs. O meu problema já consegui resolver, mas quero aprender a view pq pode ser que em outra app seja necessário utilizá-la ao invés de realizar o procedimento que fiz acima.

Obg.
Deus Abençoe.
Att,
Junior Goes

Junior,

Que bom que resolveste. A view você cria diretamente no banco, assim na tua aplicação você vai criar um select em cima dessa view.

Sobre a view em si, dá uma olhada neste artigo que vai ser bem explicativo. Tem vários outros, e é só questão de tentar.

https://imasters.com.br/artigo/8765/mysql/trabalhando-com-views-no-mysql?trace=1519021197&source=single