Cita:
HTTPRIO1.Tag := 0;
res:= RespuestaBaseType.Create;
res:= GetsfPortTypeVerifactu( False, '', HTTPRIO1 ).RegFactuSistemaFacturacion( veriFactu );
|
Eso es de el ejemplo que publique.
Ahora lo estoy modificando como digo para que funcione en el entorno de pruebas.
A ver:
Puedes descargar el WSDL y guardarlo en fichero.
Coges el fichero, lo colocal en WSDLLocation y voila puedes elegir el puerto y servicio.
Modificar la linea en el codigo a true:
res:= GetsfPortTypeVerifactu(
true, '', HTTPRIO1 ).RegFac ....
Pero cuando envio, me dice, ponga el puerto que ponga, o lo que ponga:
Error al realizar el envío; (ESOAPHTTPException)-Unable to retrieve the URL endpoint for Service/Port 'sfVerifactu'/'SistemaVerifactuPruebas' from WSDL 'c:\proyectos\VeriFactu2\SistemaFacturacion.wsdl'
Puedes colocar la URL:
https://prewww1.aeat.es/wlpl/TIKE-CO.../VerifactuSOAP
No elegir puerto
y dejar la linea del codigo a false:
res:= GetsfPortTypeVerifactu(
false, '', HTTPRIO1 ).RegFac ....
pero entonces me devuelve:
Error al realizar el envío; (ERemotableException)-<env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>env:Server</faultcode><faultstring>Codigo[1207].Se esperaba nodo {http://schemas.xmlsoap.org/soap/envelope/}Envelope y ha venido {http://www.w3.org/2003/05/soap-envelope}Envelope</faultstring></env:Fault>
y Ahi estoy parado.
Como he dicho, mi intencion es modificar ese ejemplo y dejarlo funcional, a ver si alguien me da una mano.
Saludos !