Histórico da Página
...
Acrescentar a tag abaixo no arquivo de config do Host do RM. Observe que é necessário que o nome da Alias do banco a ser utilizado seja CorporeRM
Informações icon false <appSettings>
<add key="DefaultDB" value="CorporeRM" />
</appSettings>
Com o SoapUI aberto, crie um novo projeto:
Preencha os dados para conexão com o WebService RM. É preciso que o Host esteja em execução. Dê OK.
Preenchendo os dados para conexão com o WebService.- Veja que no endereço está apresentando qual o local onde o host está em execução (localhost) e qual porta será utilizada para efetuar a comunicação com os Dataservers (8051). A tag de configuração no config do Host referente a esta porta é a “HTTPPORT”.
Neste momento será criada a árvore com os métodos e as requisições para comunicação com os DataServersRM.
...
Expanda o método ReadRecord, e clique duas vezes no Request. Uma template da mensagem a ser enviada ao DataServer é gerada automaticamente, basta preenchermos devidamente os dados. Abaixo estão exemplos das mensagens para salvar e ler os registros no sistema:
Informações | ||||
---|---|---|---|---|
| ||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tot="http://www.totvs.com/"> |
Informações | ||||
---|---|---|---|---|
| ||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tot="http://www.totvs.com/"> <soapenv:Header/> |
...
Neste momento será criada a árvore com os métodos e as requisições para comunicação com os DataServersRM.
...
Via requisição ReadRecord direto no SoapUI, com os parâmetros preenchidos...
Informações | ||||
---|---|---|---|---|
| ||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tot="http://www.totvs.com/"> |
... obtemos uma resposta como a abaixo:
Informações | ||||
---|---|---|---|---|
| ||||
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> </xs:schema> <GCalend> </ReadRecordResult> |
Quando extraímos apenas a parte do XML que constará na parte destacada em verde acima, encontramos algo como a estrutura abaixo. Esta será a responsável para trabalhar com inserções de dados no sistema.
Basta copiar a estrutura abaixo...
Informações | ||
---|---|---|
| ||
<![CDATA[ <GlbCalend> |
... e colá-la no campo XML do SaveRecord do SoapUI, preenchendo o valor desejado nos campos e em seus parâmetros (Contexto, DataServerName...):
Informações | ||
---|---|---|
| ||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tot="http://www.totvs.com/"> <soapenv:Header/> |
Fique atento: Lembrando que se os dados de PK não forem enviados devidamente não será retornado mais do que uma XSD sem o XML necessário à gravação do registro.
...
No caso das mensagens de ReadRecord a validação se a requisição funcionou basicamente é se você conseguir encontrar o XML que a resposta lhe informar. No caso do SaveRecord a resposta é mais simples, e possui a estrutura abaixo:
...
Informações | ||||
---|---|---|---|---|
| ||||
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> |
É preciso analisar a mensagem para verificar a mensagem para saber se houve a inserção/atualização do registro. Neste campo poderão ser apresentados erros comuns à MDI RM, como violação de chave estrangeria, chave duplicada, etc.
...