SOAP WSDL Generate Code

ServiceSoap12 / FEParamGetCotizacion

ASP AutoIt C C (Unicode) C++ C++ (Unicode) C# DataFlex Delphi Foxpro Go Java Node.js Objective-C Perl PHP Extension PowerBuilder Powershell PureBasic Python CkPython Ruby SQL Server Swift TCL VB.NET VB6 VBScript Xojo
integer li_rc
oleobject loo_Xml
string ls_SoapRequestBody
string ls_Endpoint
string ls_SoapAction
string ls_ContentType
oleobject loo_Http
oleobject loo_Resp
oleobject loo_ResponseXml
integer li_StatusCode
string ls_MonId
string ls_MonCotiz
string ls_FchCotiz
integer li_Code
string ls_Msg

loo_Xml = create oleobject
li_rc = loo_Xml.ConnectToNewObject("Chilkat_9_5_0.Xml")
if li_rc < 0 then
    destroy loo_Xml
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Xml.Tag = "soap:Envelope"
loo_Xml.AddAttribute("xmlns:soap","http://www.w3.org/2003/05/soap-envelope")
loo_Xml.AddAttribute("xmlns:ar","http://ar.gov.afip.dif.FEV1/")
loo_Xml.UpdateChildContent("soap:Header","")
loo_Xml.UpdateChildContent("soap:Body|ar:FEParamGetCotizacion|ar:Auth|ar:Token","string")
loo_Xml.UpdateChildContent("soap:Body|ar:FEParamGetCotizacion|ar:Auth|ar:Sign","string")
loo_Xml.UpdateChildContentInt("soap:Body|ar:FEParamGetCotizacion|ar:Auth|ar:Cuit",123456)
loo_Xml.UpdateChildContent("soap:Body|ar:FEParamGetCotizacion|ar:MonId","string")

// In a SOAP HTTP request, including the XML declaration (<?xml version="1.0" encoding="UTF-8"?>) in the XML body is generally not required. 
loo_Xml.EmitXmlDecl = 0
ls_SoapRequestBody = loo_Xml.GetXml()

ls_Endpoint = "https://wswhomo.afip.gov.ar/wsfev1/service.asmx"
ls_SoapAction = "http://ar.gov.afip.dif.FEV1/FEParamGetCotizacion"
//  For SOAP requests, the standard Content-Type is usually set to "text/xml" or "application/soap+xml"
ls_ContentType = "text/xml"

loo_Http = create oleobject
li_rc = loo_Http.ConnectToNewObject("Chilkat_9_5_0.Http")

loo_Http.ClearHeaders()
loo_Http.SetRequestHeader("Content-Type",ls_ContentType)
loo_Http.SetRequestHeader("SOAPAction",ls_SoapAction)

loo_Resp = loo_Http.PostXml(ls_Endpoint,ls_SoapRequestBody,"utf-8")
if loo_Http.LastMethodSuccess = 0 then
    Write-Debug loo_Http.LastErrorText
    Write-Debug "Failed to send SOAP request."
    destroy loo_Xml
    destroy loo_Http
    return
end if

// Get the XML response body.
loo_ResponseXml = create oleobject
li_rc = loo_ResponseXml.ConnectToNewObject("Chilkat_9_5_0.Xml")

loo_Resp.GetBodyXml(loo_ResponseXml)

li_StatusCode = loo_Resp.StatusCode
Write-Debug "response status code: " + string(li_StatusCode)

destroy loo_Resp

// If the status code does not indicate succcess, then show the response XML,
// which probably contains error information.
if li_StatusCode <> 200 then
    Write-Debug loo_ResponseXml.GetXml()
    destroy loo_Xml
    destroy loo_Http
    destroy loo_ResponseXml
    return
end if

Write-Debug loo_ResponseXml.GetXml()

// Parse the successful SOAP response XML.

// This is a sample of the response XML, but the namespace prefixes will be different.
// We can parse the result using "*" for the namespace prefixes (see below).

ls_MonId = loo_ResponseXml.GetChildContent("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:ResultGet|*:MonId")
ls_MonCotiz = loo_ResponseXml.GetChildContent("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:ResultGet|*:MonCotiz")
ls_FchCotiz = loo_ResponseXml.GetChildContent("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:ResultGet|*:FchCotiz")
li_Code = loo_ResponseXml.GetChildIntValue("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:Errors|*:Err|*:Code")
ls_Msg = loo_ResponseXml.GetChildContent("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:Errors|*:Err|*:Msg")
li_Code = loo_ResponseXml.GetChildIntValue("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:Events|*:Evt|*:Code")
ls_Msg = loo_ResponseXml.GetChildContent("*:Body|*:FEParamGetCotizacionResponse|*:FEParamGetCotizacionResult|*:Events|*:Evt|*:Msg")


destroy loo_Xml
destroy loo_Http
destroy loo_ResponseXml
Request XML
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ar="http://ar.gov.afip.dif.FEV1/">
    <soap:Header/>
    <soap:Body>
        <ar:FEParamGetCotizacion>
            <ar:Auth>
                <ar:Token>string</ar:Token>
                <ar:Sign>string</ar:Sign>
                <ar:Cuit>123456</ar:Cuit>
            </ar:Auth>
            <ar:MonId>string</ar:MonId>
        </ar:FEParamGetCotizacion>
    </soap:Body>
</soap:Envelope>
Response XML
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ar="http://ar.gov.afip.dif.FEV1/">
    <soap:Header/>
    <soap:Body>
        <ar:FEParamGetCotizacionResponse>
            <ar:FEParamGetCotizacionResult>
                <ar:ResultGet>
                    <ar:MonId>string</ar:MonId>
                    <ar:MonCotiz>456.00</ar:MonCotiz>
                    <ar:FchCotiz>string</ar:FchCotiz>
                </ar:ResultGet>
                <ar:Errors>
                    <ar:Err>
                        <ar:Code>1042</ar:Code>
                        <ar:Msg>string</ar:Msg>
                    </ar:Err>
                </ar:Errors>
                <ar:Events>
                    <ar:Evt>
                        <ar:Code>1042</ar:Code>
                        <ar:Msg>string</ar:Msg>
                    </ar:Evt>
                </ar:Events>
            </ar:FEParamGetCotizacionResult>
        </ar:FEParamGetCotizacionResponse>
    </soap:Body>
</soap:Envelope>