From 49d88c41b7892e7538e9c1dbf9bb349d10e36815 Mon Sep 17 00:00:00 2001 From: lepool Date: Sat, 7 Feb 2026 21:39:00 +0100 Subject: [PATCH] FIX generazione fattura elettronica per sedi committente paesi esteri - in caso di paese al estero per sedi CAP 00000 - in caso di paese al estero provincia non viene inserito errori generati in precedenza: File non conforme al formato : The value 'XXXX' of element 'CAP' is not valid. File non conforme al formato : The value 'X_' of element 'Provincia' is not valid --- plugins/exportFE/src/FatturaElettronica.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/exportFE/src/FatturaElettronica.php b/plugins/exportFE/src/FatturaElettronica.php index b41330711..91fe251f0 100755 --- a/plugins/exportFE/src/FatturaElettronica.php +++ b/plugins/exportFE/src/FatturaElettronica.php @@ -1125,24 +1125,29 @@ protected static function getDatiTrasporto($fattura) if (!empty($documento['idsede_destinazione'])) { $sede = $database->fetchOne('SELECT * FROM an_sedi WHERE id='.prepare($documento['idsede_destinazione'])); + $is_nazione_it = false; + if (!empty($sede['id_nazione'])) { + $rs_nazione = Nazione::find($sede['id_nazione']); + $is_nazione_it = ($rs_nazione['iso2'] == "IT") ? true : false; + } + if (!empty($sede['indirizzo'])) { $result['IndirizzoResa']['Indirizzo'] = $sede['indirizzo']; } if (!empty($sede['cap'])) { - $result['IndirizzoResa']['CAP'] = $sede['cap']; + $result['IndirizzoResa']['CAP'] = ($is_nazione_it == true) ? $sede['cap'] : "00000"; } if (!empty($sede['citta'])) { $result['IndirizzoResa']['Comune'] = $sede['citta']; } - if (!empty($sede['provincia'])) { + if (!empty($sede['provincia']) && $is_nazione_it == true) { $result['IndirizzoResa']['Provincia'] = $sede['provincia']; } if (!empty($sede['id_nazione'])) { - $rs_nazione = Nazione::find($sede['id_nazione']); $result['IndirizzoResa']['Nazione'] = $rs_nazione['iso2']; } }