Ciao,
mentre controllavo la percentuale di scarto, che come previsto è calata con il passare dei giorni,
mi sono imbattuto in: The value 'ITXXXX XXXXXXXXXXXX ’ of element ‘IBAN’ is not valid.
Questo perchè il sistema è schizzinoso sugli IBAN , non vuole spazi prima dopo in mezzo
anche se https://www.ibancalculator.com/ li valida corretamente
condivido questa info perchè a me era sfuggita, magari anche a voi
Il formato è specificato nel XSD, quindi fallisce la validazione XML, ma non credo che il SdI verifichi la validità formale del codice (almeno nell’elenco dei controlli non c’è niente a riguardo).
Quindi passerà qualsiasi cosa che sia fatta così:
2 lettere, seguite da 2 cifre, seguite da 11 fino a 30 caratteri alfanumerici. Spazi o altri caratteri non sono ammessi.
Approfitto per suggerire a tutti gli sviluppatori di gestionali di leggersi con attenzione il file XSD e l’elenco dei controlli che fa il SdI, e verificare i dati già in fase di inserimento da parte dell’utente, in modo da evitare scarti da parte del SdI (con conseguente frustrazione dell’utente).
Praticamente ogni campo nel file hai dei limiti non solo sulla lunghezza, ma anche sui caratteri ammessi (alle volte latin1, alle volte solo ASCII, altre solo lettere maiuscole, ecc.).
Ciao scusa,
non ho capito, ti serve un tool a linea di comando (verifica on demand a fronte di errori)
oppure
integrarlo nel gestionale (sviluppare codice per estenderlo) ?
Io genero da programma il file .xml pronto per l’invio. Prima di inviarlo, ho intenzione di controllarlo (da linea di comando), così nel caso ci siano errori, posso segnarlo, evitando di inviare un file che è scorretto, e quindi sara’ scartato da ADE.
Grazie @Neapolis, probabilmente voglio farlo anche io,
ho mi scrivo un jar console a parte (o un c#) oppure… mi sono accorto che
$xml = new DOMDocument();
$xml->load(‘example.xml’);
if (!$xml->schemaValidate(‘example.xsd’)) {
con uno script in php sembra facile: http://php.net/manual/en/domdocument.schemavalidate.php
P.S.: i java si portano dietro la jre il c# è principalmente winzoz
Ma lavori da riga di comando in Windows, Linux, o Mac?
Sotto Linux c’è xmllint, che tra le altre cose è in grado di fare anche la validazione. Sugli altri S.O. non so.