Kravspecifikation EB50. Engångsbatch för att skapa kurstillfällen för avvikande FOterminer

Relevanta dokument
Funktionsbeskrivning EB50. Engångsbatch för att skapa kurstillfällen för avvikande FOterminer

Funktionsbeskrivning EB48 Engångsbatch för att skapa kurstillfällen

Funktionsbeskrivning EB47 Engångsbatch för att skapa kurstillfällen för kurser inom program med terminsregistrering

Funktionsbeskrivning EB45 Engångsbatch för att skapa saknade förstagångsregistreringar

Kravspecifikation. RG01 - Registrering en person Tillåta omregistrering före fortsättningsregistrering

Kravspec EB56 Exportfiler till polishögskolan

Tjänstespecifikation T04

Kravspecifikation Hur man söker fram poängbidrag för en given kursregistrering

OBS: Vänta med att köra EB50 skarpt tills ni har kört EB47 och EB48 för samtliga terminer!

Funktionsbeskrivning EB53 Redovisar reserver som blivit antagna och återbud

Kravspecifikation RG02 Kursregistrering - Flera personer

Kravspecifikation EB53 Redovisar reserver som blivit antagna och återbud

Kravspecifikation RG01 Registrering - en person

Kravspecifikation för överföring av katalogdata mellan Ladok och CSN

Handbok för registervård. - Del 4

Kravspecifikation. Funktion UX03, Kohortuppföljning. (Batch)

Uppläggning av ÅR-databas, UB50

Ladok. Funktionsbeskrivning. för RV16 - Ändring av registreringsuppgifter - kurs Version: Beteckning:

Kravspecifikation RG10 Avbrott på kurs

Kravspecifikation för RV16 Ändring av registreringsuppgifter - kurs

Handbok för registervård. - Del 6

Detaljerad beskrivning av kravlista för KA81

Kravspecifikation. Uppdatering RG_UPPDAT (RG01, RG02, RG03)

Kravspec UB52. UB52 HST utan resultat. Ändringshistorik Beteckning: Datum Av Kommentar Godkännare PerLindgren Leverans

Projekt STU T 4102 Samordning med NyA har genomfört en ändring i SB02 som förbättrar logghanteringen och minskar storleken på fellistorna.

Kravspecifikation. UB60 - Registreringsverifikat. Batchkörning. Webbadress /UPP T-02 Registreringsverifikat/krav

Handbok för registervård. - Del 5

Funktionsbeskrivning

Handbok för registervård. - Del 7

Handbok för registervård. - Del 10

Funktionsbeskrivning

REGISTRERING LADOK NOUVEAU

Engångsprogram EB21 Projekt STU T-8108

Kravspecifikation SA07 Antagen- utresande på utbytesprogram

Kravspecifikation. UB30 - Överföring av uppgifter till SCB. Batchkörning av UB30. Studok. Projekt Beteckning: Status:

Funktionsbeskrivning

Kravspecifikation. Överföring av uppgifter till CSN Bologna-anpassningar. Anpassningar av Ladok till ny utbildningsstruktur STU 2007:T

Lathund, skapa kurstillfällen för Ladok via UtbildningsGubas

Handbok för registervård. - Del 9

Funktionsbeskrivning

Handbok för registervård. - Del 8

Kravspec EB23 Konvertera katalogtabeller examen

Kravspecifikation. UT32 - Registrerade på kurs/inst Sökning på avbrott. Version 1.00

Kravspec UB40 Antal sökande, antagna och registrerade

Handbok för registervård. - Del 15

Kravspec UB70. UB70 Migrationsverket. Ändringshistorik Beteckning:

Kravspec EB19-KAGRPSCB.KURS

Ladok. Registrering. RG01 Registrering en person 2. RG02 Registrering flera personer 4. RG10 Avbrott på kurs 9

Funktionsbeskrivning KA16 Kurser och prov - indata

Handbok för registervård. - Del 21

Kravspec EB26 Behandling av DKLASS

Funktionsbeskrivning

Klicka på länken Funktionsbeskrivningar driftsatt leverans (total lista samt flik för senaste ändringarna)

Handbok för registervård. - Del 17

Kravspec EB24 Konvertera persontabeller examen

Kravspecifikation Service Skapa betalningsunderlag

Kontrollpaket check_utbtillf_avgift

Manual för läsårsplanering i Kopps

Funktionsbeskrivning SY02 Användare -indata

KRAVSPECIFIKATION. INAMN01 Indexformulär Sök person

Ladok. Funktionsbeskrivning. för RG02 Kursregistrering - flera personer Beteckning: RG02_funkbeskr

UB03 Körloggsstatistik

Handbok för registervård. - Del 1

Kravspec EB36 Examen 5tkn inriktning 4tkn

Funktionsbeskrivning

Handbok för registervård. - Del 16

Funktionsbeskrivning

Funktionsbeskrivning SB05 Skapa behörighet till avancerad nivå

Studentcentrum, Ladok Version 1.0, REGISTRERING I LADOK. Avser utbildning på grund- och avancerad nivå

Funktionsbeskrivning

Kravspecifikation UB01 Massutsökning

Kravspecifikation KA13 Anmälningsalternativ, Kurs

Navigera bättre och filtrera rapporteringslistor

Handbok för registervård. - Del 12

Kravspecifikation för överföring av meritdata mellan Ladok och CSN

SA33 - Val av kurser inom program m terminsreg

Kravlista för Ladok annan utbildning

KURSINFO. Kurstillfälle inom program. Versionsförteckning. Datum Version Beskrivning Författare Första utkast Anngreth Johansson

Utdata för grupper av studenter i Ladok Nouveau

Kravspecifikation RV15

Funktionsbeskrivning. SB10 Adressuppdatering. Innehållsförteckning

Handbok för registervård. - Del 23

MANUAL VU omgångar i KOPPS

KA21-Programplaner - utdata

KA25 Programtillfällen - indata

Lathund: kurstillfällesbyte Innevarande version vid senaste uppdatering: 1.6.0

Funktionsbeskrivning

Grupper. SA10 Grupphantering

Umeå Universitet Studentcentrum Ladokgruppen. Manual nya Ladok. Rapportera resultat

Tjänstespecifikation T25

Ladok. Funktionsbeskrivning. RS81 Resultatrapportering på hel kurs Version: Beteckning:

Kravspecifikation RS92 Uppnådd andel, forskarnivå

Ladok. Funktionsbeskrivning. för KA11 Kurser och prov - utdata. (ny funktion 2005) Beteckning:

Handhavandeguide: Helårsstudenter (HST) Innevarande version vid senaste uppdatering:

Manual för läsårsplaneringsverktyget i Kopps.

Funktionsbeskrivning. - SA06- Etablering och antagning av utbytesstudenter

Hantering av moduler (delkurser/prov)

Funktionsbeskrivning

Studiedeltagande * övar vi på idag

Funktionsbeskrivning

Transkript:

Engångsbatch för att skapa kurstillfällen för avvikande FOterminer 2016-08-19

David Andersson 2016-08-19 2 (15) Ändringshistorik Datum Av Kommentar Godkänd av 2015-02-20 David Andersson Första versionen - 2015-03-19 David Andersson Tillägg för avbrott på fortsättningstermin 2015-11-11 Anna-Carin Wiklund LADOK-20295. Utökar intervallet på kursomgång från 1-9 till 1-9, A-Ö, 0 så att fler tillfällen kan skapas upp. 2016-04-12 PerLindgren EB50 uppdaterar inte LOKHST och poängfördelning mellan utbildningsområden och institutioner https://jira.its.umu.se/browse/ladok-20500 2016-04-12 PerLindgren EB50 skapar ofullständiga kurstillfällen https://jira.its.umu.se/browse/ladok-20539 2016-08-19 Thom Jönsson EB50 skapar i vissa fall flera poster i KTILL2 för samma kalendertermin. https://jira.its.umu.se/browse/ladok-20722

David Andersson 2016-08-19 3 (15) Innehållsförteckning 1 INLEDNING... 4 1.1 SYFTE... 4 1.2 BAKGRUND... 4 1.3 BESKRIVNING... 5 1.4 PARAMETRAR... 5 1.4.1 Obligatoriska parametrar... 5 2 KRAV... 6 2.1 FLÖDE... 9 3 RESULTATLISTA...12 3.1 SAMMANFATTNING AV KÖRNINGEN...12 3.2 FELMEDDELANDE...12 3.2.1 Om anmälningskoden uppnår högsta tillåtna värde...13 3.3 VARNINGSMEDDELANDEN...13 3.4 DETALJRADER...13 4 KRAVFÖRTECKNING...15

David Andersson 2016-08-19 4 (15) 1 Inledning 1.1 Syfte Engångsbatchen EB50 har som uppgift att förbereda ladok-databasen inför konverteringen av data till Ladok3. Batchen utgår ifrån studenters kursregistreringar på kurser som sträcker sig över två eller fler terminer och skapar nya kurstillfällen i de fall där sådana saknas. 1.2 Bakgrund I Ladok är det i dag möjligt att lägga in fortsättningsregistreringar som inte stämmer överens med kurstillfället. FO-terminen kan ligga på en senare kalendertermin. Detta kan man göra i delfunktionen RG01_F, FO-reg på kurs. Ladok3 och informationskonverteraren kan inte hantera sådana fortsättningsregistreringar på ett korrekt sätt. Vi behöver därför en engångsbatch som skapar kurstillfällen som stämmer överens med den faktiska fördelningen av FO-registreringarna på kalenderterminerna. Dessa kurstillfällen måste få ett nytt värde för kursomgång, något som medför att posten i FFGKURS måste uppdateras med detta värde Till skillnad mot andra engångsbatchar ska i detta fall de ordinarie kurstillfällestabellerna KTILL2 och KTFORT2 uppdateras eftersom även FFGKURS uppdateras. På detta sätt säkerställer man att årsredovisningen i UB50 fungerar utan problem. Om det sedan tidigare finns något i KTILLHST som motsvarar det kurstillfälle i KTILL2/KTFORT2 som används som mall ska även KTILLHST uppdateras. Batchen kan på detta sätt även ta hand om kurstillfällen som inte kunnat skapas av EB47 eller EB48. Det förekommer dessutom ofta att en kurs som startar en viss kalendertermin har olika fördelning mellan terminer inom olika program. I ett visst program kan hela kursen läsas första terminen, i ett annat program är kursen fördelad på två terminer. KTILLP kan lagra dessa alternativ utan problem. Men när KTILL3 ska uppdateras kommer bara en post med, troligen för det program vars kod kommer först i alfabetet. Resultatet blir en fellista i resultatfilen från EB47 med alla FO-poster för termin 2 inom det andra programmet. EB50 måste hantera även dessa fall.

David Andersson 2016-08-19 5 (15) 1.3 Beskrivning Batchen ska kunna köras både i inspektionsläge och i uppdateringsläge enligt standard för engångsbatchar. Programmet läser i första hand tabellerna FFGKURS och FORTKURS/INREGFO. Utifrån dessa tabeller skapas kurstillfällen som saknas i KTILL2 och KTFORT2 och dessutom uppdateras FFGKURS med motsvarande nya omgång. Om möjligt används mall från antingen KTILL2/KTFORT2 eller KTILLP vid skapandet av det nya kurstillfället. En kontrollista skrivs ut med de poster som skapas. Egenskaper hos EB50 Inspektionsläge eller uppdateringsläge kan väljas. Batchen går att köra mer än en gång. Efter körningen skapas en resultatfil med sammanfattning och detaljer om körningen. En sammanfattning skickas även via mail till beställaren. 1.4 Parametrar I RB70 anges EB50 som engångsprogram. 1.4.1 Obligatoriska parametrar UPPDATERA måste anges för att bestämma om batchen skall köras i Inspektionsläge eller Uppdateringsläge. Anges UPPDATERA=N kommer ingen uppdatering att genomföras. Inspektionsläge. Anges UPPDATERA=J sker uppdatering. Uppdateringsläge. INLEDANDETECKEN bestämmer det första tecknet i de anmälningskoder som används för nya kurstillfällen som skapas av batchen. Det är en stark rekommendation att välja ett tecken som inte används i KTILL2/KTILL3 sedan tidigare för att kunna särskilja de poster som skapats av just EB50.

David Andersson 2016-08-19 6 (15) Exempel: INLEDANDETECKEN=A innebär att nya kurstillfällen får anmälningskoderna A0001, A0002, A0003 o.s.v. 2 Krav R1 Utsökning Programmet läser tabellen FFGKURS och kontrollerar om det för visst personnummer och kurs även finns en eller flera poster i FORTKURS och/eller INREGFO. Programmet kontrollerar sedan för varje post om det redan finns ett kurstillfälle i KTILL2 eller KTILL3 med samma FFG- och FO-terminer på rätt kalendertermin. Finns det inget sådant kurstillfälle skapar programmet ett nytt tillfälle för samtliga i registreringarna ingående terminer i KTILL2 och KTILL3. Det skapade kurstillfället ges en ny kursomgång och FFGKURS-posten kommer att uppdateras med denna. R2 Bearbetning Nya KTILL2-poster skapas på följande sätt: KURSKOD, STARTTER, KURSTAKT, KURSTID, UNDFORM, ORT och KURSTYP hämtas från FFGKURS-posten som behandlas. FFGPOANG hämtas från (i prioriteringsordning) 1. FFGPOANG på det kurstillfälle i KTILL2 som stämmer med personens registrering. 2. POANG på det kurstillfälle i KTILLP som stämmer med personens registrering. Läs KTILLP med: KURS = FFGKURS.KURS STARTTER = FFGKURS.TERMIN PROGR = FFGKURS.PROGR PROGINR = FFGKURS.PROGINR TERMORDK = 1 3. POANG på den kurs som stämmer med personens registrering fördelat på samtliga ingående terminer. Om kurstakten inte är 100% anpassas detta poängvärde till kurstakten i KTILL2. Vid kurstakt 50% blir det högsta tillåtna värdet 15 hp. Kurstakt 0% fördelas alltid till 0 hp. Läs KURS med: FFGKURS.KURS KURSOMG sätts till 2 eller närmaste lediga nummer/tecken(2-9,a-ö,0) som inte finns i 1. KTILL2 med samma nycklar (gäller även poster som EB50 själv skapat). 2. KTILL3 med samma nycklar. 3. den FFGKURS-post som behandlas.

David Andersson 2016-08-19 7 (15) KOD sätts automatisk med inledande tecken som angivits i beställningen, övriga fyra tecken med löpnummer 0001 etc. Koden får inte finnas i KTILL2 eller KTILL3 för samma starttermin.

David Andersson 2016-08-19 8 (15) Nya KTFORT2-poster skapas på följande sätt: KURSKOD, STARTTER, KURSTAKT, KURSTID, UNDFORM, ORT, KURSOMG, KURSTYP och KOD hämtas från den KTILL2-post som skapas (se ovan). TERMORDN hämtas från TERMORDN i den FORTKURS/INREGFO-post som behandlas. (om en INREGFO-post har samma terminsordning som en FORTKURS-post, kommer endast FORTKURS-posten att användas) FORPOANG hämtas från (i prioriteringsordning) 1. FORPOANG på det kurstillfälle i KTFORT2 som stämmer med personens registrering/avbrott. (Detta görs endast om FFGPOANG kunde hittas i KTILL2 (se ovan)). Observera också att man här måste utgå ifrån startterminen för FFG-registreringen i KTILL2 eftersom FO-terminen förmodligen avviker från KTFORT2 2. POANG från det tillfälle i KTILLP som matchar personens registrering/avbrott. Läs KTILLP med: KURS = FFGKURS.KURS STARTTER = FFGKURS.TERMIN PROGR = FFGKURS.PROGR PROGINR = FFGKURS.PROGINR TERMORDK = FORTKURS.TERMORDN/INREGFO.TERMORDN 3. POANG på den kurs som stämmer med personens registrering/avbrott fördelad på samma sätt som för KTILL2-posten. Läs KURS med: FFGKURS.KURS TERMIN hämtas från TERMIN i FORTKURS/INREGFO. Generellt för KTILL2/KTFORT2: STARTV och SLUTV hämtas från TERMIN. LOK1/LOK2 sätts till de värden som finns i det original(ktill2/ktfort2/ktillp) som använts som mall för det nya kurstillfället. Om mall saknas blir det null AVGFRI = N om termin >= 20112 annars = J(gäller bara KTILL2) DEP1, DEP2, PLANTAL, ANTALORD, ANTALRES, VALUTA, KONVERT sätts till null/blank FFGKURS-posten uppdateras med samma värde för OMGANG som KTILL2 och KTFORT2 uppdaterats med (se ovan). IDATUM, ITID och IANV=EB50 uppdateras också. Om det sedan tidigare finns något i KTILLHST som motsvarar det kurstillfälle i KTILL2/KTFORT2 som används som mall ska även KTILLHST uppdateras.

David Andersson 2016-08-19 9 (15) R3 Rapportera de poster som skapas/uppdateras En kontrollista skrivs ut med de poster som skapas i KTILL2 och KTFORT2. Även de poster som uppdaterats i FFGKURS skrivs ut i kontrollistan. R4 Rapportera registreringar som inte kan behandlas Följande fall resulterar i fellista utan att vidare behandling görs: Terminer som har samtliga anmälningskoder upptagna för givet inledande tecken listas med information om att batchen bör köras igen med annat inledande tecken för att ta om hand dessa terminer. FFG-/FO-terminer som kommer i ologisk ordning behandlas inte. Exempelvis: o En FO-termin ligger samtidigt eller före FFG-terminen i tid. o En FO-termin med högre terminsordning än en annan FO-termin har en lägre termin än densamma. o Två FO-poster har olika terminsordning men samma termin. Poster i FFGKURS som saknar något av de värden som används som nyckel i KTILL2 läggs på fellistan utan att behandlas vidare. Om poängen som hämtas från KURS är för stor (efter att ha fördelats på samtliga terminer) kan KTILL2/KTFORT2-poster inte skapas och hamnar istället på fellistan (KURS.POANG rymmer fler tecken än KTILL2.FFGPOANG). Om samtliga KTILL2.KURSOMG (1-9, A-Ö, 0) är upptagna kan inga ytterligare kurstillfällen med samma nycklar skapas. Dessa hamnar då istället på fellistan. Om KURS.POANG av någon anledning inte går att tolka, t ex för att kursen saknas eller POANG-fältet inte innehåller siffror, läggs FFG-posten på fellistan. Dessutom ges varningar för följande fall. Dessa kommer dock ändå att resultera i nya kurstillfällen: 2.1 Flöde Om den fördelade poängen överstiger 30 hp per termin (anpassat efter kurstakt). Vid kopiering av LOK-värden från höst till vår eller från vår till höst. Listningen är uppdelad på om mall från KTILL2/KTFORT2 eller KTILLP använts. Om poängsumman för en post i KTILL2 och tillhörande poster i KTFORT2 inte överensstämmer med poäng i KURS. Läs hela FFGKURS o Läs FORTKURS FORTKURS.PNR= FFGKURS.PNR FORTKURS.KURS = FFGKURS.KURS Order by PNR, KURS, TERMORDN o Läs INREGFO INREGFO.PNR= FFGKURS.PNR INREGFO.KURS = FFGKURS.KURS

David Andersson 2016-08-19 10 (15) Order by PNR, KURS, TERMORDN o Om bom i FORTKURS och INREGFO Läs nästa FFGKURS o Om träff i FORTKURS och eller INREGFO (kan vara flera) Läs mot kurstillfällestabellerna och kolla om det finns en komplett uppsättning som svarar mot registreringarna/avbrotten. Finns det inte en komplett sådan är detta ett fall för EB50. Kontroll måste göras både mot KTILL2/KTFORT2 o KTILL3/KTFORT3. KTILL2/3.KURSKOD = FFGKURS.KURS KTILL2/3.STARTTER = FFGKURS.TERMIN KTILL2/3. KURSTAKT= FFGKURS.KURSTAKT KTILL2/3.UNDFORM = FFGKURS.UNDFORM KTILL2/3.KURSTID = FFGKURS.KURSTID KTILL2/3.ORT = FFGKURS.ORT KTILL2/3. KURSTYP= FFGKURS.KURSTYP KTILL2/3.KURSOMG = FFGKURS.OMGANG KTFORT2/3.KURSKOD = FFGKURS.KURS KTFORT2/3.STARTTER = FFGKURS.TERMIN KTFORT2/3.TERMORDN = FORTKURS/INREGFO.TERMORDN KTFORT2/3.TERMIN=FORTKURS/INREGFO.TERMIN KTFORT2/3. KURSTAKT= FFGKURS.KURSTAKT KTFORT2/3.UNDFORM = FFGKURS.UNDFORM KTFORT2/3.KURSTID = FFGKURS.KURSTID KTFORT2/3.ORT = FFGKURS.ORT KTFORT2/3. KURSTYP= FFGKURS.KURSTYP KTFORT2/3.KURSOMG = FFGKURS.OMGANG o Får vi träff på alla ingående FFGKURS och FORTKURS/INREGFO är detta fall redan fixat. Läs nästa FFGKURS. o Har vi kommit så här långt finns det glapp någonstans på PNR/KURS och tillfällen ska skapas i KTILL2/KTFORT2 och personens FFGKURS.OMGANG ska uppdateras med den KURSOMG som används till de KTILL2/KTFORT2 som vi skapar här. o I de fall där det finns poster i både FORTKURS och INREGFO där samtliga nycklar matchar (PNR, KURS och TERMORDN) kommer INREGFO-posten att ignoreras och KTFORT2-posten att skapas utifrån data i FORTKURS-posten. o Skriv KTILL2/KTFORT2 utifrån parametrarna i FFGKURS. Observera att det redan kan finnas tillfällen som är skapade tidigare under pågående körning som är exakt lika med den vi behandlar nu och det kan finnas de som har delvis likadan uppsättning. Det behövs alltså kontroller för att allt ska bli korrekt.

David Andersson 2016-08-19 11 (15) o Börja med att ta reda på om det finns något inlagt tidigare under körningen som stämmer exakt med våra FFGKURS och FORTKURS/INREGFO. Här kan det vara så att det finns mer än en uppsättning, så vi måste läsa tills vi får en exakt match på hela uppsättningen eller inget mer att läsa in. KTILL2.KURSKOD = FFGKURS.KURS KTILL2.STARTTER = FFGKURS.TERMIN KTILL2. KURSTAKT= FFGKURS.KURSTAKT KTILL2.UNDFORM = FFGKURS.UNDFORM KTILL2.KURSTID = FFGKURS.KURSTID KTILL2.ORT = FFGKURS.ORT KTILL2. KURSTYP= FFGKURS.KURSTYP KTFORT2.KURSKOD = FFGKURS.KURS KTFORT2.STARTTER = FFGKURS.TERMIN KTFORT2.TERMORDN = FORTKURS/INREGFO.TERMORDN KTFORT2.TERMIN=FORTKURS/INREGFO.TERMIN KTFORT2. KURSTAKT= FFGKURS.KURSTAKT KTFORT2.UNDFORM = FFGKURS.UNDFORM KTFORT2.KURSTID = FFGKURS.KURSTID KTFORT2.ORT = FFGKURS.ORT KTFORT2. KURSTYP= FFGKURS.KURSTYP o Får vi exakta träffar på hela kedjan av FFGKURS och FORTKURS/INREGFO behöver vi inte skriva KTILL2/KTFORT2. Däremot ska FFGKURS.OMGANG uppdateras med inläst KTILL2.KURSOMG. o Om det inte blir exakta träffar ska vi skriva KTILL2/KTFORT2 och uppdatera FFGKURS.OMGANG. Hitta en ledig KTILL2.KURSOMG m h a parametrarna från FFGKURS, plussa OMGANG, läs KTILL2 tills första bom, då har vi hittat omgången som ska användas. Kolla även mot KTILL3 för att vara 100% säker. KTILL2/3.KURSKOD = FFGKURS.KURS KTILL2/3.STARTTER = FFGKURS.TERMIN KTILL2/3. KURSTAKT= FFGKURS.KURSTAKT KTILL2/3.UNDFORM = FFGKURS.UNDFORM KTILL2/3.KURSTID = FFGKURS.KURSTID KTILL2/3.ORT = FFGKURS.ORT KTILL2/3. KURSTYP= FFGKURS.KURSTYP KTILL2/3.KURSOMG > 0 och <> FFGKURS.OMGANG KURSOMG är enställig, slår vi i taket skriv på fellistan och ingen uppdatering Hittas ledig omgång kan vi skriva KTILL2/KTFORT2 och uppdatera FFGKURS.OMGANG.

David Andersson 2016-08-19 12 (15) 3 Resultatlista En lista skapas som redovisar resultatet av körningen. Överst i resultatlistan visas en sammanfattning av körningen inklusive eventuella fel som har hittats. Under sammanfattningen i resultatlistan visas mer utförlig information om eventuella fel, samt de kurstillfällen som har skapats under körningen. För att underlätta sökning i resultatfiler med många rader matchas varje summeringsrad i sammanfattningen med tillhörande detaljrubrik genom en gemensam siffra till vänster om raderna. 3.1 Sammanfattning av körningen En sammanfattning skrivs både i mailet till beställaren och överst i resultatlistan. Exempel på sammanfattning i inspektionsläge: (1) Antal poster som kommer att läggas in i tabellen KTILL2 vid skarp körning: 659. (2) Antal poster som kommer att läggas in i tabellen KTFORT2 vid skarp körning: 876. (3) Antal poster som kommer att uppdateras med ny OMGANG in i tabellen FFGKURS vid skarp körning: 13724. (4) Antal poster som kommer att läggas in med ny kursomgång i tabellen KTILLHST: 71. Exempel på sammanfattning i uppdateringsläge: (1) Antal poster som har lagts in i tabellen KTILL2: 659. (2) Antal poster som har lagts in i tabellen KTFORT2: 876. (3) Antal poster som har uppdaterats med ny OMGANG in i tabellen FFGKURS: 13724. (4) Antal poster som har lagts in med ny kursomgång i tabellen KTILLHST: 71. 3.2 Felmeddelande Felmeddelanden genereras i resultatlistan enligt krav R4 ovan. Felen kommer ut med både summering och detaljer precis som de övriga resultaten. Exempel på felmeddelande i summeringen: (5) Antal FFGKURS-poster som inte behandlas för att det saknas kurstillfällesparametrar för att skapa upp en KTILL2-post: 17. (6) Antal poster som inte kan behandlas på grund av att ingen ledig kursomgång finns: 10.

David Andersson 2016-08-19 13 (15) 3.2.1 Om anmälningskoden uppnår högsta tillåtna värde Om värdet som följer det inledande tecknet uppnår 9999 en viss termin kommer inga ytterligare kurstillfällen att skapas på denna termin under pågående batchkörning. Körningen kommer istället att gå vidare med nästa termin och vid avslut ge följande meddelande överst i resultatlistan: (1) Varning! Högsta tillåtna värde för anmälningskod i KTILL2 har uppnåtts för valt INLEDANDETECKEN. Antal terminer som inte avslutats: 2 Välj nytt INLEDANDETECKEN och kör EB50 igen för att skapa återstående kurstillfällen. De kurstillfällen som redan har skapats under körningen kommer att behandlas som om batchen slutförts normalt, d.v.s. de kommer att läggas in i KTILL2 och KTFORT2 om batchen körts i Uppdateringsläge. 3.3 Varningsmeddelanden Som nämnt under kravstycket finns det ett fall som kan inträffa som resulterar i att kurstillfälle skapas men med varningsmeddelande. Om de fördelade poängen överskrider maxpoäng per termin (30 hp för 100% kurstakt). Dessa uppgifter kommer även de ut med både summering och detaljrader. Exempel på varningsmeddelande i summeringen: (6) Antal nya kurstillfällen som har poängfördelning som överstiger 30 hp per termin på 100%: 322 (7) Antal nya kurstillfällen där höst/vår inte stämmer med original-kurstillfället: 227 (8) Antal nya kurstillfällen där höst/vår inte stämmer med original-ktillp: 96 3.4 Detaljrader Under sammanfattningen visas detaljer om de poster som har skapats och lagts in i KTILL2 och KTFORT2, uppdaterats i FFGKURS, eventuella fel som medfört att poster inte kunnat behandlas samt eventuella varningar gällande poäng/kurstakt. Samtliga listor sorteras stigande på termin och kurs (och i förekommande fall även personnummer) Exempel på detaljrader i inspektionsläge: (1) Nedanstående poster skulle ha lagts in i KTILL2 vid skarp körning. KURSKOD;STARTTER;KURSTAKT;KURSTID;UNDFORM;ORT;KURSOMG;KURSTYP;FFGPOANG;KOD;STARTV;SLUTV;L OK1;LOK2;PLANTAL;ANTALORD;ANTALRES;VALUTA;KONVERT;AVGFRI; XSH221;19761;100;DAG;NML;1281;2; _;15.0;Q0002;;;;;;;;;;; XSL037;19761;100;DAG;NML;1281;2; _;7.5;Q0003;;;;;;;;;;; : (2) Nedanstående poster skulle ha lagts in i KTFORT2 vid skarp körning. KURSKOD;STARTTER;KURSTAKT;KURSTID;UNDFORM;ORT;KURSOMG;KURSTYP;TERMORDN;FORPOANG;KOD;TERMI N;STARTV;SLUTV;LOK1;LOK2;VALUTA;KONVERT; XSH221;19761;100;DAG;NML;1281;2; _; 2;15.0;Q0002;19762;;;;;;;;;;; XSL037;19761;100;DAG;NML;1281;2; _; 2;7.5;Q0003;19781;;;;;;;;;;; :

David Andersson 2016-08-19 14 (15) (3) Nedanstående poster skulle ha uppdaterats med ny OMGANG i FFGKURS vid skarp körning. PNR;KURS;PROGR;PROGINR;TERMIN;KURSTAKT;KURSTID;UNDFORM;ORT;OMGANG;KURSTYP;IDATUM;ITID;IAN V;VERNR; 4003120000;XSH221;; _;19761;100;DAG;NML;1281;2; _;2015-02-23;104150;EB50;null; 4510240000;XSL037;; _;19761;100;DAG;NML;1281;2; _;2015-02-23;104150;EB50;null; : Exempel på detaljrader vid fel: (4) Nedanstående poster har inte kunnat behandlas på grund av oordnade terminer och/eller terminsordningar. FFGKURS: pnr='5409040000', kurs='xfs001', progr='', proginr=' _', termin='19781', kurstakt='100', kurstid='dag', undform='nml', ort='1281', omgang='1', kurstyp=' _', idatum='null', itid='null', ianv='null', vernr='null' FORTKURS: pnr='5409040000', kurs='xfs001', termordn=' 2', termin='19782' FORTKURS: pnr='5409040000', kurs='xfs001', termordn=' 3', termin='19782' : (5) Nedanstående poster har inte kunnat behandlas för att det saknas kurstillfällesparametrar för att skapa upp en KTILL2-post: FFGKURS: pnr='6903270000', kurs='timie2', progr='tmail', proginr=' _', termin='19892', kurstakt='100', kurstid='', undform='nml', ort='0680', omgang='1', kurstyp=' _', idatum='null', itid='null', ianv='null', vernr='null' : Exempel på detaljrader vid varningar: (7) Nedanstående nya kurstillfällen har poäng i förhållande till kurstakt som överskrider maximalt tillåten poäng per termin KTILL2: kurskod='log001', startter='19771', kurstakt='100', kurstid='dag', undform='nml', ort='1281', kursomg='2', kurstyp=' _', ffgpoang='45.0', kod='q0001', startv='', slutv='' :

David Andersson 2016-08-19 15 (15) 4 Kravförteckning R1 UTSÖKNING... 6 R2 BEARBETNING... 6 R3 RAPPORTERA DE POSTER SOM SKAPAS/UPPDATERAS... 9 R4 RAPPORTERA REGISTRERINGAR SOM INTE KAN BEHANDLAS... 9