GO
Erro ao realizar select no Framework
Olá pessoal!
Estou passando por um problema ao fazer um SQL dentro do Framework. Talvez seja algum erro bobo mas não estou conseguindo encontrar a razão do problema.
Preciso fazer esse select:
Executado no postgreSql me retorna 27 registros e dentro do Framework sempre o primeiro registro.
Deixo abaixo o meu código:
Estou passando por um problema ao fazer um SQL dentro do Framework. Talvez seja algum erro bobo mas não estou conseguindo encontrar a razão do problema.
Preciso fazer esse select:
SELECT pessoa.fantasia, count(vconsumo.id) as consumo FROM vconsumo inner join pessoa on pessoa.id = vconsumo.pessoa_id WHERE (vconsumo.edicao_id = 1) GROUP BY pessoa.fantasia ORDER BY consumo
Executado no postgreSql me retorna 27 registros e dentro do Framework sempre o primeiro registro.
Deixo abaixo o meu código:
- <?php
- class ConsumoParceiroBarChartView extends TPage
- {
- /**
- * Class constructor
- * Creates the page
- */
- function __construct( $show_breadcrumb = true, $params = NULL)
- {
- parent::__construct();
- $html = new THtmlRenderer('app/resources/google_bar_horizontal_chart.html');
- try {
- TTransaction::open(App::Database());
- $consumo_parceiros = array();
- $sql = 'select ';
- $sql .= 'pessoa.fantasia, ';
- $sql .= 'count(vconsumo.id) as consumo ';
- $sql .= 'from vconsumo ';
- $sql .= 'inner join pessoa on pessoa.id = vconsumo.pessoa_id ';
- $sql .= 'where (vconsumo.edicao_id = '. $params['edicao_id'] .') ';
- $sql .= 'group by pessoa.fantasia ';
- $sql .= 'order by consumo';
- $conn = TTransaction::get();
- $result = $conn->query($sql);
- $consumo_parceiros = array();
- foreach ($result as $row);
- {
- $consumo_parceiros[] = [$row['fantasia'],$row['consumo']];
- }
- var_dump($consumo_parceiros);
- TTransaction::close();
- } catch (Exception $e) {
- var_dump($e->getMessage());
- TTransaction::rollback();
- }
- # PS: If you use values from database ($row['total'),
- # cast to float. Ex: (float) $row['total']
- $panel = new TPanelGroup($params['title']);
- $panel->style = 'width: 100%';
- $panel->add($html);
- $data = $consumo_parceiros;
- // replace the main section variables
- $html->enableSection('main', array('data' => json_encode($data),
- 'width' => $params['width'],
- 'height' => $params['height'],
- 'title' => $params['title'],
- 'ytitle' => $params['ytitle'],
- 'xtitle' => $params['xtitle'],
- 'uniqid' => uniqid()));
- // add the template to the page
- $container = new TVBox;
- $container->style = 'width: 100%';
- if ($show_breadcrumb)
- {
- $container->add(new TXMLBreadCrumb('menu.xml', __CLASS__));
- }
- $container->add($panel);
- parent::add($container);
- }
- }
- </code>
Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos
Quero me inscrever agora!
Retire o ; no final da linha do foreach
Caramba cara!
Eu juro que não vi isso.
Sabia que era uma orelhada. :(
Vou ver aqui.
Obrigado!