public function onReport($param) { $r = new Report(); $fonteCabecalho = $r->createFont("Arial", 8, "000000", "FFFFFF"); $fonteCabecalho->setBold(); $fonte = $r->createFont("Arial", 8, "000000", "FFFFFF"); $r->setFont($fonteCabecalho); $r->write('Tribunal Regional Eleitoral do Rio Grande do Norte'); $r->write('Secretaria de Administração e Orçamento'); $r->write('Planejamento e Gestão Orçamentária do TRE/RN'); $r->write(' '); $r->centerText(); $r->write("Solicitações de materiais permanentes por unidade"); TTransaction::open('app'); $conexao = TTransaction::get(); $sql = "SELECT\n system_user.name unidade,\n tipo_material_permanente.nome tipo_material_permanente_nome,\n material_permanente.descricao,\n material_permanente.justificativa,\n material_permanente.quantidade,\n material_permanente.custo\nFROM \n material_permanente, tipo_material_permanente, system_user\nWHERE\n tipo_material_permanente_id= tipo_material_permanente.id AND\n system_user_id = system_user.id\nORDER BY\n system_user.name, tipo_material_permanente.nome"; $solicitacoes = $conexao->query($sql); $ultima_unidade = ""; foreach ($solicitacoes as $solicitacao) { if ($ultima_unidade != $solicitacao["unidade"]) { $ultima_unidade = $solicitacao["unidade"]; $r->setFont($fonteCabecalho); $r->leftText(); $r->write(' '); $r->write($ultima_unidade); $r->createTable(array(4, 4.8, 4.8, 1.7, 1.7)); $r->addTableRow(array("Tipo do material", "Descrição", "Justificativa", "Quantidade", "Custo"), array("L", "L", "L", "R", "R")); $r->setFont($fonte); } $r->addTableRow(array($solicitacao["tipo_material_permanente_nome"], $solicitacao["descricao"], $solicitacao["justificativa"], $solicitacao["quantidade"], $solicitacao["custo"]), array("L", "L", "L", "R", "R")); } TTransaction::close(); $md5_userid = md5(TSession::getValue("userid")); $r->save("./app/output/tipo_material_permanente_{$md5_userid}.rtf"); parent::openFile("./app/output/tipo_material_permanente_{$md5_userid}.rtf"); }