Introducción


A continuación se muestra un ejemplo de una aplicación mediante la cual se pueden presentar asientos generales del ASP clásico a través del método Accounting-ProcessJournal(sessionID, administrationID, xmlDoc). 


Ejemplo


<%

Dim objXmlHttp

Dim objXmlHttp2

Diminuta sesión

Dim strXml

Dim strAccessKey

Dim strAdministración

Dim strWebserviceUrl

Dim strJournalXml


strAccessKey = "REPLACE WITH WEBSERVICEACCESSKEY"

strAdministrationId = "REPLACE WITH ADMINISTRATIONID"

strWebserviceUrl = "https://api.yukiworks.be/ws/Accounting.asmx"


Construye el mensaje SOAP XML para el WebServiceMethod "http://www.theyukicompany.com/Authenticate".

strXml = "<?xml version=""1.0"" encoding=""utf-8""?>" & _

"<soap12:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap12=""http://www.w3.org/2003/05/soap-envelope"">" y _

"<soap12:Body>" & _"<Autentificar xmlns=""http://www.theyukicompany.com/"">" y _


                "<accessKey>" & strAccessKey & "</accessKey>" & _

"</Autentificar>" & _

"</soap12:Body>" & _

" </soap12:Envelope>"


Crear un objeto ServerXMLHTTP.


Set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP")

objXmlHttp.open "POST", strWebserviceUrl, Falso

objXmlHttp.setRequestHeader "Content-Type", "application/soap+xml; charset=utf-8"

objXmlHttp.setRequestHeader "SOAPAction", "http://www.theyukicompany.com/Authenticate"

objXmlHttp.setRequestHeader "Content-Length", Len(strXml)


Envía un mensaje SOAP.


objXmlHttp.send strXml


Imprime el estado de la solicitud.


Respuesta. Escribe "WebServiceMethod ""Autentificar"" estado de la solicitud: <b>" & objXmlHttp.status & " " & objXmlHttp.statusText & "</b><br /><br />"


Imprime la respuesta SOAP XML.


Escribe "<divborder: solid 1px black;"">" & Server.HTMLEncode(objXmlHttp.responseText) & "</div><br /><br />"


"Parse sessionKey from SOAP XML response with ActiveXObject". Si el ActiveXObject "MSXML2.DomDocument.X.X" no se puede encontrar, intenta encontrar

otra versión en MSDN.

Set objXML = Server.CreateObject("MSXML2.DomDocument.3.0")

objXML.loadXML(objXmlHttp.responseText)

strSessionId = objXML.selectNodes("/").item(0).text


Establecer objXML = Nothing

Set objXmlHttp = Nothing


strJournalXml = "<Journal xmlns=""urn:xmlns:http://www.theyukicompany.com:journal""" & _


                        " xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">" y _


                        "    <AdministraciónID>" & strAdministraciónId & "</AdministraciónID>" & _

" <AdministrationCoCNumber>12345672</AdministrationCoCNumber>" & _

" <DocumentSubject>Trx import april</DocumentSubject>" & _

" <JournalType>EndOfYearCorrection</EndOfYearCorrection>" & _

" <journalEntry>" & _

" <ContactName> Apple Sales International</ContactName>" & _

" <ContactCode>9921</ContactCode>" & _

" <EntryDate>2012-12-31</EntryDate>" & _

" <GLAccount>20000<GLAccount>" & _

" <Amount>22.22</Amount>" & _

" <Description>Compra Hardware</Descripción>" & _

" <JournalEntry>" & _

" <journalEntry>" & _

" <ContactName> Apple Sales International</ContactName>" & _

" <ContactCode>9921</Código de contacto>" & _

" <EntryDate>2012-12-31</EntryDate>" & _

" <GLAccount>20000<GLAccount>" & _

" <Amount>-22.22</Montaje>" & _

" <Description>Retour hardware</Descripción>" & _

" <JournalEntry>" & _

"</Journal>"


Construye el mensaje SOAP XML para el WebServiceMethod "http://www.theyukicompany.com/ProcessJournal".

strXml = "<?xml version=""1.0"" encoding=""utf-8""?>" & _

"<soap12:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap12=""http://www.w3.org/2003/05/soap-envelope"">" y _

"<soap12:Body>" & _"<ProcessJournal xmlns=""http://www.theyukicompany.com/"">" & _


                "<sessionID>" & strSessionId & "</sessionID>" & _

"<administrationID>" & strAdministrationId & "</administrationID>" & _

"<xmlDoc>" & strJournalXml & "</xmlDoc>" & _

"</ProcessJournal>" & _

"</soap12:Body>" & _

" </soap12:Envelope>"


Crear un objeto ServerXMLHTTP.


Set objXmlHttp2 = Server.CreateObject("Msxml2.ServerXMLHTTP")

objXmlHttp2.open "POST", strWebserviceUrl, False

objXmlHttp2.setRequestHeader "SOAPAction", "http://www.theyukicompany.com/ProcessJournal"

objXmlHttp2.setRequestHeader "Content-Type", "application/soap+xml; charset=utf-8"

objXmlHttp2.setRequestHeader "Content-Length", Len(strXml)


Envía un mensaje SOAP.


objXmlHttp2.send strXml


Imprime el estado de la solicitud.


Respuesta. Escribe "WebServiceMethod ""ProcessJournal"" estado de la solicitud:  <b>" & objXmlHttp2.status & " " & objXmlHttp2.statusTexto & "</b><br /><br />"


Imprime la respuesta SOAP XML.


Escribe "<divborder: solid 1px black;"">" & Server.HTMLEncode(objXmlHttp2.responseText) & "</div>"


Set objXmlHttp2 = Nothing

%>