Cita:
Empezado por ramherfer
Van unas preguntas a ver si me podeis echar una mano
¿Con este código se genera el xml de la(s) factura(s) y se enviaría (si la url es correcta)?.
|
Con esta línea acabas haciendo el envío y obteniendo la respuesta. Con las anteriores "montas" la factura.
Código Delphi
[-]res := GetsfSOAP(False, '', HTTPRIO1).AltaFactuSistemaFacturacion(alta);
Cita:
Empezado por ramherfer
Tambien aunque lo he intentado añadir código necesario en distintas partes, ya que la factura me llega con dos tipos de maldito iva, no lo he conseguido, ¿Cómo le afectaría al código si una factura lleva dos o más tipos de iva el 21 y el 10?
|
¿Has creado el objeto?
Código Delphi
[-] fact.DatosControl := DatosControlType.Create;
fact.DatosControl.Huella := 'xxxxxxxxxxxxxxxxxxxxxxxxx';
fact.DatosControl.TipoHash := TipoHashType._01;
fact.DatosControl.Incidencia := IncidenciaType.N;
Cita:
Empezado por ramherfer
¿La huella de la factura, se tiene que generar desde este xml y de cada uno de los nodos <RegistroFacturacion> que contenga?
|
Cada factura que se envía (se pueden enviar N facturas) equivale al tipo
RegistroFacturacionType. Y cada uno de estos leva su huella (dentro de
DatosControl):
Código Delphi
[-] FacturasEmitidasType = class(TRemotable)
private
FRegistroFacturacion: RegistroFacturacionType;
FDatosControl: DatosControlType;
public
destructor Destroy; override;
published
property RegistroFacturacion: RegistroFacturacionType read FRegistroFacturacion write FRegistroFacturacion;
property DatosControl: DatosControlType read FDatosControl write FDatosControl;
end;
Por lo tanto, para cada factura habrá que calcular su huella y añadirla al bloque
DatosControl que va junto a la factura.
Si se van a enviar N facturas, todas ellas se añaden a un array (
Array_Of_FacturasEmitidasType) que finalmente es lo que enviamos en la llamada a SOAP (única propiedad de
AltaFactuSistemaFacturacion).