DEV Community

Henry
Henry

Posted on

ADVPL Protheus - Services

Good afternoon,
I wanted to ask about interacting with a third-party service. The information provided is:
URL: https://direccion.prueba/wsserviceETDLoadASPUBL21/servicioETDLoadASP.asmx?WSDL
method: clienteETDLoad
credentials: none
headers: none

We are currently using the following:
Local oWSDL
Local lOk, cResp, aElem, nPos
Local cURLDFlw := "https://direccion.prueba/wsserviceETDLoadASPUBL21/servicioETDLoadASP.asmx?WSDL"

oWSDL := TWsdlManager():New()
oWSDL:bNoCheckPeerCert := .T.
oWSDL:lVerbose := .T.
oWSDL:nSoapVersion := 1

lOk := oWSDL:ParseURL( cURLDFlw )
if !lOk 
    MsgStop( oWSDL:cError , "ParseURL() ERROR")
    Return
endif

lOk := oWSDL:SetOperation( "clienteETDLoad" )

if !lOk
    MsgStop( oWSDL:cError , "SetOperation(clienteETDLoad) ERROR")
    Return
Endif


lOk := oWSDL:SendSoapMsg( Encode64(cSring) )
if !lOk
    MsgStop( oWSDL:cError , "SendSoapMsg() ERROR")
    Return
endif

cResp := oWSDL:GetParsedResponse()
Enter fullscreen mode Exit fullscreen mode

We are getting an error with sendsoapmsg, which says it doesn't accept the variable type. We have tried adding some lines:

oWSDL:SetFirst("xmlBase64", Encode64(cSring))
Enter fullscreen mode Exit fullscreen mode

and not sending a parameter in SendSoapMsg, however, this results in an error in the ParseURL function.

We are unsure how to proceed. If you have any suggestions or examples we could follow, we would appreciate it.

Top comments (0)