Adicionando novas informações ao README.md

laravel-11
jtfnetoo 3 years ago
parent b975d5ba5a
commit 88e65b5f1e

@ -32,8 +32,9 @@ JASPER_SERVER_PASSWORD="<Password de acesso>"
```
### Fazendo requisições ao servidor
Para efetuar as requisições ao servidor jasper, utilize o serviço **JasperServerRequestServiceContract**. Este serviço, além de conter
o método **call(uri)** para efetuar a requisição, e os métodos auxiliares de configuração.
Para efetuar as requisições ao servidor jasper,
utilize o serviço [**JasperServerRequestServiceContract**](src/app/Services/Contracts/JasperServerRequestServiceContract.php). Este serviço, além de conter
o método **call(uri)** para efetuar a requisição e os métodos auxiliares de configuração.
Segue abaixo exemplo de requisição para um relatório chamado **relatorio_teste**, contendo um parâmetro chamado **parametro_um**:
@ -44,14 +45,52 @@ $report = $this->jasperServerRequestService
->addInputControl('parametro_um', 'valor_qualquer')
->setRequestTimeout(300)
->call($uri);
echo $report;
```
Por padrão os relatórios são retornados no formato **html**. Para especificar outro formato, basta utilizar o método
**setFormat** disponível no serviço:
**setFormat** disponível no [serviço](src/app/Services/JasperServerRequestService.php) e o enum [ReportFormatEnum](src/app/Enums/ReportFormatEnum.php) com os formatos disponíveis:
```shell
$this->jasperServerRequestService
->setFormat('pdf')
->setFormat(ReportFormatEnum::PDF)
...
```
#### Métodos inline() e download()
Caso queira forçar a renderização inline do relatório,
basta utilizar a função ```inline()``` após o método ```call()```. Veja o exemplo abaixo:
```php
$uri = '/relatorio_teste';
$this->jasperServerRequestService
->addInputControl('parametro_um', 'valor_qualquer')
->setRequestTimeout(300)
->call($uri)
->inline();
```
Apenas arquivos que o navegador consegue renderizar serão
exibidos. Caso contrário, o arquivo será baixado.
Caso queira forçar o download do arquivo, basta utilizar o método ```download('nome_do_arquivo')```, veja o exemplo abaixo:
```php
$uri = '/relatorio_teste';
$this->jasperServerRequestService
->addInputControl('parametro_um', 'valor_qualquer')
->setRequestTimeout(300)
->call($uri)
->download();
```
O nome do arquivo é opcional e, caso não seja informado,
terá um valor randômico atribuído.
Caso você necessite obter o valor binário do relatório, pode utilizar
o método getReport(). Exemplo:
```php
$uri = '/relatorio_teste';
$report = $this->jasperServerRequestService
->addInputControl('parametro_um', 'valor_qualquer')
->setRequestTimeout(300)
->call($uri)
->getReport();
```
Loading…
Cancel
Save