Tcl
Tcl
SOAP demoemision.thefactoryhka.com.pa DescargaPDF
See more REST Misc Examples
Make a SOAP call to http://demoemision.thefactoryhka.com.pa/ws/obj/v1.0/Service.svc with SOAPAction http://tempuri.org/IService/DescargaPDFChilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# --------------------------------------------------------------------------------
# Also see Chilkat's Online WSDL Code Generator
# to generate code and SOAP Request and Response XML for each operation in a WSDL.
# --------------------------------------------------------------------------------
set http [new_CkHttp]
# First build this SOAP XML request body:
# Use this online tool to generate the code from sample XML:
# Generate Code to Create XML
# <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:ser="http://schemas.datacontract.org/2004/07/Services.Model">
# <soapenv:Header/>
# <soapenv:Body>
# <tem:DescargaPDF>
# <tem:tokenEmpresa>?</tem:tokenEmpresa>
# <tem:tokenPassword>?</tem:tokenPassword>
# <tem:datosDocumento>
# <ser:codigoSucursalEmisor>?</ser:codigoSucursalEmisor>
# <ser:numeroDocumentoFiscal>?</ser:numeroDocumentoFiscal>
# <ser:puntoFacturacionFiscal>?</ser:puntoFacturacionFiscal>
# <ser:serialDispositivo>?</ser:serialDispositivo>
# <ser:tipoDocumento>?</ser:tipoDocumento>
# <ser:tipoEmision>?</ser:tipoEmision>
# </tem:datosDocumento>
# </tem:DescargaPDF>
# </soapenv:Body>
# </soapenv:Envelope>
set xml [new_CkXml]
CkXml_put_Tag $xml "soapenv:Envelope"
CkXml_AddAttribute $xml "xmlns:soapenv" "http://schemas.xmlsoap.org/soap/envelope/"
CkXml_AddAttribute $xml "xmlns:tem" "http://tempuri.org/"
CkXml_AddAttribute $xml "xmlns:ser" "http://schemas.datacontract.org/2004/07/Services.Model"
CkXml_UpdateChildContent $xml "soapenv:Header" ""
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:tokenEmpresa" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:tokenPassword" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:codigoSucursalEmisor" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:numeroDocumentoFiscal" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:puntoFacturacionFiscal" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:serialDispositivo" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:tipoDocumento" "?"
CkXml_UpdateChildContent $xml "soapenv:Body|tem:DescargaPDF|tem:datosDocumento|ser:tipoEmision" "?"
set strXml [CkXml_getXml $xml]
CkHttp_SetRequestHeader $http "SOAPAction" "http://tempuri.org/IService/DescargaPDF"
CkHttp_SetRequestHeader $http "Content-Type" "text/xml; charset=utf-8"
set endPoint "http://demoemision.thefactoryhka.com.pa/ws/obj/v1.0/Service.svc"
set resp [new_CkHttpResponse]
set success [CkHttp_HttpStr $http "POST" $endPoint $strXml "utf-8" "application/xml" $resp]
if {$success == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkHttp $http
delete_CkXml $xml
delete_CkHttpResponse $resp
exit
}
set statusCode [CkHttpResponse_get_StatusCode $resp]
if {$statusCode != 200} then {
puts "Non-success status code: $statusCode"
puts "Response header: [CkHttpResponse_header $resp]"
puts "Response body: [CkHttpResponse_bodyStr $resp]"
puts "Unsuccessful."
delete_CkHttp $http
delete_CkXml $xml
delete_CkHttpResponse $resp
exit
}
set xmlResp [new_CkXml]
CkXml_LoadXml $xmlResp [CkHttpResponse_bodyStr $resp]
puts [CkXml_getXml $xmlResp]
# Use this online tool to generate parsing code from sample XML:
# Generate Parsing Code from XML
delete_CkHttp $http
delete_CkXml $xml
delete_CkHttpResponse $resp
delete_CkXml $xmlResp