Simbolo euro in descrizione DatiBeniServizi

Buon giorno a tutti

Ho un problema credo banale, ma non riesco a uscirne. Se nel campo descrizione dei DatiBeniServizi inserisco il carattere euro (correttamente codificato in UTF-8) la fattura viene scartata

Non trovo però elementi certi nella documentazione (e nemmeno qui nel forum o su google) dove si dice quale (o quali) siano i caratteri non ammessi (oltre a quelli da standard XML, ovvero < > & " ’ )

Grazie in anticipo a chi mi possa dare indicazioni

Saluti a tutti

Le specifiche le trovi nel file xsd.
In particolare il campo Descrizione che ti interessa è di tipo String1000LatinType che ammette il pattern seguente: "[\p{IsBasicLatin}\p{IsLatin-1Supplement}]{1,1000}".
Tradotto, è possibile usare solo i caratteri che fanno parte dei blocchi Unicode “Basic Latin” e “Latin-1 Supplement”, ovvero i caratteri Unicode da 0x00 a 0xFF. Tra questi purtroppo non c’è il simbolo dell’euro.

1 Mi Piace

ok grazie, aggiungo una search and replace per sostituirli

Grazie, preziosissima info: stavo diventando matto perché la ricevuta di scarto mica diceva “carattere non ammesso” ma solo file non conforme e riferimento al campo causale con paste parte del testo ma senza migliori indicazioni.
grazie ancora

Ho provato a sostituire il segno dell’euro con &#128;, la fattura viene accettata ma non ho ancora verificato come risulta archiviata.

Due osservazioni:

  1. Mettendo &amp;#128; nel file xml, non hai inserito un carattere speciale. Hai letteralmente inserito il seguente testo &#128;. Se non avessi fatto l’escaping del &, te lo avrebbe rifiutato, essendo che il carattere unicode 128 non è ammesso.
  2. Anche se &#128; funzionasse, non sarebbe il simbolo dell’euro. Il simbolo dell’euro ha codice 128 nel set di caratteri Windows-1252, ma non in Unicode. Il carattere unicode 128 è un carattere di controllo (PAD).

Hai ragione, allora al momento non resta che filtrarlo.
Grazie.