Har koppierat beskrivning härifrån.
Bakgrund
Idag sker uppdateringen av TAK-en manuellt. Det är baserat på konfigurationsbeställningar från blanketter eller från verktyget Nationella Beställningsstödet (NBS). Den manuella hanteringen innebär risk för felaktiga uppdateringar.
...
Automatisering av beställning från NBS.
En användare skapar en beställning i NBS och skickar in.
Beställningen granskas och godkänns av behörig person inom domän- eller plattformsförvaltningen
Beställningen granskas av TAK-administratör
TAK-administratör initierar program (script) för backup och automatisk uppdatering.
Applikationen visar information om ändringar som beställningen kommer att medföra i TAK-en.
TAK-administratör bekräftar genomförande av ändringarna
Ändringarna genomförs i TAK-en.
Applikationen visar information om ändringar som genomförts.
Applikationen visar information om något i uppdateringen har gått fel. KOMPLETTERA BILD med punkt 8 och 9.
...
Komponenter i lösningen
Format på beställningsinformation
...
NTJP-PROD
NTJP-QA
NTJP-TEST
SLL-PROD
SLL-QA
LD-PROD
NMT-TEST
...
Uppdateringsscriptet:
Tar en backup på TAK-en
Bekräftar att backup genomförts OK.
Läser in JSON-datat med informationen
Flyttar över datat till en intern representation i programmet.
Jämför beställning med faktiskt innehåll i TAK-en.
Visar information till användaren vilka uppdateringar som kommer att genomföras
Låter användare avgöra (bekräfta/avbryt) om dessa skall appliceras.
Om användaren bekräftar - genomför förändringarna och genererar en log.
Ordningen på elementen/subelementen i JSON-strukturen är inte viktig. Uppdateringsscriptet ansvarar för att genomföra ändringarna i rätt turordning. Det är:
Applicera extrude-data
elementen först.
För varje vagval
Tag bort raden ur tabellen
För varje anropsbehorighet
Tag bort raden ur tabellen
För varje logiskadress
Verifiera att inget vagval eller anropsbehorighet i TAK använder den logiska adressen
Tag bort adressen
För varje tjanstekontrakt
Verifiera att inget vagval eller anropsbehorighet i TAK använder tjänstekontraktet
Tag bort tjänstekontraktet
För varje tjanstekomponent
Verifiera att inget vagval eller anropsbehorighet i TAK använder tjänstekomponenten
Tag bort tjänstekomponenten
Applicera ensure-data
elementen
Om elementet inte finns i TAK (dvs nyckelid inte finns) läggs det till
Om nyckelid finns så uppdateras övriga fält enligt beställningen om något fält inte matchar beställningen.
Om elementet redan finns sker ingen uppdatering
Återkoppling från applikationen i alla ovanstående fall
Övrigt: Returkoder skall alltid returneras. Alla förändringar loggas, inkl timestamp. Det sker ev i form av de SQL-satser som exekveras.
...