Liberando o WebService da TOTVS
Cada WebServices possui os seus métodos. O WebService indicado para consulta de cadastro e inclusão/alteração/exclusão de um cadastro é o wsDataServer. Já o indicado para executar um process (faturar movimento, cancelar movimento, cancelar lançamento, etc) é o wsProcess.
A notícia boa é que ativar os webservices é muito simples e você pode fazer isto via IIS ou via Host do RM. Aqui, nós trataremos apenas a utilização via Host do RM. Antes de qualquer coisa, você precisa se certificar que tenha acesso de administrador ao servidor e permissão de escrita no diretório de instalação do RM. O processo todo é feito em dois passos, mas atenção, é necessário reiniciar o Host do RM no final.
Para quem esta na versão 12.1.27 ou anterior, para a superior pode ir para o item 3)
1) Edite o arquivo RM.Host.Service.exe.config e RM.Host.exe.config, que estão na pasta<diretório de instalação do RM>\RM.Net
:
2) Adicione as seguintes tags no bloco de instruções
<add key="DEFAULTDB" value="CorporeRM" /> <aadd key="HTTPPORT" value="8051" />No value da tag DefaultDB deve ser informado o Alias, do arquivo Alias.dat que contém a base de dados que será utilizada. Na tag HTTPPORT informe a porta utilizada pelo Host para os serviços via (Geralmente é informado o padrão 8051).
Como exemplo abaixo, teremos um arquivo HOST.
<?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="CorporeRM" /> <add key="HTTPPORT" value="8051" /> </appSettings> <runtime> <gcServer enabled="true" /> </runtime> </configuration>
Para quem esta na versão 12.1.28 ou posterior, pode começar aqui
3) Em alguns casos é necessário adicionar um endereço a reserva de portas dentro do sistema operacional Windows, para isto, abra o Promp de comandos e digite a seguinte informação:netsh http add urlacl url=http://+:8051/ user=NetworkService
Será exibida uma mensagem de que a URL foi reservada com sucesso, conforme print abaixo:
Neste exemplo a porta utilizada é a 8051. Caso deseje adicionar mais serviços do Host com outras portas ou a porta utilizada seja diferente da padrão, deve-se executar o comando netsh para a(s) porta(s) desejada(s).
4) Por fim, abra o programa RM.Host.ServiceManager.exe e pare o serviço e reinicie ele novamente. Após ele reiniciar, os serviços estaram disponíveis. Para verificar se as configurações estão corretas, informe a URL abaixo no browser (Internet Explorer, Mozilla Firefox, etc):.
http://<IP ou HostName da máquina em que o Host está configurado>:<porta informada no arquivo de configuração do host, tag HTTPPORT>/wsPageIndex
ou o link abaixo, se executar ele dentro do próprio servidor do WebService.
http://localhost:8051/wsPageIndex
Para testar o mesmo na rede, troque LOCALHOST pelo IP do servidor e veja se a página aparece conforme imagem abaixo, e se o campo DEFAULTDB esta preenchido com o ALIAS que definiu no item 2) acima, tendo como exemplo:
5) Para expor o WebService a conexões externas, deve-se liberar a conexão externa para o servidor e redirecina-la para o servidor em questão. (Procure o pessoal de sua TI para fazer isto), e dentro dos arquivos HOST configurado no item 2) deve-se adicionar mais uma tag:
<add key="ServicesHostName" value="ip externo OU nome externo" />Então, se a sua empresa liberar o acesso externo, no campo VALUE deve ser informado a URL ou então o IP externo. Vamos supor que o endereço do WebService, seguido da porta de comunicação seja http://webservice.minhaempresa.com.br:8051 então no exemplo acima vai ficar:
<add key="ServicesHostName" value="webservice.minhaempresa.com.br" />
6) O Totvs RM utiliza o padrão SOAP em todas as chamadas, ou seja, para construir integrações ou acessar dados, você precisará de um cliente que tenha suporte ao protocolo SOAP. Um dos clientes mais populares e utilizados para desenvolvimento e testes é o SoapUI, e para baixar o software, Clique Aqui para baixar o mesmo.