Ver Mensaje Individual
  #1591  
Antiguo 09-04-2024
CarlosR CarlosR is offline
Miembro
 
Registrado: sep 2015
Posts: 67
Reputación: 9
CarlosR Va por buen camino
Para que se puede necesitar

Cita:
Empezado por keno_71 Ver Mensaje
No sé si te refieres a esto, así lo tengo yo pero lo cogí de un ejemplo del propio club creo recordar:

en el BeforeExecute envío un archivo xml que previamente he generado (e_FicFEMI) y que se encuentra en una carpeta del servidor:

Código Delphi [-] procedure TfrmEnvioFraEmi.HTTPRIO1BeforeExecute(const MethodName: string; SOAPRequest: TStream); var ss:TFileStream; vlfichero : string; begin // configurar parámetros para seleccionar el archivo a enviar try SOAPRequest.Size:=0; ss:=TFileStream.Create(e_FicFEMI, fmOpenRead); SOAPRequest.Position := 0; SOAPRequest.CopyFrom( ss, ss.Size); finally ss.Free; SOAPRequest.Position := 0; end; end;


en el AfterExecute capturo la respuesta y la guardo en otra carpeta del disco duro

saludos

Verás, si creas el xml y lo archivas en una tabla para poder cotejarlo posteriormente con los datos originales y el hash podría pasar algo curioso si usas los métodos creados automáticamente a partir del wsdl de la AEAT.
Podría pasar que cualquier espacio o signo que varíes en el envío con dicho código a la AEAT no se corresponda con el xml archivado con su hash y posiblemente certificado. O simplemente el código creado automáticamente a paritr de la wsdl te los cree. O que una etiqueta del xml tú la dejes en blanco por no uso y el código no te cree la propia etiqueta. Todo esto haría que el hash se fuera por la borda.

Estoy valorando cambiar lo que ya tengo creado por c++ builder a partir del wsdl y pasarlo a código hecho a mano de tal forma que el xml archivado sea el mismo que copio y envio a la AEAT. Simplemente estoy valorándolo pero hay varias papeletas a favor de optar por esa opción.



Gracias de nuevo.


P.D. en mi caso el código SII lo creé de forma automática hace ya años, cuando comenzó, y cada cambio que hace la AEAT me obliga a cambiar programación en diversos sitios. De forma manual me habría resultado mas sencillo el mantenimiento del soft.

Responder Con Cita