Array
(
)

Estudo para substituir tecnologia e processo usado em nossa plataforma de relatório

Diego
   - 11 jan 2016

Gostaria de apresentar o seguinte caso de uso e perguntar por sugestões sobre a melhor abordagem que podemos usar nesta situação:
Minha empresa fornece relatórios customizados sob demanda aos nossos clientes.
Os clientes compram novos relatórios customizados sobre a nossa base de dados, que rodam no ambiente administrativo de cada cliente em nosso site. Esses relatórios são desenvolvidos por nós e implantados no VBA. Os clientes gostam de relatórios customizados e templates personalizados. O relatório usado para um cliente normalmente não pode ser usado para outro. Normalmente é desenvolvida uma stored procedure que irá alimentar o relatório e o VBA é usado para rodar a stored procedure e alimentar uma planilha ou documento word com os dados. Um VBA fica tratando uma fila de relatórios e enviando e-mail aos clientes com esses relatórios prontos em anexo. Esta estrutura existe há uns 12 anos e cremos que é preciso melhorar para os tempos atuais. O principal problema é a instabilidade do VBA para o volume de processos, alto volume de código descentralizado e de difícil manutenção (típico de código procedural).
Gostaríamos de implementar melhorias, que melhore a qualidade e tempo de entrega desses projetos. Sobretudo garantindo estabilidade no processamento dos relatórios e melhor tratamento de erros, entre outras expectativas que temos. E gostaria de ouvir sugestões e casos de uso que possam nos auxiliar na tomada de decisões.
Nossas dúvidas e caminhos que pensamos em trilhar:
1) Substituição da tecnologia VBA por uma plataforma moderna que agregue tempo e qualidade na geração dos relatórios, já que o VBA é bastante instável. Incluindo o SERVER e também o RELATÓRIO FINALIZADO. Pensamos em muitas opções: Jasper Reports, Pentaho, Crystal.. e continuo as pesquisas, mas ainda sem resultados conclusivos, já que devo assegurar que a nova tecnologia poderá substituir o VBA em tudo que ele faz;
2) A criação de stored procedures para extração de dados para o relatório é mesmo a opção mais indicada? Ou devemos começar a partir para ferramentas de BI que possam auxiliar na extração de dados de forma mais eficiente?
O que vocês recomendam? O que costumam empregar nas empregas de vocês? Suas sugestões serão muito bem vindas!

Obrigado

Din
|
MVP
Pontos: 45
    11 jan 2016

Diego,

Quais as suas instalações (servidores, banco)?
Uma solução mais viável (quanto a custo X mão de obra ) um forte candidato é o Report Server (SSRS) da Microsoft. Existe suas limitações como qualquer ferramenta, mas quanto exibição de relatórios e fora de serie.

Quanto a criação de SP's, para a base de relatórios, tem que ser avaliada o tempo o custo de execução e ainda também a complexidade do seu código, pois na troca de funcionários o tempo de manutenção pode ser muito alto. Creio que nesse aspecto o uso do Integrator service (SSIS) como um passo para o BI pode ser uma boa.

Não utilizei as outras tecnologias, mas utilizo muito aqui no meu trabalho o SSIS e SSRS e digo que eles dão conta do trabalho, até porque você poderá aproveitar muita coisa no VB.