Cita:
Empezado por Neftali [Germán.Estévez]
Me respondo a mi mismo.
He descargado el XSD desde aquí.
Lo he subido al FTP junto al resto de la documentación.
Importándolo en un proyecto de Delphi ( XML Data Binding) y con un poco de código:
Código Delphi [-]procedure TForm3.Button2Click(Sender: TObject);
var
fAlta:IXMLSistemaFacturacionAltaFact;
begin
fAlta := NewFacturaAlta;
fAlta.Cabecera.IDVersion := '1.0';
fAlta.Cabecera.ObligadoEmision.NombreRazon := 'EMPRESA PRUEBAS';
fAlta.Cabecera.ObligadoEmision.NIF := '11111111H';
fAlta.Cabecera.TipoRegistroAEAT := 'S0';
...
var sXML:string;
fAlta.OwnerDocument.SaveToXML(sXML);
Memo1.Lines.Text := sXML;
end;
Se genera la parte de la cabecera sin problemas...
Código PHP:
<?xml version="1.0"?>
<FacturaAlta xmlns="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd">
<Cabecera>
<IDVersion>1.0</IDVersion>
<ObligadoEmision>
<NombreRazon>EMPRESA PRUEBAS</NombreRazon>
<NIF>11111111H</NIF>
</ObligadoEmision>
<TipoRegistroAEAT>S0</TipoRegistroAEAT>
</Cabecera>
</FacturaAlta>
Os adjunto el fichero generado.
|
Ante todo, muchas gracias por tu paciencia.
Esto a base de pegarme cabezazos todo el fin de semana, ya lo había conseguido encontrar, pero entonces me atascaba en el momento de querer hacer el envío, ya que en el método GetsfSOAP requiere que sea un objeto de tipo Array_Of_RespuestaExpedidaType y no se como "calzarle" el cabecera.
Código:
try
SetLength(arrayFacturas, 1);
arrayFacturas[0] := regFactura;
result := GetsfSOAP(true, '', HTTPRIO1).AltaFactuSistemaFacturacion(ArrayFacturas);