S.I.42 Structuri comune (Structures)

Regula S.I.42: UnitPrice

Elementul UnitPrice din structurile comune (Structures) refolosite în mai multe secțiuni ale declarației informative D406 este verificat de DUKIntegrator după regula S.I.42 din documentația oficială SAF-T publicată de ANAF. Cerința oficială este citată mai jos ca atare, împreună cu explicația erorii pe care regula o produce la validare.


Cum arată eroarea

Mesajul din raportul de validare are forma:

eroare atribut: : numar real eronat: '100,00'

Forma mesajului este capturată dintr-o rulare reală a DUKIntegrator și păstrată ca în raportul original, fără diacritice.

Cum rezolvi

Familia regulii: Format numeric și zecimale

Sumele și cantitățile se raportează ca numere zecimale cu punct, fără separator de mii, iar valorile monetare au cel mult două zecimale. Valorile negative primesc semnul minus ca prefix. O virgulă zecimală, un spațiu sau un simbol de monedă în valoare opresc validarea.

Caută valoarea exactă din XML. De multe ori programul formatează numerele așa cum le afișează pe ecran, cu virgulă, iar exportul preia formatul de afișare în locul valorii brute. La cursuri de schimb și la procente verifică și câte zecimale admite regula: nu toate câmpurile numerice au aceeași limită.

Corectează serializarea în modulul de export (punct zecimal, fără formatare de afișare) și regenerează fișierul. Nu înlocui virgulele cu punct global, într-un editor: atingi și textele descriptive și strici mai mult decât repari.

Cerința oficială

Unit price for the unit/group of units per UOM in the header’s default currency

Text citat din documentația oficială SAF-T (SchemaDefCod), în limba originală, fără parafrazare.

Detalii din documentația oficială

Prețul unitar pentru unitatea/grupul de unități per UOM în moneda implicită a antetului
Unit price per one unit of measure în the default currency from the header. Decimal number with two decimals separated by decimal point sign („ . ”) This amount may be positive or negative amount. Negative amounts are prefixed with the minus („-”) sign
Prețul unitar pe unitate de măsură în moneda implicită a antetului. Suma este reprezentată ca un număr zecimal cu două cifre zecimale după separatorul punct zecimal („ . ”) Această sumă poate fi negativă sau pozitivă după caz. Sumele negative sunt prefixate cu semnul minus („-”)
Number with two decimals. For aproximation is used the Order no. 978 from 8 July 2005 of the Ministery of Finance
Număr zecimal cu maxim 2 zecimale. Pentru aproximări se utilizează regulile de rotunjire, conform Ordinului nr. 978 din 8 Iulie 2005 al Ministerului Finanțelor.

Valori scurte din coloanele fișei oficiale (tip de dată, sursă, obligativitate, cardinalitate), în ordinea din documentație:

SAFmonetaryType ERP Mandatory Mandatory 1

Eroarea tipică la validare

Eroarea tipică pentru UnitPrice apare când valoarea din XML contrazice cerința citată mai sus: format greșit, element lipsă acolo unde este obligatoriu sau, la câmpurile cu nomenclator, un cod care nu apare în lista oficială. Regula aparține structurilor comune (Structures), așa că aceeași valoare greșită pică peste tot unde structura e refolosită în fișier.

Reguli înrudite