🔴 ainda estamos em teste, não utilize em produção, pois pode quebrar à qualquer commit
O SiNReports é uma biblioteca gratuita para a geração automatizada de relatórios e documentos sem utilização de APIs remotas, servidores e instalações complexas. Renderize templates Smarty e crie relatórios/documentos em HTML, PDF e XLS
composer require sincore/sinreportsAo baixar a lib, os binários ja está embutidos, mas caso exista problema em executa-los, é possivel utilizar o path para o seu proprio binário
Para criar relatórios tabulados
$vars = [
[
'id' => 12,
'nome' => "produto 1",
'valor' => 45.30
],
[
'id' => 23,
'nome' => "produto 2",
'valor' => 101.41
],
];
$report = new \SiNReports\Report();
$report->setDebugMode(TRUE)
->setDataset($vars)
// ->toHtml() // gera o arquivo final em HTML
// ->toXls() // gera o arquivo final em XLS
->toPdf() // gera o arquivo final em PDF
//->save(APPLICATION_PATH . "/files/meupdf.pdf") // salva no arquivo
// ->show() // exibe na tela
->download(); // envia o arquivo para downloadPara criar documentos complexos
$vars = [
'nome' => "Nome do comprador",
'documento' => "xxx.xxx.xxx-xx",
'produtos' => [
[
'id' => 12,
'nome' => "produto 1",
'valor' => 45.30
],
[
'id' => 23,
'nome' => "produto 2",
'valor' => 101.41
],
];
];
$report = new \SiNReports\Report();
$report->setDebugMode(TRUE)
->setTemplate(APPLICATION_PATH . "/relatorios/teste.tpl")
->setVars($vars)
// ->toHtml() // gera o arquivo final em HTML
// ->toXls() // gera o arquivo final em XLS
->toPdf() // gera o arquivo final em PDF
//->save(APPLICATION_PATH . "/files/meupdf.pdf") // salva no arquivo
// ->show() // exibe na tela
->download(); // envia o arquivo para downloadsmarty/smarty: Responsável por ler o template à ser gerado e renderizar em HTMLwkhtmltopdf (Binário): Binário responsável por renderizar o HTML em PDFmikehaertl/phpwkhtmltopdf: Responsável fazer as chamadas aowkhtmltopdf
Pull requests são muito bem-vindos. Para novas ideias, por favor utilize a sessão de issues para discutir novas mudanças e funcionalidades