Salve a tutti
Non riesco ad aprire questa fattura elettronica per estrarre l’XML dal file P7M
Il file è questo Fattura Elettronica
Premesso che i nostri clienti hanno ricevuto più di 200.000 fatture elettroniche con estensione .P7M in “chiaro” o in Base64 senza problemi
Utilizzando le librerie OpenSSL con Delphi ritorna l’errore:
UNABLE TO READ PKCS7 FILE
Aprendo il file XML con Dike o Assosoftware ovviamente viene letta senza errori
Eliminando la “testata” e il “footer” dal file P7M e salvandolo con la sola estensione XML il file è completo e viene letto correttamente
A qualcuno è già capitato un file con una firma di questo tipo?
Visto che chi la emesssa è E-DISTRIBUZIONE SPA il problema si verificherà anche da altri clienti che ricevono fatture da ENEL
Grazie
In un altro thread avevo suggerito di usare il comando “cms” di openssl invece di “smime” (eseguendolo a riga di comando). Prova a fare l’equivalente usando la libreria.
Ciao Sergio, hai qualche indicazione riguardo a questi benedetti file dell’enel, su quale procedura usare nella procedura TPKCS7.Open() di OpenSSLUtils ?
Buonasera Gianni.
Qualche dritta su come modificare la procedura TPKCS7.Open() ?
Anche modificando il file togliendo le righe iniziali e finali si incorre in qualche carattere aggiunto a caso dalla firma. Quindi togliere la firma manualmente non è consigliabile.
Grazie.
Condivido lo stesso problema, da qualche mese. Tutti i miei clienti che ricevono fatture ENEL non riescono a leggerle, mentre leggono senza problemi tutte le altre (direi senza eccezioni).
Il gestionale è scritto (versioni differenti) su Delphi 6 oppure su Delphi DX 10.3.3, la lettura fallisce indifferentemente in entrambi gli ambienti.
Se qualcuno ha qualche dritta da suggerire, lo propongo per un monumento equestre
Federico
PS: utilizzo libeay32.dll versione 10.0.2.21 del 21/12/2019, dovrebbe essere l’ultima versione disponibile
Ciao Federico
Il problema è che la firma si estrae con il comando CMS e non con SMIME
Christian Cristofori ha modificato la sua libreria PKCS7Extractor https://github.com/DelphiClubItalia/PKCS7Extractor
Solo che la versione è in beta e non ancora pubblicata su GitHUB ma a me sembra funzionare, ho decodificato + di 100 fatture di ENEL e l’ha messa in produzione.
Io se vuoi ti posso inviare l beta che uso io
Per XE funziona correttamente, per Delhi 2007 e precedenti c’è da remmare qualche riga di codice
Fammi saapere
Caro Gianni, GRAZIE! Sarei molto contento se tu potessi inviarmi le tue beta.
Le puoi pubblicare qui? Devo darti la mia mail? Come preferisci.
Federico