Sharepoint
Salvar Relatório
Hoje é possível de após o cliente ter feito a configuração e realizada as permissões no Azure de salvar um relatório em seu sharepoint.
Hoje por entrypoint basta fazer:
$param = new StorageParams();
$param->setReportName('assistencia_tecnica');
$param->setReportParams(array('os' => 1));
$param->setTargetPath('LOCAL_0101');
$param->setRemoteFileName('assist_tecnica_01.pdf');
$param->setReportFileType('pdf');
$param->setType('azure');
$result = $this->storageService->uploadReport($param);
Como é possível observar no exemplo a primeira coisa é instanciar um novo StorageParams
$params = new StorageParams();
Criada a sua variável StorageParams o próximo passo é popular os métodos:
$param->setReportName('assistencia_tecnica');
$param->setReportParams(array('os' => 1));
$param->setTargetPath('LOCAL_0101');
$param->setRemoteFileName('assist_tecnica_01.pdf');
$param->setReportFileType('pdf');
$param->setType('azure');
- setReportName(string): Nome do relatório que está na nfs_reports;
- setReportParams(array): Os parâmetros do relatório em formato de array, no exemplo, estamos passando os com o seq_db 1;
- setTargetPath(string): Uma string com o diretório onde vai ser salvo o arquivo no storage do cliente, exemplo, 'nfs/reports/assit_tec', cada barra é um nível do diretório, se não exister ele será criado.
- setRemoteFileName(string): Nome do arquivo que será salvo no destino, é necessária a extensão;
- setReportFileType(string): Tipo do relatório, hoje somente é possível pdf que é o criado a partir do html.
- setType(string): Tipo do Storage, hoje o padrão é azure, se mas pode ser que amanhã seja tenhamos mais uma opção como google cloud.
Por fim, é realizado o upload:
$result = $this->storageService->uploadReport($param);
Em casos de erro vai retornar um array com message e type:
array(2) {
["message"]=>
string(33) "Cloud Provider not found: azureee"
["type"]=>
string(5) "error"
}
Logo se tiver o type igual a erro você pode realizar alguma ação.