# Geração de Relatório em Ambiente Local
Guia para configuração da dependência DataExporter, responsável por gerar os relatórios em ambiente local sem a necessidade de enviar dados para o WebService.
# Instalando a dependência
No seu composer.json, adicione o zeedhi/dataexporter
na versão 1.14 (ou superior). Atualize seu ambiente com o comando composer update
.
"zeedhi/dataexporter": "1.14.*"
No seu bower.json, adicione ou atualize a dependência zh-reports
para a versão 1.26 (ou superior). Atualize novamente seu ambiente com o comando bower update && grunt
"zh-reports": "1.26.*"
Atenção
Essa versão do zh-reports
, por padrão, apenas vai gerar relatórios em ambiente local. Caso for necessário utilizar via WebService, será necessário configurar em cada tela.
# Configurações
# bootstrap.php (backend)
No arquivo que carrega sua aplicação, geralmente chamado bootstrap.php, carregue as configurações do DataExporter e suas rotas.
(...)
require __DIR__ . "/vendor/zeedhi/dataexporter/bootstrap.php";
(...)
$routes[] = __DIR__ . '/vendor/zeedhi/dataexporter/routes.json';
Nota
Verifique os diretórios de acordo com sua aplicação. Pode haver a necessidade de utilizar ../
em alguns casos.
# parameters.xml (backend)
Adicione os parâmetros necessários para funcionamento da rotina no seu xml. Geralmente, essa configuração é feita no parameters.xml
<parameter key="zeedhi_data_exporter_folder">/tmp/</parameter>
<parameter key="zeedhi_data_exporter_timeout">600</parameter>
zeedhi_data_exporter_folder
: Diretório temporário onde os relatórios serão gerados. Recomendável utilizar o /tmp/.zeedhi_data_exporter_timeout
: Tempo máximo de execução para geração dos relatórios, em segundos. O exemplo acima se trata de 10 minutos.
Atenção
Configure o timeout de acordo com a realidade da sua aplicação. Relatórios com volumes massivos de dados podem demorar muito para serem gerados.
# mongo (backend)
É necessário que o parâmetro mongoOptions
esteja configurado. As parametrizações do mongo, geralmente, ficam no arquivo parameters.xml também. Exemplo de configuração abaixo:
<parameter key="mongoHost">mongoteste.teknisa.com</parameter>
<parameter key="mongoPort">27020</parameter>
<parameter key="mongoDBName">YourProduct</parameter>
<parameter key="mongoOptions" type="collection"></parameter>
# environment.json (frontend)
Adicione o parâmetro exporterUrl
que será utilizado como base para abrir o relatório em nova aba do navegador.
"exporterUrl": "../backend/service/index.php"
Atenção
- Lembrem-se de configurar tudo nos arquivos .template caso existam.
- Atentar-se para o link configurado de acordo com ambientes desenvolvimento, teste e produção, visando a realidade da sua aplicação. Geralmente, se utiliza mnemônico nesse casos.