Integração com aplicações web

<< Click to Display Table of Contents >>

Navigation:  Exportando Para Web >

Integração com aplicações web

O TaskReport permite duas maneiras de executar os relatórios no navegador web

 

1 - Empresas (softhouse) que possuem uma aplicação web (não importa em qual linguagem o sistema foi desenvolvido), e deseja executar a partir da sua aplicação os relatórios criados e publicados na web

 

 Nesse cenário, voce utiliza o taskreport desktop para criação do relatório, e uma vez, pronto, voce publica o relatorio, enviando para o seu servidor web os arquivos correspondentes (rtm, xml)

 a partir da sua aplicação, voce irá gerar um insert na tabela taskreportweb_token, e abrir uma pagina (nova guia ou frame dentro da sua aplicação) passando como parametro o token gerado, e o id do relatório

 como o token e gerado pela sua aplicação, o relatório e executado de forma segura, pois mesmo que o usuario final capture essa url, ele não irá conseguir executar novamente o relatorio, por fora do seu sistema.

 pois o token, e temporário, nesse modo, não existe autenticação no servidor web de relatórios, pois o próprio token gerado servirá como autenticação.

 

 Da mesma forma que a versão desktop permite que sejá acionado relatorios em diversos ponto da sua aplicação, na integração com a versão web, será feita da mesma forma,

 a diferença básica, e que o relatório não é executado por funções existentes na dll, e sim por troca de informações na tabela de token.

 

 

2 - Empresas (softhouse) que possuem uma aplicação desktop, e deseja que alguns relatórios, seja disponibilizado para execução pela web.

 Nesse cenário, você precisa disponibilizar o acesso a alguns relatórios (normalmente relatórios estatísticos, gerenciais) para um ou mais usuários.

 Nesse modo, voce precisa que ao acionar o endereço do servidor web, seja solicitado um login e senha, e de acordo com o usário logado, exiba a lista de relatórios que o mesmo tem pemissão.

 Aqui normalmente somente alguns relatórios irá ser publicado na web, pois relatórios operacionais, como emissão de nota, boletos, recibos, contratos,etc,

 serão executados diretamente pela sua aplicação desktop, usando a integração normal via taskreport.dll

 

veja os videos de treinamento

 

 

exemplos de integração

 

executar relatório pelo ID

 

gere um identificador único (guid, ou número randômico)

pegue o valor gerado e gere um insert na tabela TASKREPORTWEB_TOKEN

 

ex: IMPRIMIR O RELATORIO COM ID 6 SOMENTE 1 VEZ.

 

insert into TASKREPORTWEB_TOKEN(token,idreport,PRINTQUANTITY)

values ('4FE2D69E-2349-41E0-9590-5B29D1A8E3D0',6,1)

 

 

após o insert, abrir uma página com o endereco do servidor web passando o parametro do token gerado

ex1:

 

http://relatorio.sitecliente.com.br:9090/?token=4FE2D69E-2349-41E0-9590-5B29D1A8E3D0

 

 

ex 2: LISTA TODOS OS RELATORIOS DO MODULO PARA QUE O USUARIO POSSA ESCOLHER O RELATORIO, E ENTAO IMPRIMIR

 

gere um novo GUID

insert into TASKREPORTWEB_TOKEN(token,MODULENAME,PRINTQUANTITY)

values ('4FE4569E-5487-41E0-5890-5B2571A855D0','FINANCEIRO',1)

 

http://relatorio.sitecliente.com.br:9090/?token=4FE4569E-5487-41E0-5890-5B2571A855D0

 

 

 

OBS: o endereço

 

relatorio.sitecliente.com.br  pode ser substituido pelo ip válido do servidor web

 

se seu cliente possuir um site, voce pode criar um dns no gerenciador do site dele (mesmo que ele esteja hospedado em outro local)

 

e nesse dns, apontar para o ip (válido) do servidor do cliente.

 

se seu cliente não possuir um dominio, você pode fazer isso no dominio da sua softhouse

 

ex:cliente1.sistesuaempresa.com.br  

 

para cada cliente voce cria um dns apontando para o ip do cliente.

 

em último caso (o mais deselegante de todos), você pode usar um gerenciador de dns, como no-ip, vode pode usar essa solução,

se o seu cliente não possua um ip fixo.

 

 

campos da tabela de token, a tabela de token so é usada no modo 1 explicado acima.

 

 

TOKEN        

campo chave da tabela, deve ser gerado um valor unico, sugerimos gerar um GUID,

 

MODULENAME

se informado, vai listar os relatorios do módulo

 

IDREPORT

se informado, vai executar o relatorio pelo ID, pelo menos o MODULO ou ID deve ser informado.

 

PARAMETER

informe os parametros de filtro iniciais, utilize como base o nome dos PARAMETROS criados no relatorio, com seu valor subsequente
ex: IDPEDIDO|10|IDCLIENTE|50
caso o relatorio possua parametros de filtro com os nomes informados, eles serão preenchidos.

 

EMAIL

informe o email, isso será usado como valor inicial para email destino, quando o usuario gerar o relatorio, e clicar no botão de enviar email

 

EXTENSION

extensão do arquivo gerado para envio de email  podendo ser PDF, XLS, DOC  caso não seja informado, será assumido PDF

 

EMAILSUBJECT

assunto do email, também será usado como texto inicial ao enviar o email.

 

EMAILBODY

corpo do email, mesmo funcionamento do campo assunto

 

AUTOMATICSENDER

envia para o preview automaticamente, não solicitando os dados de filtro, informe 1, so use esse campo, se voce passou todos os parametros de filtros
necessários para execução no campo PARAMETER,
isso evita que seja exibido os campos de filtro, e o relatorio vai ser executado imediatamente.

 

PRINTERNAME

nome da impressora, isso so pode ser utilizado caso o taskreport server, esteja rodando no servidor local do cliente, e o servidor tenha acesso a impressoras da rede local

e voce deseja que ao imprimir, seja enviado direto para uma impressora da rede.

so use se voce possui uma aplicação web, mas o servidor do cliente está local, dessa forma voce pode redirecionar um relatório para uma impressora específica.

 

PRINTQUANTITY

indica a quantidade de vezes que o token poderá ser utilizado para imprimir o relatorio, caso não seja informado será assumido 1

uma vez executado,  ele decrementa essa colunca, ao chegar em 0 (zero) o token e excluído automaticamente da tabela

 

MONDAY

os campos de segunda a domigo, se informado 1, indica que o relatorio dessa tabela será referente a um relatorio que deverá se executado de forma programada

para utilizar o recurso de agendamento, voce deve la no taskreport na opção de exportar relatório, na guia configuração do sevidor, marcar o campo ativar agendamento

uma vez feito isso, envie o novo taskreportserver.ini para o servidor web.

quando essa chave está ativa, o taskreportserver ficará monitorando essa tabela em busca de registros de relatorios, ao encontrar, o mesmo será gerado e enviado por email

portanto alem de informar o dia da semana, deverá também informar todos os campos de email, e os parametros de filtro corretos.

pois como o relatorio e disparado de forma automática, não pode existir nenhuma solicitação de filtro para o usuário.

 

TUESDAY

se vai enviar na terça

 

WEDNESDAY

se vai enviar na quarta

 

THURSDAY

se vai enviar na quinta

 

FRIDAY

se vai enviar na sexta

 

SATURDAY

se vai enviar no sabado

 

SUNDAY

se vai enviar no domingo

 

TIMESHIPPING

hora de envio ex 22:00

 

STARTDATE

data inicio do envio

 

ENDDATE

data final do envio

 

SCHEDULE

informe 1, indicando que o registro e de agendamento, e por esse campo que é feito a localização, se informado 1, voce deve  informar tambem o dia, data inicio, data final e a hora nos campos correspodentes

 

LASTRUN

data e hora da ultima execução (quando em agendamento)

 

USE_PASSWORD

informe 1 caso o token seja executado, mas deseja que o taskreport verifique se o mesmo tem permissão para execução

 

ADMIN_REPORT

informe 1 para que seja acionado a tela para configuração dos usuários (cadastro de grupos/usuarios/liberacao de relatorios) nao usar em conjunto com o USE_PASSWORD

 

ADMIN_USER

nome do usuario administrador, usar em conjunto com o ADMIN_REPORT

 

ADMIN_PASSWORD

senha do administrador, usar em conjunto com o ADMIN_REPORT

 

USER_GROUP

informe o nome do GRUPO DE USARIOS, que ao executar o relatorio, sera verificado se o relatorio em execução pode ser executado pelo GRUPO informado

 

IDCLIENTE

o taskreport permite separa relatorios de uma mesma base de dados para clientes diferentes

ex: voce tem uma aplicação web, com varios relatórios padrôes, que são relatorios que podem ser utilizado por qualquer cliente,

porem tem relatórios que são expecíficos de alguns clientes.

aqui nessa coluna voce deverá passar o IDCLIENTE, esse mesmo valor informado em uma coluna de mesmo nome, la na tela de exportação dos relatorios.

 

relatorios personalizados, sao salvos no servidor em uma subpasta dentro da pasta RTM com mesmo nome da coluna IDCLIENTE

ex
voce passa nessa coluna o texto  CLIENTE001  para o relatorio com ID 50

tomando como exemplo o servidor web foi instalado na pasta c:\taskweb

 

o relatorio sera carregado da seguinte pasta

c:\taskweb\rtm\cliente001\00050.rtm

 

 

EMAIL_SOURCE_SERVIDOR

usado no envio automatico do email,  ex smtp.gmail.com

 

EMAIL_SOURCE

usado no envio automatico do email, ex emailcliente@gmail.com

 

EMAIL_SOURCE_SENHA

usado no envio automatico do email,

 

EMAIL_SOURCE_PORTA

porta do envio de email

 

EMAIL_SOURCE_SSL

ssl informe 1,2,3 (voce deverá testar um desses valores o envio do email) normamente o valor 3 (automatico) e o que funciona com a maioria dos servidores de email

 

WHATSAPP_FONE

se informado o fone, ao exibir o relatorio, será ativado uma guia para envio do relatorio pelo whattsapp

 

WHATSAPP_TEXT

se informado o fone e o texto, ao exibir o relatorio, será ativado uma guia para envio do relatorio pelo whattsapp

 

PATHFILE

os relatórios são sempre salvos em uma pasta de cache, queé excluido ao finalizar o relatorio, se voce deseja manter uma copia salva do relatorio em outro local

e so informar aqui o caminho completo (path e nome do arquivo)

após a criação do relatório, o arquivo será copiado para o caminho informado.

caso seja informado, o taskreport também irá usar esse arquivo para enviar para o email, e não o relatorio criado automático na pasta de cache.

usando esse campo, voce pode personalizar o nome do arquivo.

 

AUTOMATICEMAILSENDER

informando 1, ao gerar o relatorio, ele será enviado aumaticamente pelo email

ele é usado quando o usuário gera o relatorio, e ja tem na tabela de token todos os parametros para geracao de relatorio, como envio

voce precisa informar o ID do relatorio, parametros de filtro, e todos os campos de email.

não confundir com os relatorios que são enviados por email por agendamento, que não precisa desse campo, pois relatórios agendados sempre vão ser enviados por email

idependente dessa coluna.

 

HIDEFILETYPE

informe 1 para ocultar a opcao de escolher o tipo de arquivo na tela de filtro pelo usuario final.