Índice
Objetivo
Este documento foi desenvolvido como guia para a integração do RM Reports x Protheus. O mesmo contempla os passos para a configuração do webservice RM, webservice Protheus e parametrização da comunicação entre ambos. Para seguir este manual faz-se necessário que os softwares RM e Protheus já estejam instalados e funcionando.
Para o desenvolvimento do mesmo foram usados os seguintes softwares/versões:
- Protheus 11.8
- RM – Biblioteca 11.82.34
Introdução
- Pré-Requisitos:
- Instalação do Protheus na versão 11 ou superior e configuração do webservice do Protheus.
- Instalação da Biblioteca RM versão 11.80 ou superior. (Caso o cliente não utilize nenhum módulo da linha RM torna-se necessário uma base exemplo RM devidamente configurada).
Preparar Banco de Dados
Para o correto funcionamento da integração é necessário que sejam executados alguns passos no Banco de Dados.
Informações |
---|
Recomendável que esta preparação do banco de dados seja realizada por alguém com conhecimento em Banco de Dados, preferencialmente um DBA. |
Permissões na Base RM
Informações |
---|
|
Deck of Cards |
---|
| Card |
---|
id | Para Banco de Dados Microsoft SQL Server |
---|
label | Para Banco de Dados Microsoft SQL Server |
---|
title | Para Banco de Dados Microsoft SQL Server |
---|
| Devem ser adicionados os seguintes Grants na base de dados RM: Bloco de código |
---|
language | sql |
---|
linenumbers | true |
---|
| 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 |
|
Card |
---|
id | Para Banco de Dados Oracle |
---|
label | Para Banco de Dados Oracle |
---|
title | Para Banco de Dados Oracle |
---|
| Devem ser adicionados os seguintes Grants e Sinônimos na base de dados RM: Bloco de código |
---|
language | sql |
---|
linenumbers | true |
---|
| 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
; |
|
|
|
Usuário no Banco de Dados
É importante que exista 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 prilégio DBA.
Passos - Lado RM
Importante: Para que a integração funcione adequadamente é necessário que as fontes de dados RM e Protheus estejamdevidamente 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
1- Acesse o diretório da instaçã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- 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.
Informações |
---|
|
Deck of Cards |
---|
id | Arquivos de Configuração |
---|
| Card |
---|
id | Para Banco de Dados Microsoft SQL Server |
---|
label | Para Banco de Dados Microsoft SQL Server |
---|
title | Para Banco de Dados Microsoft SQL Server |
---|
| Para banco de dados Microsoft SQL Server: Bloco de código |
---|
language | xml |
---|
linenumbers | true |
---|
| <?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> |
|
Card |
---|
id | Para Banco de Dados Oracle |
---|
label | Para Banco de Dados Oracle |
---|
title | Para Banco de Dados Oracle |
---|
| Para banco de dados Oracle: Bloco de código |
---|
language | xml |
---|
linenumbers | true |
---|
| <?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=<Nome_serviço_Oracle>;Persist Security Info=True;User ID=<usuário_acesso_base_Protheus>;Password=<Senha_acesso_base_Protheus>;Unicode=True " />
</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:
<?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>
Image Removed
Informações |
---|
|
Image Added Bloco de código |
---|
language | xml |
---|
title | Expanda para copiar o código |
---|
collapse | true |
---|
| <?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> |
|
Informações |
---|
title | Para maiores informações: |
---|
|
@FRAMEWORK Canais de Atendimento Chamado: Através do Portal TOTVS - www.suporte.totvs.com.br Telefônico: 4003-0015 Escolhendo as opções 2-2-3-9-5 (Framework) ou 2-2-3-9-4 (BI) |