Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

  1. Carregue o Host do RM como administrador.
  2. Acesse a URL do webservice do Host (http://localhost:8051/wspageindex/). Se a página abaixo for exibida suas configurações estão corretas.
  3. Vamos usar como exemplo o processo de inclusão de uma Unidade de Medida
    1. O primeiro passo é analisar o cadastro que queremos fazer pelo WebService para coletar algumas informações ao seu respeito:
      1. Quais dados serão inseridos
      2. Qual é o DataServer do cadastro. Quando se tratar de processos precisamos do DataProcess. Veremos isto no próximo exemplo. Para descobrir qual é o DataServer do cadastro, edit ou inclua um registro, clique em qualquer um de seus campos e pressione a combinação de teclas: CRTL + ALT+ F9
    2. Munido do DataServer e já conhecendo o cadastro vamos descobrir qual o método do WebService utilizaremos para incluir um registro neste cadastro. Para isso precisamos de um XML. 
    3. Baixe em seu computador um aplicativo que se chama SoapUI. Nela podemos inserir a url do WebService do host para saber qual método utilizar para incluir nosso registro
    4. Após instalar, abra o aplicativo e no menu File escolha New Soap Project
    5. Escolha um nome como por exemplo Cadastros do RM e na Initial WSDL cole a seguinte url: http://localhost:8051/wsDataServer/MEX?wsdl. Lembre-se que neste momento o host deve estar em execução na máquina (localhost).
    6. Após confirmar se tudo correr bem serão apresentados na tela os métodos existentes no WebService dos DataServers do RM  .
    7. Como não conhecemos o XML para inclusão de registros, vamos buscar um que já existe na tabela para que sejam retornados seus dados e seu XML. Desta forma podemos somente substituir os dados do registro que carregamos pelos dados que queremos incluir. Para carregar registros pelo WebService utilizamos o método ReadRecord. Clicando com o botão direito sobre o método escolhemos a opção New Request,  dê um nome para ela e clique no botão OK.
    8. No XML apresentado preencha a tag DataServerName com o nome conseguido no item 2.a.ii. Digite da mesma maneira que apareceu na tela com "camel case". Preencha a tag Primary Key que no caso do cadastro de Unidades de Medida é somente o Código da Unidade. Vamos utilizar M (Metros)
    9. Preencha a autenticação com usuário que utiliza para acessar o RM. Não se esqueça de marcar a opção Authenticate pre-emptively. Feche a tela de autenticação e clique no botão Play.                                                                                                                                                                   
    10. Será apresentado o XML com o registro desejado. Guarde esse XML que iremos precisar dele para a inclusão do registro. 
    11. Para a inclusão
      1. No SoapUi escolha o método SaveRecord, clique com o botão esquerdo e escolha New Request. Dê um nome para a requisição e clique em OK  
      2. Na tela que será apresentada preencha a tag DataServerName com o mesmo dataserver que utilizou no Read Record.
      3. Na tag XML informe o conteúdo que foi retornado do Read Record copiando da expressão"<![CDATA[ até ]]>. Após isso altere os dados antigos para os dados do novo registro. Sua requisição deve ficar como na figura a seguir.
      4. Para a tag Contexto as informações de CODSISTEMA e CODUSUARIO são obrigatórias. O CODSISTEMA você pode conseguir editando um registro do cadastro, clicando com o botão direito do mouse sobre a tela e pedindo que seja mostrado o nome dos campos. Ao passar o mouse sobre qualquer campo será mostrada uma expressão com duas palavras. A primeira é o nome da TABELA (TUNIDADE) a segunda o nome do campo. A primeira letra da tabela é o CODSISTEMA, no caso T. O restante da  informação você consegue acessando o RM e clicando no botão SISTEMA no canto inferior esquerdo da tela.                                                Neste caso teremos como contexto o CODSISTEM=T; CODUSUARIO=mestre. Preencha o restante do envelope.
      5. Se desejar preencha a autenticação e teste a requisição. Mas da maneira que está já pode ser transferida para a Atividade de Soap no TestFlow. Se houver sucesso na inclusão será retornado o ID o registro incluído.                                                                                             
  4. Criando a Atividade de Soap no TestFlow
    1. Acesse : Atividades → Serviços → Soap e crie um novo registro.
      1. Preencha um nome que descreva sua Atividade e preencha o grupo e as permissões de acesso.
      2. Informe a versão desejada e uma descrição detalhada pela qual qualquer um que editar a Atividade consiga entender seu propósito. Informe também qual será o comportamento no caso de ocorrer erro de execução.
      3. Clique no botão RECUPERAR OPERAÇÕES, informe o servidor no qual o Agent do TestFlow está sendo executado. Informe a URL do WebService o Host do RM. http://localhost:8051/wsDataServer/MEX?wsdl. Clique em RECUPERAR para que os métodos do WebService sejam apresentados.
      4. Clique em RM_IwsDataServer para expandir os métodos. Escolha o método SaveRecord e clique no sinal de +. Do lado direito da tela expanda a requisição criada. Dos campos que já são apresentados preenchidos o único a ser editado é o Soap Endpoint. Altere a URL, substituindo o nome de máquina que aparecer por LOCALHOST. Desta forma sua requisição irá executar em qualquer máquina e não somente na que foi apresentada. Informe a descrição de sua requisição. Isto é útil caso sejam criadas mais de uma requisição na mesma Atividade. Escolha o código de retorno. Para operações de inserção geralmente o código retornado é 201 (Created), porém isto depende muito de quem codificou a chamada. Pelo SoapUi dá para saber qual é ao executar a chamada. No caso da unidade de medida o retorno de sucesso é 200.
      5. Na aba MENSAGEM cole o envelope que foi criado no SoapUI. Copie todo o XML e cole na área de edição.
      6. Na aba AUTENTICAÇÃO, informe o usuário e senha para execução da chamada. É o mesmo usuário que você utiliza para acessar o RM. O campo domínio não é obrigatório.
      7. Na aba AÇÕES, você pode testar sua requisição ou deletar se for necessário.Image Modified
      8. Salve sua Atividade e ela está pronta para para ser executada ou inserida em um Projeto, Agendamento ou Coleção.
  5. Para criar chamadas SOAP para processos do RM.
    1. Acesse o RM e execute o processe desejado manualmente. Vamos escolher um processo simples para sermos mais didáticos: Ajuste a Valor Presente
    2. Acesse o Financeiro e na aba Contas a Pagar/Receber escolha Ajuste a Valor Presente e informe o dados solicitados e clique no botão executar e aguarde o processo ser executado.
    3. Após finalizar o processo com sucesso acesse a Guia Ambiente e em seguida o item Gerenciamento de Jobs. Crie um filtro para trazer somente os jobs processados hoje para facilitar a localização do registro desejado. Edit o registro desejado e na guia Processo anote o valor do campo Classe do Processo que neste caso é FinAVPData.  No botão Anexos abra o item de menu XML de Parâmetros de Job, copie o XML que vai ser apresentado e reserve.
    4. No SoapUI no menu Project crie um New SOAP Project
      1. Insira um nome: Processos RM
      2. Informa a Initial WSDL http://localhost:8051/wsProcess/MEX?wsdl
      3. No projeto criado navegue até RM_IwsProcess → ExecuteWithXmlParams. Clique  com o botão direito sobre e escolha New Request. Dê um nome a ela e clique em OK
      4. Será mostrado um envelope. Na tag ProcessServerName informe a classe de processo copiada no item 5.d FinAVPData.
      5. Na tag strXmlParams informe a seguinte string  <![CDATA[****]]>
      6. Substitua os asteriscos da string acima pelo XML que salvou no item 5.d
      7. Preencha a autorização e execute a chama para testar.
      8. Na janela a direita deve ser retornado o valor 1 se houve sucesso.                                                                                                                                                                                                                                                         
      9.    
      10. Após conseguir êxito na chamada você já tem tudo que necessita para criar sua atividade. Acesse o TestFlow → Atvidades → Serviços → Soap e clique no sinal de  (mais) para incluir um novo registro.
      11. Preencha um nome que descreva sua Atividade e preencha o grupo e as permissões de acesso.
      12. Informe a versão desejada e uma descrição detalhada pela qual qualquer um que editar a Atividade consiga entender seu propósito. Informe também qual será o comportamento no caso de ocorrer erro de execução.
      13. Clique no botão RECUPERAR OPERAÇÕES, informe o servidor no qual o Agent do TestFlow está sendo executado. Informe a URL do WebService o Host do RM. http://localhost:8051/wsProcess/MEX?wsdl. Clique em RECUPERAR para que os métodos do WebService sejam apresentados.
      14. Clique em RM_IwsProcess para expandir os métodos. Escolha o método ExecuteWithXmlParams e clique no sinal de (mais). Do lado direito da tela expanda a requisição criada. Dos campos que já são apresentados preenchidos o único a ser editado é o Soap Endpoint. Altere a URL, substituindo o nome de máquina que aparecer por LOCALHOST. Desta forma sua requisição irá executar em qualquer máquina e não somente na que foi apresentada. Informe a descrição de sua requisição. Isto é útil caso sejam criadas mais de uma requisição na mesma Atividade. Escolha o código de retorno. Para operações de inserção geralmente o código retornado é 201 (Created), porém isto depende muito de quem codificou a chamada. Pelo SoapUi dá para saber. qual é ao executar a chamada. No caso do nosso exemplo é 200.
      15. Na aba MENSAGEM cole o envelope que foi criado no SoapUI. Copie todo o XML e cole na área de edição.
      16. Na aba AUTENTICAÇÃO, informe o usuário e senha para execução da chamada. É o mesmo usuário que você utiliza para acessar o RM. O campo domínio não é obrigatório.
      17. Na aba AÇÕES, você pode testar sua requisição ou deletar se for necessário.