Tempo aproximado para leitura: 00:12:00 min
Dúvida
Como configurar a integração do RM Reports x Protheus?
Ambiente
Cross Segmentos - Backoffice RM - Integração - Todas as Versões
Solução
Este documento foi desenvolvido como guia para a integração do RM Reports x Protheus.
Para seguir este manual faz-se necessário que os softwares RM e Protheus já estejam instalados e funcionando.
1.Para o correto funcionamento da integração é necessário serem executados alguns passos no Banco de Dados.
Observação:Recomendável que esta preparação do banco de dados seja realizada por alguém com conhecimento em Banco de Dados, preferencialmente um DBA.
- Para Base SQL:
GRANT SELECT,INSERT ON GDATALOG TO sysdba
GO
GRANT SELECT,INSERT, UPDATE ON RRPTREPORT TO sysdba
GO
GRANT SELECT,INSERT ON RRELTIP TO sysdba
GO
GRANT SELECT,INSERT ON GDIC TO sysdba
GO
GRANT SELECT,INSERT ON GIMAGEM TO sysdba
GO
GRANT SELECT,INSERT ON GFILTROS TO sysdba
GO
GRANT SELECT,INSERT ON GCONSSQL TO sysdba
GO
GRANT SELECT,INSERT ON GMOEDA TO sysdba
GO
GRANT SELECT,INSERT ON RRELTIPSCHEMA TO sysdba
GO
- Para Base ORACLE:
GRANT SELECT,INSERT,UPDATE ON GDATALOG TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON RRPTREPORT TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON RRELTIP TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON GDIC TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON GIMAGEM TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON GFILTROS TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON GCONSSQL TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON GMOEDA TO ACESSO_RM;
GRANT SELECT,INSERT,UPDATE ON RRELTIPSCHEMA TO ACESSO_RM;
CREATE PUBLIC SYNONYM GDATALOG
FOR RM.GDATALOG
;
CREATE PUBLIC SYNONYM RRPTREPORT
FOR RM.RRPTREPORT
;
CREATE PUBLIC SYNONYM RRELTIP
FOR RM.RRELTIP
;
CREATE PUBLIC SYNONYM GDIC
FOR RM.GDIC
;
;CREATE PUBLIC SYNONYM GIMAGEM
FOR RM.GIMAGEM
;
CREATE PUBLIC SYNONYM GFILTROS
FOR RM.GFILTROS
;
CREATE PUBLIC SYNONYM GCONSSQL
FOR RM.GCONSSQL
;
Observação no Banco de Dados:
É importante existir um usuário igual em todas nas instâncias de banco de dados (RM e Protheus), ou seja, o mesmo nome de usuário e senha nas instâncias do RM e Protheus. É interessante também que estes usuários tenham permissão de SA ou DBA.
É recomendável que este usuário seja utilizado na configuração da integração por parte do RM.
No caso de bancos de dados MSSQL pode ser usado o usuário SA desde que o mesmo tenha as senhas iguais nas duas instâncias.
Em caso de banco de dados Oracle, criar um usuário com privilégio DBA.
2. Configuração feita diretamente no ambiente RM:
Importante:
Para a integração funcionar adequadamente é necessário que as fontes de dados RM e Protheus estejam devidamente configuradas no servidor RM e Protheus. Ou seja, no caso de banco de dados SQL Server é necessário que o ODBC esteja apontando para os bancos de dados RM e Protheus, no caso de Oracle é necessário que o OracleClient esteja instalado no servidor e os serviços RM e Protheus configurados no mesmo.
Arquivos de configuração
2.1. Acesse o diretório da instalação do RM, procure pela pasta RM.Net e busque todos os arquivos com extensão .config
Obs.: Em uma instalação padrão do RM o caminho da pasta será: C:\totvs\CorporeRM\RM.Net.
2.2. Abra os arquivos RM.Host.exe.config e RM.Host.Service.exe.config e adicione as linhas destacadas em vermelho no arquivo, para ficar com a mesma estrutura abaixo.
Os campos em azul devem ser editados colocando suas respectivas informações:
Abaixo XML com as tags:
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="JobServer3Camadas" value="false" />
<add key="Port" value="8050" />
<add key="ActionsPath" value="C:\totvs\CorporeRM\RM.Net;C:\totvs\CorporeRM\Corpore.Net\Bin" />
<add key="EnableCompression" value="true" />
<add key="DEFAULTDB" value="<Base de Dados do RM – Padrão: CorporeRM>" />
<add key="HTTPPORT" value="8051" />
<add key="RM_Lib_Protheus_Server_FWDictionary_FWDICTIONARY" value="http://<IP_do_webservice_Protheus>:<Porta_WS_Protheus>/wsdictionary/FWDICTIONARY.apw" />
<add key="RM_Rpt_Lib_Server_FWDictionaryWS_FWDICTIONARY" value="http:// <IP_do_webservice_Protheus>:<Porta_WS_Protheus>/FWDICTIONARY.apw" />
<add key="RM_Rpt_Lib_Protheus_Server_ConnectionString" value="Data Source=<Instância_SQLServer_Proheus>;Initial Catalog=<Base_Dados_Protheus>;Persist Security Info=True;User ID=<usuário_acesso_base_Protheus>;Password=<Senha_acesso_base_Protheus>" />
</appSettings>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
<system.runtime.remoting>
<customErrors mode="Off" />
</system.runtime.remoting>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
</startup>
</configuration>
3. Crie um arquivo com nome RM.Lib.Protheus.Server.dll.config dentro da pasta e copie o seguinte conteúdo dentro dele alterando as partes em azul com as respectivas informações:
Abaixo XML RM.Lib.Protheus.Server.dll.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="RM.Lib.Protheus.Server.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<RM.Lib.Protheus.Server.Properties.Settings>
<setting name="RM_Lib_Protheus_Server_FWDictionary_FWDICTIONARY" serializeAs="String">
<value>http://<IP_do_webservice_Protheus>:<Porta_WS_Protheus>/wsdictionary/FWDICTIONARY.apw</value> </setting>
</RM.Lib.Protheus.Server.Properties.Settings>
</applicationSettings>
</configuration>
4. Crie um arquivo com nome RM.Rpt.Protheus.Server.dll.config dentro da pasta e copie o seguinte conteúdo dentro dele alterando as partes em azul com as respectivas informações:
Abaixo XML RM.Rpt.Protheus.Server.dll.config :
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="RM.Rpt.Protheus.Server.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="RM.Rpt.Lib.Server.Properties.Settings.DefaultConnection"
connectionString="Data Source=<Instância_SQLServer_Proheus>;Initial Catalog=<Base_Dados_Protheus>;Persist Security Info=True;User ID=<usuário_acesso_base_Protheus>;Password=<Senha_acesso_base_Protheus>"
providerName="System.Data.SqlClient" />
<add name="RM.Rpt.Protheus.Server.Properties.Settings.DefaultConnection"
connectionString=" Data Source=<Instância_SQLServer_Proheus>;Initial Catalog=<Base_Dados_Protheus>;Persist Security Info=True;User ID=<usuário_acesso_base_Protheus>;Password=<Senha_acesso_base_Protheus>"
providerName="System.Data.SqlClient" />
</connectionStrings>
<applicationSettings>
<RM.Rpt.Protheus.Server.Properties.Settings>
<setting name="RM_Rpt_Protheus_Server_FWDictionaryWS_FWDICTIONARY" serializeAs="String">
<value>
http://
<IP_do_webservice_Protheus>
:
<Porta_WS_Protheus>
/wsdictionary/FWDICTIONARY.apw
</value>
</setting>
</RM.Rpt.Protheus.Server.Properties.Settings>
</applicationSettings>
</configuration>
5. Após realizar as configurações é preciso reiniciar o HOST:
Reiniciar HOST
6. Teste o WebService acessando o endereço http://localhost:8051/rptwebservicesserver/mex?wsdl no servidor.
Caso tudo dê certo, deverá aparecer um schema XML no browser.
Exemplo abaixo:
7. Acesse o sistema RM na aba Ambiente | Parâmetros | Parâmetros Globais
7.1. Na aba Gerador de Relatórios cadastre o provedor do Protheus e ative:
Assembly: RM.Rpt.Protheus.Server
Classe do Provedor: RM.Rpt.Protheus.Server.RptProtheusProvider
Observação:
É preciso configurar as tags corretas para cada banco ORACLE e SQL.
Para detalhes na configuração do Protheus será preciso acionar equipe do Protheus validar.
Saiba mais
Integração do RM Reports X Protheus
0 Comentários