Vorig onderwerp

Volgend onderwerp

Inhoud boek

Book Index

Extra informatie bij rubriekfouten en foutcodes (4.1.3.3)

Achtergrond
Bij foutmeldingen in DCB krijg je nu meer context zodat je beter kunt zien waar de fout vandaan komt. Deze meldingen worden in het portaal getoond aan de gebruiker, zodat direct zichtbaar is bij welke invoer of verzekering de fout optreedt. Bij fouten tijdens invoer of premieberekening van een pakket wordt aangegeven bij welke pakketverzekering de fout hoort.

Uitbreiding foutcodesysteem
In de foutmelding worden extra properties toegevoegd, zoals RubriekId, Type DOP (dekking, object of partij) en DopId (= DIAS dekking/object/partijcode). Deze informatie wordt alleen gevuld indien aanwezig en relevant. Het foutcodesysteem is uitgebreid zodat extra contextuele informatie kan worden toegevoegd aan foutcodes. Dit werkt niet alleen voor errors, maar ook voor warnings en info‑meldingen. De extra data wordt opgenomen in de tekst van de gegenereerde exception. Unit‑tests zijn aangepast zodat gecontroleerd wordt dat deze data niet verloren gaat. 

Bad Request uitvoer
Bij de aanroep van een WebAPI‑ingang kan een Bad Request worden geretourneerd. Voorbeeld zonder extra data:

{

"Message": "Rubriek ongeldig: Rubriek met RubriekId Tp_1855 bij dekking met id 6654 moet een waarde van het type UurMinuut krijgen.",

"Errors": [

{

"Code": "RubriekOngeldig",

"Message": "Rubriek ongeldig: Rubriek met RubriekId Tp_1855 bij dekking met id 6654 moet een waarde van het type UurMinuut krijgen."

}

]

}

Vanaf nu kan per Error-item naast de melding ook extra data worden geleverd:

{

"Message": "Rubriek ongeldig: Rubriek met RubriekId Tp_1855 bij dekking met id 6654 moet een waarde van het type UurMinuut krijgen.",

"Errors": [

{

"Code": "RubriekOngeldig",

"Message": "Rubriek ongeldig: Rubriek met RubriekId Tp_1855 bij dekking met id 6654 moet een waarde van het type UurMinuut krijgen.",

"Data": [

{ "Naam": "RubriekId", "Type": "String", "Waarde": "Tp_1855" },

{ "Naam": "VerzekeringDekkingId", "Type": "Getal", "Waarde": 6654 },

{ "Naam": "VerzekeringId", "Type": "Getal", "Waarde": 5128 }

]

}

]

}

Types van extra data 

  • Getal: integer (geheel getal)
  • Decimalen: float (getal met decimalen)
  • Bool: true of false
  • String: tekst 

Patronen in geleverde data 

  • Afhankelijk van de fout en de WebAPI‑ingang kunnen o.a. de volgende waarden geleverd worden:
  • VerzekeringId / VerzekeringResourceId
  • PakketId / PakketResourceId
  • DekkingId / DekkingResourceId
  • ObjectId / ObjectResourceId
  • PartijId / PartijResourceId
  • RubriekId
  • ScenarioId, ScenarioPakketOnderdeelId, ScenarioVerzekeringOnderdeelId
  • EigengegevensgroepId, EigengegevensgroepGroepId 

Niet alle waarden worden altijd geleverd. De Data-node kan ontbreken en de inhoud varieert per fout en per WebAPI-ingang. Programmatuur die hierop reageert moet rekening houden met deze variatie. 

Impact
Meldingen ontstaan in DCB en worden in het portaal gepresenteerd. Je krijgt duidelijker inzicht bij welke verzekering, dekking of rubriek een fout optreedt. Dit maakt het eenvoudiger om gebruikers te begeleiden naar de juiste invoer en om externe partijen de juiste context mee te geven bij foutcodes. Daarnaast is het nu mogelijk om programmatisch te reageren op de extra data die bij foutmeldingen wordt meegeleverd.