Skip to content

Latest commit

 

History

History
81 lines (57 loc) · 5.57 KB

felles_posisjonsbaserte_filvedlegg.md

File metadata and controls

81 lines (57 loc) · 5.57 KB

Kravspesifikasjon for posisjonsbaserte filvedlegg

Begrep

  • 💀 FATAL, når en kontroll ender med alvorlighetsgraden FATAL så stopper all videre kontrollering umiddelbart. FATAL hindrer da andre kontrollene i bli kjørt. Videre så hindrer denne innsending av filvedlegget til SSB.
  • ERROR, når en kontroll ender med alvorlighetsgraden ERROR så hindrer denne innsending av filvedlegget til SSB.
  • ⚠️ WARNING, når en kontroll ender med alvorlighetsgraden WARNING så kan filvedlegget bli sendt inn til SSB med advarsler.
  • ℹ️ INFO, når en kontroll ender med alvorlighetsgraden INFO så kan filvedlegget bli sendt inn til SSB med tilbakemeldinger som er til informasjon for avgiveren.
  • OK, når en kontroll ender med alvorlighetsgraden vises ingen tilbakemelding av noe slag da alt er i orden.

I forbindelse med kontrollering så blir noen variabler sendt med fra portalen og blir benyttet i noen av kontrollene. Disse er:

Krav

Kontroll 000 : Skal levere filuttrekk

Gitt at en i Kostra-skjemaet har merket av for at man skal rapportere
når filvedlegget med data finnes
skal ingenting skje

når filvedlegget mangler
gi en 💀FATAL med meldingen "Det er krysset av i skjemaet at det finnes deltakere, men fil som kun inneholder et mellomrom er levert."

Gitt at en har i Kostra-skjemaet merket av for at man ikke skal rapportere
når filvedlegget inneholder noe annet enn kun et mellomrom
gi en 💀FATAL med meldingen "Det er krysset av i skjemaet at det ikke finnes deltakere, men filen som er levert har annet innhold enn ett mellomrom.
Kryptert fil uten innhold kan lastes ned fra https://www.ssb.no/innrapportering/kostra-innrapportering
-> Kontrollprogram og programmer til fagsystem for kommuner og leverandører
-> Kvalifiseringsstønad
-> Tom, kryptert fil (for dem som ikke har noen mottakere av kvalifiseringsstønad i {rapporteringsår})"

når filvedlegget inneholder kun et mellomrom
gi en ✅OK med meldingen "Det er krysset av i skjemaet at det ikke finnes deltakere og fil som kun inneholder et mellomrom er levert."

Kode Test

Kontroll 001 : Recordlengde

Gitt at en har en filbeskrivelse og et filvedlegg med data
når en eller flere linjer i filvedlegget har en annen lengde enn beskrevet i filbeskrivelsen eller inneholder andre blanke tegn enn mellomrom
gi en 💀FATAL med meldingen "Korrigér filen slik at alle records er på (filbeskrivelse.lengde) tegn, mellomrom brukes for alle blanke posisjoner og avslutter med linjeskift. Denne fatale feilen hindrer de andre kontrollene i å bli kjørt. Gjelder for linjene: (liste med linjenummer)"

Kode Test

Kontroll 002 : Filbeskrivelse, mangler obligatorisk verdi

Gitt at en har en filbeskrivelse med feltdefinisjon som sier at feltet er obligatorisk å fylle ut
når feltet er blankt / mangler
gi en ⛔FEIL med meldingen "Korrigér felt '{feltdefinisjon.navn}', posisjon fra og med {feltdefinisjon.fra} til og med {feltdefinisjon.til}, mangler obligatorisk verdi."

Kontroll 002 : Filbeskrivelse, feil i heltall-felt

Gitt at en har en filbeskrivelse med feltdefinisjon som sier at feltet er et tall
når feltet er fyllt ut med noe annet enn et heltall
gi en ⛔FEIL med meldingen "Korrigér felt '{fieldDefinition.navn}', posisjon fra og med ${feltdefinisjon.fra} til og med ${feltdefinisjon.til}, er et tallfelt, men inneholder '{record[feltdefinisjon.navn]}'."

Kontroll 002 : Filbeskrivelse, feil i dato-felt

Gitt at en har en filbeskrivelse med feltdefinisjon som sier at feltet er et dato der datoformat er definert
når feltet er fyllt ut med noe annet enn enn formattert dato
gi en ⛔FEIL med meldingen "Korrigér felt '{fieldDefinition.navn}', posisjon fra og med ${feltdefinisjon.fra} til og med ${feltdefinisjon.til}, er et datofelt med datomønster '{feltdefinisjon.datomønster}', men inneholder '{record[feltdefinisjon.navn]}'."

Kontroll 002 : Filbeskrivelse, feil kode

Gitt at en har en filbeskrivelse med feltdefinisjon som sier at feltet er en tekst der kodeliste er definert
når feltet er fyllt ut med noe annet enn en kode fra kodelisten
gi en ⛔FEIL med meldingen "Korrigér felt '{fieldDefinition.navn}', posisjon fra og med ${feltdefinisjon.fra} til og med ${feltdefinisjon.til}, sin kode '{record[feltdefinisjon.navn]}' fins ikke i {feltdefinisjon.kodeliste}."