× Linguagem de Programação ADVPL

Perguntas Ajuda webservice

Mais
8 anos 5 meses atrás #30797 por luis.abeno
Ajuda webservice foi criado por luis.abeno
Pessoal, boa tarde!

Preciso de uma ajuda quanto a utilização de webservice no Protheus.

Eu não entendo muito sobre ADVPL, e estou aprendendo. Consegui fazer alguns webservices onde gero alguns tipos de relatórios, mas isso foi bem simples, eu passo um parâmetro e retorno um conjunto de dados para a aplicação WEB, nada demais.

O meu problema agora é ao gerar um XML para ser consumido no protheus.
Eu gero o XML na aplicação WEB, mas não sei como consumir no protheus,será que vocês poderiam me dar uma orientação?

Abaixo um exemplo simples de XML que é enviado para o método do protheus consumir:
Quando dou um "VALTYPE" no retorno da variavel, ele diz que retorna como caracter "C", deveria ser assim mesmo?
<JUSTIFY>
<P001>
<JS_ID></JS_ID>
<JS_EXTERNALID>14</JS_EXTERNALID>
</P001>
</JUSTIFY>

Obrigado!

Abraços.

Por favor Acessar ou Registrar para participar da conversa.

Mais
8 anos 4 meses atrás #30804 por will
Respondido por will no tópico Ajuda webservice
Bom dia Luis, já fiz diversos programas de WebService.

Para consumir geralmente tem dois jeitos.

ou por WSDL, ou você tem uma url na internet, qual seria o seu?


Eu tenho exemplo dos dois, mais preciso saber qual é o seu tipo.

Na verdade quando vocÊ consegue um webservice no protheus ele vira um objeto com várias variaveis lá dentro e vocÊ carrega elas.

Por favor Acessar ou Registrar para participar da conversa.

Mais
8 anos 4 meses atrás #30820 por luis.abeno
Respondido por luis.abeno no tópico Ajuda webservice
Boa tarde William!

Primeiramente muito obrigado pela força!

Estou consumindo via WSDL.

Abraços

Por favor Acessar ou Registrar para participar da conversa.

Mais
8 anos 4 meses atrás #30824 por will
Respondido por will no tópico Ajuda webservice
#INCLUDE "PROTHEUS.CH"
#INCLUDE "APWEBSRV.CH"
#INCLUDE "TBICONN.CH"
#INCLUDE "TBICODE.CH"
#INCLUDE "XMLXFUN.CH"

User Function ADLOG003P()

PRIVATE oWs := NIL


CRIAWEBSERVICE()

Return(NIL)

STATIC FUNCTION CRIAWEBSERVICE()

oWs := WSSiviraPlanned():New()

oWs:cLogin := 'testesteste'
oWs:cSenha := 'testestesteste'

ExportaXML()

RETURN(NIL)

Static Function ExportaXML()

If oWs:ImportarViagemFaturada()

oResp := oWs:oWSImportarViagemFaturadaResult
cMetodo := 'Viagem'
nId := oResp:NID

IF nId > 0
nId :=1
AddCampoRavex()
ENDIF
EmailViagem(cMetodo,nId,oResp:cmensagem)

Else

cMetodo := 'Viagem'
nId := -1
EmailViagem(cMetodo,nId,GetWSCError())

Endif
RETURN(NIL)


Segue exemplo de um consumo via WSDL.

Existe essa variavel OWS, onde eu jogo o xml nela..

E depois vou carregando suas variaveis conforme o trecho que eu envio o login e senha.

Agora você tem que ir falando suas dificuldades para mim ir te ajudando.

Abraços.

Por favor Acessar ou Registrar para participar da conversa.

Mais
8 anos 4 meses atrás #30825 por will
Respondido por will no tópico Ajuda webservice
Esse trecho

oWs := WSSiviraPlanned():New()

e Esse Trecho

If oWs:ImportarViagemFaturada()

São chamadas do métodos que estão no client do Webservice, precisa ver o nome do seus corretamente.

Por favor Acessar ou Registrar para participar da conversa.

Mais
8 anos 4 meses atrás #30831 por luis.abeno
Respondido por luis.abeno no tópico Ajuda webservice
Muito obrigado pela força William!

Seu código ajudou bastante, consegui fazer aqui, valeu pela ajuda.

Abraços

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.118 segundos
Joomla templates by a4joomla