Cattye ha scritto:
Ritiro la domanda, ho trovato un altro tread molto esplicativo, dove leggo che ANCHE NO, non c'è nient'altro di valido.
Vorrà dire che manderò l'XML così com'è e se verrà respinto ne prenderò atto....
nonostante sia stato io a chiedere aiuto per lo stesso motivo
ho due suggerimenti che forse possono aiutare :
1 - mandi la fattura senza la partita iva del cedente-prestatore
le notifiche di errore potrebbero comprendere tutti gli errori
compresi quelli che servono a te.
2 - usare questo programma che però è in delphi 7
in ninpfile va il path name dell'XML
procedure TFwps.BitBtn3Click(Sender: TObject);
var
ninpfile:string;
XML, XSDL: Variant;
dir:string;
file1,file2:string;
begin
if pagecontrol3.activepage.Caption='Spedite' then begin
ninpfile:=FileListBox5.FileName;
end;
if pagecontrol3.activepage.Caption='Da_Spedire' then begin
ninpfile:=FileListBox4.FileName;
end;
if pagecontrol3.activepage.Caption='Da_Firmare' then begin
ninpfile:=FileListBox3.FileName;
end;
memo2.Lines.add(ninpfile);
if FileExists(ninpfile) then begin
dir:=extractfiledir(ninpfile);
XSDL := CreateOLEObject('MSXML2.XMLSchemaCache.4.0');
memo2.Lines.add(timetostr(time));
XSDL.validateOnLoad := True;
memo2.Lines.add(timetostr(time));
memo2.Lines.add('prego attendere circa 30 secondi');
XSDL.add('http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2','http://www.fatturapa.gov.it/export/fatturazione/sdi/fatturapa/v1.2/Schema_del_file_xml_FatturaPA_versione_1.2.xsd');
memo2.Lines.add('Schema Loaded: '+timetostr(time));
XML := CreateOLEObject('MSXML2.DOMDocument.4.0');
memo2.Lines.add(timetostr(time));
XML.validateOnParse := True;
memo2.Lines.add(timetostr(time));
XML.resolveExternals := True;
XML.schemas := XSDL;
memo2.Lines.add(timetostr(time));
XML.load(ninpfile); //XML nome file
memo2.Lines.add(timetostr(time));
if trim(XML.parseError.reason)='' then begin
memo2.lines.add('OK, nessun errore rilevato');
memo2.lines.add('');
end else begin
memo2.lines.add(XML.parseError.reason);
memo2.lines.add('');
end;
end;
end;