Histórico da Página
...
Produto: | Microsiga Protheus® |
Versões: | P12 |
Ocorrência: | Tenho a necessidade de utilizar o Webservices do cadastro de clientes (MATA030) para integrar com softwares terceiros e/ou customizações |
Ambiente: | Todos |
Detalhes de como utilizar o WebService | A rotina de Cadastro de Clientes (MATA030) foi reescrita no modelo MVC, onde já possui um WebServices nativo para utilização. Abaixo segue os o link para consultar nossa apostila de ADVPL que contem detalhes de como utilizar esse novo modelo de WebServices: Web Services para MVC Ao se desenvolver uma aplicação utilizando MVC, já estará disponível um Web Service para ser utilizado para o recebimento de dados.Todas as aplicações em MVC utilizarão o mesmo Web Service, independentemente de sua estrutura ou de quantas entidades ele possua. O Web Service que está disponível para o MVC é o FWWSMODEL Web Service para modelos de dados que possuem uma entidade Veremos como construir uma aplicação que utilize o Web Service FWWSMODEL com um modelo de dados (Model) que possui apenas uma entidade. Instanciamento do Client de Web Service O instanciamento se dá seguinte forma: oMVCWS := WsFwWsModel():New() Definição da URL do FWWSMODEL no servidor de Web Services. oMVCWS:_URL := http://127.0.0.1:8080/ws/FWWSMODEL.apw Definição da aplicação que será usada. oMVCWS:cModelId := 'COMP011_MVC' A estrutura do XML utilizada Como dito anteriormente os dados serão informados em um XML. A estrutura desse XML segue a seguinte hierarquia básica: A tag <ID do Model> é o que identificador (ID) foi definido no modelo de dados (Model) da aplicação MVC. No XML a tag <ID do Model> será: <COMP011M Operation="3"> As tags <ID de Componente> são IDs dos componentes de formulários ou componente de grids que foram definidos no modelo de dados (Model) da aplicação. Manual ADvPl utilizando o MVC 106 Versão 4.0 Manual ADvPl utilizando o MVC Exemplo Se na aplicação temos: oModel:AddFields( 'ZA0MASTER' ) No XML as tags <ID de Componente> serão: <ZA0MASTER> ... </ZA0MASTER> O tipo do componente (de formulário ou de grid) também deve ser informados nesta tag no atributo modeltype. Informe FIELDS para componentes de formulários e os componentes de grid. Teríamos então: <ZA0MASTER modeltype="FIELDS"> As tags <ID de Campo> serão os nomes dos campos da estrutura do componente, seja formulário ou grid Assim se na estrutura tivermos os campos ZA0_FILIAL, ZA0_ CODIGO e ZA0_NOME, por exemplo, teremos: <ZA0_FILIAL> ... </ZA0_FILIAL> <ZA0_CODIGO> ... </ZA0_CODIGO> <ZA0_NOME> ... </ZA0_NOME> A ordem dos campos também deve ser informada nestas tags, no atributo order. <ZA0_FILIAL order="1"> ... </ZA0_FILIAL> <ZA0_CODIGO order="2"> ... </ZA0_CODIGO > <ZA0_NOME order="3"> ... </ZA0_NOME> anual SPED Contábil Manual ADvPl utilizando o MVC Manual ADvPl utilizando o MVC 107 Versão 4.0 Quando o componente é um formulário (FIELDS), os dados propriamente ditos devem ser informados em uma tag value. <ZA0_FILIAL order="1"> <value>01</value> </ZA0_FILIAL> <ZA0_CODIGO order="2"> <value>001000</value> </ZA0_CODIGO > <ZA0_NOME order="3"> <value>Tom Jobim</value> </ZA0_NOME> Então a estrutura completa será: <COMP011M Operation="1"> <ZA0MASTER modeltype="FIELDS" > <ZA0_FILIAL order="1"> <value>01</value> </ZA0_FILIAL> <ZA0_CODIGO order="2"> <value>01000</value> </ZA0_CODIGO> <ZA0_NOME order="3"> <value>Tom Jobim</value> </ZA0_NOME> </ZA0MASTER> </COMP011M> nossos webservices para rotinas em MVC. Consultar as páginas 104 a 116 que contem o capitulo sobre WebServices http://tdn.totvs.com/display/public/mp/AdvPl+utilizando+MVC |
Pode lhe Interessar: | Duvidas sobre o que é o padrão MVC, acesse o link abaixo: |