XSDHub

BR-RO-110: Subdiviziunea țării vânzătorului nu este codificată

Subdiviziunea țării vânzătorului nu este codificată — cauză, câmp XML, corecție și probe complete.

Ce înseamnă și cum corectezi

Pentru un vânzător cu țara RO, BT-39 trebuie să folosească un cod din lista ISO 3166-2:RO inclusă în pachet. CountrySubentity conține, de exemplu, RO-B pentru București sau RO-AB pentru Alba. Valoarea scurtă B nu este echivalentă cu RO-B în această listă. În fișierul greșit am schimbat exclusiv subdiviziunea vânzătorului, păstrând țara RO și localitatea SECTOR1. Varianta bună readuce codul RO-B, astfel încât și regula dependentă de sector să se poată evalua în contextul Bucureștiului. Nu modifica IdentificationCode al țării în RO-B: acela are alt rol și păstrează codul RO. Verifică maparea dintre câmpul județ din aplicația contabilă și elementul CountrySubentity. Un nume de județ afișat în interfață nu trebuie transmis fără conversie într-un câmp care așteaptă codul. Lista efectivă este publicată în sursa fixată a acestei versiuni, fără solicitări de rețea în timpul validării. O regiune din afara României nu este supusă acestei condiții naționale, însă țara trebuie să reflecte datele reale ale partenerului. Regula este un report fatal și se raportează ca eroare atunci când testul său este adevărat. Nu încerca să rezolvi diagnosticul modificând adresa cumpărătorului, deoarece calea indicată se referă la AccountingSupplierParty.

Câmpul și condiția din sursă

Mutația pentru BR-RO-110 vizează calea /*/cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:CountrySubentity.

[
  {
    "file": "expanded.sch (generated from original ANAF includes)",
    "kind": "report",
    "context": "/ubl:Invoice | /cn:CreditNote",
    "test": "normalize-space(cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cac:Country/cbc:IdentificationCode) = 'RO' and not(normalize-space(cac:AccountingSupplierParty/cac:Party/cac:PostalAddress/cbc:CountrySubentity) = $ISO-3166-RO-CODES)",
    "message": "[BR-RO-110]-Daca Codul tarii Vanzatorului (BT-40) este RO, atunci Subdiviziunea tarii Vanzatorului (BT-39) trebuie sa fie codificata folosind lista de coduri ISO 3166-2:RO (ex. \"RO-B\" pentru Municipiul Bucuresti, \"RO-AB\" pentru judetul Alba...). #If the Seller's country Code (BT-40) is RO, then the Seller's country subdivision (BT-39) must be coded using the ISO 3166-2: RO code list (ex. \"RO-B\" for Bucharest, \"RO-AB\" for Alba County...)."
  }
]

Fragment greșit

<cbc:CountrySubentity xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:ubl="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cn="urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">B</cbc:CountrySubentity>

Fragment corectat

<cbc:CountrySubentity xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:ubl="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cn="urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">RO-B</cbc:CountrySubentity>

Reproducere cu motorul fixat

Fișierul br-ro-110-bad.xml nu trece verificarea și produce 1 diagnostice de eroare în această probă. Perechea corectată trece etapele XSD și regulile de afaceri din pachetul ANAF. Câmpul modificat este cel indicat mai sus; restul datelor fictive sunt păstrate.

XML greșit complet · XML corectat complet

[
  {
    "code": "BR-RO-110",
    "message": "[BR-RO-110]-Daca Codul tarii Vanzatorului (BT-40) este RO, atunci Subdiviziunea tarii Vanzatorului (BT-39) trebuie sa fie codificata folosind lista de coduri ISO 3166-2:RO (ex. \"RO-B\" pentru Municipiul Bucuresti, \"RO-AB\" pentru judetul Alba...).\n\t\t\t\t#If the Seller's country Code (BT-40) is RO, then the Seller's country subdivision (BT-39) must be coded using the ISO 3166-2: RO code list (ex. \"RO-B\" for Bucharest, \"RO-AB\" for Alba County...).",
    "path": "/*:Invoice[namespace-uri()='urn:oasis:names:specification:ubl:schema:xsd:Invoice-2'][1]",
    "svrl_kind": "successful-report"
  }
]

Alte mesaje în aceeași probă

În testul pentru BR-RO-110 nu s-au emis alte coduri de eroare.

Aceste rezultate descriu facturile sintetice publicate, nu frecvența erorilor din facturile vizitatorilor.

Verifică propriul XML · Înapoi la index · Surse, metodă și limite