Gå til hovedinnhold

Fra FSWS-Hovedbok til FS GraphQL API

FSWS-Hovedbok er under utfasing, og funksjonaliteten er nå erstattet av FS GraphQL API. REST-tjenesten hadde ett endepunkt (POST /okonomi/hovedbok) som håndterte to brukstilfeller basert på parameteren beregning:

  • Ny beregning (beregning=Ny) – kjører en ny hovedbokføring for en gitt dato
  • Hent eksisterende bunt (beregning != Ny) – henter en tidligere hovedbokføring basert på buntnummer

I FS GraphQL API er disse to brukstilfellene delt i en mutation og en query:

FSWS-Hovedbok (REST)FS GraphQL API
POST /okonomi/hovedbok med beregning=NyMutation overfoerTilHovedbok
POST /okonomi/hovedbok med eksisterende buntQuery tidligereHovedbokfoering

Hent en tidligere hovedbokføring

I REST-APIet hentet du en eksisterende bunt ved å sende beregning satt til en annen verdi enn Ny, sammen med buntnr. I GraphQL-APIet brukes queryen tidligereHovedbokfoering med input-objektet QueryTidligereHovedbokfoeringInput.

Parameteroversikt

FSWS-Hovedbok (REST)FS GraphQL API
buntnrinput.buntnummer
(implisitt fra bruker)input.eierOrganisasjonskode

GraphQL-spørring

query HentTidligereHovedbokfoering {
tidligereHovedbokfoering(
input: {
eierOrganisasjonskode: "1234"
buntnummer: "42"
}
) {
buntnummer
antallrader
sumposbelop
sumnegbelop
bilagListe {
bilagsnummer
dato
tekst
belop
kdim0
kdim1
kdim5
}
}
}

Eksempel på svar:

{
"data": {
"tidligereHovedbokfoering": {
"buntnummer": "42",
"antallrader": 3,
"sumposbelop": 15000,
"sumnegbelop": 15000,
"bilagListe": [
{
"bilagsnummer": "1",
"dato": "2025-01-15",
"tekst": "Semesteravgift",
"belop": "5000",
"kdim0": "3400",
"kdim1": null,
"kdim5": "100"
},
{
"bilagsnummer": "2",
"dato": "2025-01-15",
"tekst": "Semesteravgift",
"belop": "10000",
"kdim0": "3400",
"kdim1": null,
"kdim5": "200"
},
{
"bilagsnummer": "3",
"dato": "2025-01-15",
"tekst": "Semesteravgift",
"belop": "-15000",
"kdim0": "1500",
"kdim1": null,
"kdim5": null
}
]
}
}
}

Kjør ny hovedbokføring

I REST-APIet kjørte du en ny hovedbokberegning ved å sende beregning=Ny, sammen med dato og eventuelt oppdaterFS. I GraphQL-APIet brukes mutasjonen overfoerTilHovedbok med input-objektet NyHovedbokInput.

Parameteroversikt

FSWS-Hovedbok (REST)FS GraphQL API
dato (format yyyyMMdd)input.dato (ISO-format, f.eks. 2025-01-15)
oppdaterFS (J/N)input.oppdater (true/false)
(implisitt fra bruker)input.eierOrganisasjonskode

GraphQL-mutasjon

mutation KjoerNyHovedbokfoering {
overfoerTilHovedbok(
input: {
eierOrganisasjonskode: "1234"
dato: "2025-01-15"
oppdater: true
}
) {
buntnummer
antallrader
sumposbelop
sumnegbelop
bilagListe {
bilagsnummer
dato
tekst
belop
kdim0
kdim1
kdim5
}
}
}

Eksempel på svar:

{
"data": {
"overfoerTilHovedbok": {
"buntnummer": "43",
"antallrader": 2,
"sumposbelop": 8000,
"sumnegbelop": 8000,
"bilagListe": [
{
"bilagsnummer": "1",
"dato": "2025-01-15",
"tekst": "Semesteravgift",
"belop": "8000",
"kdim0": "3400",
"kdim1": null,
"kdim5": "100"
},
{
"bilagsnummer": "2",
"dato": "2025-01-15",
"tekst": "Semesteravgift",
"belop": "-8000",
"kdim0": "1500",
"kdim1": null,
"kdim5": null
}
]
}
}
}

Viktige forskjeller

EgenskapFSWS-Hovedbok (REST)FS GraphQL API
AutentiseringBrukerbasert (SecurityContext)OAuth2/OIDC med organisasjonskode
DatoformatyyyyMMddISO 8601 (yyyy-MM-dd)
Oppdater-parameterStreng J/NBoolean true/false
ResponsFlat JSON med bilaglisteGraphQL-respons med bilagListe (camelCase)
Beløp-typerStrengBigDecimal for sum, streng for bilag