Índice
Índice |
---|
maxLevel | 4 |
---|
outline | true |
---|
exclude | .*ndice |
---|
style | none |
---|
|
Plataforma
Produto: ECM
Versão: 3
Ocorrência
O Totvs | ECM está integrado com o Protheus sendo que os dois com Banco de Dados são Oracle. A conexão com o segundo banco é para movimentar formulários relativos a matéria prima. Portanto, como efetuar a comunicação com um segundo Banco de Dados no Totvs | ECM 3?
Causa
Dificuldades em efetuar comunicação entre dois Bancos de Dados no Totvs | ECM.
Solução
Para que o procedimento seja realizado é importante parar o serviço da plataforma Totvs | ECM.
...
Deck of Cards |
---|
effectDuration | 0.5 |
---|
history | false |
---|
id | samples |
---|
effectType | fade |
---|
|
Card |
---|
default | true |
---|
id | 1 |
---|
label | Passo 1 |
---|
| Acesse no diretório do Windows, na pasta de instalação do Totvs | ECM, o arquivo wdk-ds.xml disponível em <Install-ECM>\server\default\deploy. Bloco de código |
---|
| <?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/ecm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>123</password>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
</local-tx-datasource>
<no-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/ecm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>123</password>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<!-- <security-domain>EncryptDBPasswordQuartzDS</security-domain> -->
</no-tx-datasource>
</datasources> |
Acima estamos utilizando um exemplo com o Banco de Dados MySQL. |
Card |
---|
| Copie todo o código do ‘<local-tx-datasource>' a '</local-tx-datasource>' e cole a baixo da linha que contém o código '</no-tx-datasource>' conforme a figura mostrado abaixo: Bloco de código |
---|
| <?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/[nome do banco]<ecm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>[usuário de conexão com o banco]<name>root</user-name>
<password>[senha de conexão com o banco]<<password>123</password>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
</local-tx-datasource>
<no-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/[nome do banco]<ecm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>[usuário de conexão com o banco]<name>root</user-name>
<password>[senha de conexão com o banco]<<password>123</password>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<!-- <security-domain>EncryptDBPasswordQuartzDS</security-domain> -->
</no-tx-datasource>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/[nome]DS<BancoecmDS</jndi-name>
<connection-url>jdbc:mysql://localhost:3306/[nome do banco]<banco-ecm</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>[usuário de conexão com o banco]<name>root</user-name>
<password>[senha de conexão com o banco]<<password>123</password>
<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name><exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
</local-tx-datasource>
</datasources>
|
|
Card |
---|
| Altere as linhas do novo <local-tx-datasource> conforme descrito abaixo: - <jndi-name>jdbc/[nome]DS</jndi-name>
- <connection-url>jdbc:mysql://localhost:3306/[nome do outro banco]</connection-url>
- <user-name>[usuário de acesso ao banco]</user-name>
- <password>[senha de acesso ao banco]</password>
Após este procedimento, salve as alterações e inicialize o serviço do Totvs | ECM. OBS: A conexão do Totovs Totvs | ECM com um segundo Banco de Dados Data Source pode ser realizada com outros modelos de banco também, obedecendo a Matriz de Portabilidade da plataforma. A baixo apresentamos alguns exemplos com os bancos Oracle e SQL Server. |
Card |
---|
| Se alguma configuração for realizada de forma incorreta será apresentado uma mensagem de erro no arquivo server.log disponível em <Install-ECM>/server/default/log. |
|
...
Bloco de código |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskDS</jndi-name>
<connection-url>jdbc:oracle:thin:@FRANCES:1521:ORADB</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>ecm</user-name>
<password>ecm</password>
<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
</local-tx-datasource>
<no-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
<connection-url>jdbc:oracle:thin:@FRANCES:1521:ORADB</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>ecm</user-name>
<password>ecm</password>
<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
</no-tx-datasource>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/[outro nome]DS<ORA2DS</jndi-name>
<connection-url>jdbc:oracle:thin:@FRANCES:1521:[nome do banco]<ORACLEDB</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<user-name>[nome de usuário de acesso ao banco]<name>root</user-name>
<password>[ senha de acesso ao banco ]<<password>123</password>
<check-valid-connection-sql>select 1 from dual</check-valid-connection-sql>
</local-tx-datasource>
</datasources> |
Exemplo de comunicação com dois Banco de Dados – SQL Server
Bloco de código |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskDS</jndi-name>
<connection-url>jdbc:sqlserver://10.80.81.123:1433;databaseName=ecm</connection-url>
<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
<user-name>ecm<name>root</user-name>
<password>ecm<<password>123</password>
<check-valid-connection-sql>select 1</check-valid-connection-sql>
<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
</local-tx-datasource>
<no-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/webdeskQuartzDS</jndi-name>
<connection-url>jdbc:sqlserver://10.80.81.123:1433;databaseName=ecm</connection-url>
<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
<user-name>ecm<name>root</user-name>
<password>ecm<<password>123</password>
<check-valid-connection-sql>select 1</check-valid-connection-sql>
<!-- <security-domain>EncryptDBPasswordQuartzDS</security-domain> -->
</no-tx-datasource>
<local-tx-datasource>
<use-java-context>false</use-java-context>
<jndi-name>jdbc/[nome]DS<SQLECMDS</jndi-name>
<connection-url>jdbc:sqlserver://10.80.81.123:1433;databaseName=[nome do banco]<banco-ecm</connection-url>
<driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
<user-name>[usuário de conexão com o banco]<name>root</user-name>
<password>[senha de conexão com o banco]<<password>123</password>
<check-valid-connection-sql>select 1</check-valid-connection-sql>
<!-- <security-domain>EncryptDBPasswordDS</security-domain> -->
</local-tx-datasource>
</datasources> |
Nota |
---|
|
As informações contidas acima são exemplos para a utilização de dois Data Source no Totvs | ECM, contudo o procedimento de configuração é de responsabilidade do cliente. |