PHPackages                             ribafs/reports - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ribafs/reports

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ribafs/reports
==============

Gerando relatórios em PHP com o software opensource Koolreport.

634PHP

Since Jul 3Pushed 4y ago2 watchersCompare

[ Source](https://github.com/ribafs/reports)[ Packagist](https://packagist.org/packages/ribafs/reports)[ RSS](/packages/ribafs-reports/feed)WikiDiscussions main Synced 6d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Criando relatórios em PHP usando o Koolreport
=============================================

[](#criando-relatórios-em-php-usando-o-koolreport)

Requisitos
----------

[](#requisitos)

- PHP 5.6
- Composer

Que tipo de relatório cria?
---------------------------

[](#que-tipo-de-relatório-cria)

Funciona com Laravel, CakePHP e qualquer programa em PHP, como também com frameworks Java, Phyton, nodejs e programas criados com estas linguagens, desde que usem um SGBD suportado (veja abaixo) e tenham o PHP 5.4 ou superior instalado. O Koolreport se conecta diretamente ao banco para criar o relatório e é independente do programa.

Cria relatórios com diversos tipos de gráficos e customizável. Puxa os dados diretamente do banco de dados, que pode ser MySQL, Oracle, PostgreSQL, SQL Server, CSV, Excel, etc.

Basta ter o PHP 5.4 ou superior instalado e o banco de dados, que ele vai diretamente ao banco e cria os relatórios. Na prática não se integra a nenhum framework, mas ao banco de dados. Até existem pacotes no site oficial para integrar a alguns frameworks, mas acho assim mais flexível e menos trabalhoso. Não testei mas deve funcionar até com um banco remoto, basta indicar os dados na conexão.

Quer Gerar Relatórios sem digitar código?
-----------------------------------------

[](#quer-gerar-relatórios-sem-digitar-código)

Criei um pequeno gerador de relatórios em que você não mexe em código, apenas entra os dados do banco e do relatório em um formulário e após clicar em enviar ele te mostra o relatório. Veja:

[Gerador de Relatórios](https://github.com/ribafs/report-generator)

Confira exemplos e outros recursos no site oficial:
---------------------------------------------------

[](#confira-exemplos-e-outros-recursos-no-site-oficial)

O Koolreport é uma ferramenta bem popular e com bom suporte da comunidade e da empresa que o criou. Quando temos uma dúvida e lançamos no Google é grande a quantidade de links que aparece.

Capturas dos relatórios que criei
---------------------------------

[](#capturas-dos-relatórios-que-criei)

[![](exemplos/pie.png)](exemplos/pie.png)

[![](exemplos/column.png)](exemplos/column.png)

Criando Relatórios com MySQL e PostgreSQL
-----------------------------------------

[](#criando-relatórios-com-mysql-e-postgresql)

Trouxe dois exemplos, usando gráficos de coluna e pizza, customizando cores das colunas e com suporte a MySQL e PostgreSQL (ao final). Um dos exemplos gera um gráfico de pizza e abaixo um de colunas, que é o CarsByDate.

No aprendizado criei alguns exemplos simples e bem customizados, gráficos de barra, colunas e pizza (mas existem outros tipos). Customizei as barras, colorindo cada uma com uma cor diferente. Confira abaixo. Também ofereço dois exemplos prontos, resultado do meu aprendizado, na pasta exemplos.

Banco - cars
------------

[](#banco---cars)

```
CREATE TABLE `colors` (
  `id` int NOT NULL AUTO_INCREMENT,
  `color` varchar(50) DEFAULT NULL,
  `date` date DEFAULT NULL,
  `value` int DEFAULT NULL,
  PRIMARY KEY (`id`)
);

INSERT INTO `colors` (`id`, `color`,`date`, `value`) VALUES
(1,	'preto','2005-05-25',	10000),
(2,	'preto','2005-05-28',	15000),
(3,	'preto','2005-06-15',	16000),
(4,	'branco','2005-06-15',	10000),
(5,	'branco','2005-06-15',	15000),
(6,	'branco','2005-06-16',	55000),
(7,	'vermelho','2005-07-18',	52000),
(8,	'vermelho','2005-07-18',	10000),
(9,	'vermelho','2005-07-21',	40000);
```

Precisar escolher bem os dois campos que representarão as colunas vertical e horizonta.

Aqui escolhi:

- color - horizontal
- value - vertical

Ele agrupará os registros pela cor e as mostrará na horizontal.

Também poderiamos escolher date e value, então ele agruparia pelo mês de cada data

mkdir /var/www/html/projeto

Instalação da biblioteca
------------------------

[](#instalação-da-biblioteca)

Acesse o diretório acima onde baixou e descompactou o projeto e execute

composer install

Usando os exemplos
------------------

[](#usando-os-exemplos)

Agora que você instalou já pode usar um dos exemplos da pasta exemplos.

Basta copiar, por exemplo os 3 arquivos de exemplos/CarsByDate para a pasta

vendor/koolreport

Criar o banco cars e importar o script cars.sql da pasta exemplos

Então configurar o banco no arquivo CarsByDate.php na função settings()

Chame pelo navegador

Ou então siga os passos seguintes para criar cada um dos arquivos.

Criar relatório CarsByColor
---------------------------

[](#criar-relatório-carsbycolor)

cd vendor/koolreport/

Nesta pasta crie os arquivos:

- CarsByColor.php
- CarsByColor.view.php
- index.php

Obs.: eles já existem na pasta exemplos

Ou seja, os 3 arquivos ficam dentro da pasta vendor/koolreport.

### index.php

[](#indexphp)

```
