Hello, estoy usando PB 12.1 6639 / Win 7 64
Hoy tengo un problema consumiendo un webservice usando el motor .NET.
Las definiciones correspondientes de WSDL y XSD se pueden encontrar aquí:
https://finanzonline.bmf.gv.at/fonws/ws/regKasseService.wsdl
https://finanzonline.bmf.gv.at/fonws/ws/regKasseWs.xsd
https://finanzonline.bmf.gv.at/fonws/ws/regKasse.xsd
Intento llamar a la función rkdb y recibo una excepción con el mensaje de error corto 'Error de validación'.
Para obtener información más detallada, utilicé Fiddler para ver el sobre SOAP producido. Por favor, consulte el archivo adjunto para ver el mensaje SOAP.
Desde esto puedo ver que el mensaje SOAP no contiene toda la información de los parámetros que le paso.
Echa un vistazo al código que uso para llamar al webservice:
// *** Inicio del código ***
rkdbrequest l_request
rkdbresponse l_response
registrierung_kasse l_kasse
try l_request = create rkdbrequest
l_request.tid = "ws_account"
l_request.benid = "ws_user1"
l_request.id = "xau390xkie234AAb"
l_request.erzwinge_asynchron = false
l_request.erzwinge_asynchronspecified = true
l_request.art_uebermittlung = 0
l_kasse = create registrierung_kasse
l_kasse.satznr = as_satznr
l_kasse.kundeninfo = "John Doe"
l_kasse.kassenidentifikationsnummer = "1"
l_kasse.anmerkung = "Caja 1"
l_kasse.benutzerschluessel = "xe45...66==" // Clave AES (codificada en Base64)
l_request.ws_rkdb = create rkdb
l_request.ws_rkdb.ts_erstellung = datetime(today(), now())
l_request.ws_rkdb.items[1] = l_kasse
l_response = l_rkdbservice.rkdb(l_request) // Llamada al WS para rkdb()
catch (soapexception e1)
Messagebox("e1", "Error durante la ejecución de la función del webservice '" + ls_function + "' (Soapexception: '" + e1.text + "')!")
exit
end try
// *** Fin del código ***
Como puedes ver, toda la información se pasa en un objeto (l_request), que contiene un array de any's (llamado 'items') en el miembro 'l_request.ws_rkdb'. Asigno el objeto 'l_kasse' al primer ítem del array de items. Ahora toda la información de 'l_kasse' falta en el mensaje SOAP.
En modo de depuración puedo ver que todos los objetos se crean correctamente y se llenan con los valores correctos. También adjunté una imagen de los tipos de webservice importados (nvo's).
¡Realmente espero que alguien pueda ayudarme a encontrar el error! Gracias de antemano
Saludos, Martin
Pedro Pascal
Se unió el 07/03/2018