Aktuell produkt
Inläsning till Sjuk/Rehab (pf1467) - Steg för steg - Sjuk/Rehab
Vid inläsning av fil till tabellen Sjukposter försystem, så görs kontroll på nyckelbegreppen företag, enhet, anställningsid, befattningsid och sjuk from.
Aktiviteter i detta steg
Inläsningsprogrammet hanterar två varianter:
- inläsning av fil som innehåller behandlingskod
- inläsning av fil utan behandlingskod.
Med behandlingskod (= J, i körbeställningen)
Om fil innehåller behandlingskod så görs följande för varje post i infilen:
-
Om behandlingskoden = 0 så skapas en ny post i tabellen Sjukposter försystem. Om post finns trots att behandlingskoden är lika med 0 så skapas en fellista med en felsignal. Felsignalen lyder: Behandlingskod 0 - post finns redan.
-
Om behandlingskoden = 1 så görs en uppdatering. Posten finns redan men t o m datumet och/eller omfattning och/eller timmar är ändrat och uppdateras på befintlig post i tabellenSjukposter försystem.
Om det saknas en post trots att behandlingskoden ör lika med 1 så skapas en fellista med en felsignal. Felsignalen lyder: Behandlingskod 1 - post finns ej. -
Om behandlingskoden = 9, borttag - den lästa posten tas bort.
Om posten saknas trots att behandlingskoden är lika med 9 så skapas en fellista med en felsignal. Felsignalen lyder: Behandlingskod 9 - post finns ej.
Borttag del av sjukperiod är inte tillåtet, d.v.s. om en post har markerats med behandlingskod 9 och det finns flera poster i tabellen p_sjtrns som har samma datum i fältet Dag 1 sjuk,p_sjt121 så sker inget borttag. Kvittenspost skrivs med "Borttag del av sjukperiod ej tillåtet sjukpost har ej raderats, borttag i p_sjtrns och p_sjuk måste hanteras manuellt".
Om post skulle komma i fil med behandlingskod 9 men ingen post finns i tabellen Sjukposter försystem som matchar samtliga fält ftg, enh, anstid, befid, sjuk from och sjuk tom så kan inget borttag ske. Kvittenspost skrivs med Borttag sjukperiod ej utfört, ingen matchande post i p_sjtrns. Detta kan uppstå då korrigering av sjukperiod i försystem utförts manuellt och att endast del av period har korrigerats vilket gör att det då inte finns någon matchande post i tabellen Sjukposter försystem.
Utan behandlingskod (= Blankt, i körbeställningen)
Om fil inte innehåller behandlingskod så behöver posterna i sjuk/rehabrutinen jämföras med uppgifter från infilen för att kunna avgöra om det är ny, ändring eller borttag av post. Denna hantering förutsätter att försystemet alltid levererar en totalfil d.v.s. all sjukfrånvaro för perioden - inte bara sådant som är nytt eller förändrat.
Utifrån datum angivet i körbeställningsparametrar Sjukposter ersätts fr.o.m så hämtas alla poster från p_sjtrns med samma angivna tom-datum (eller senare än detta datum) samt alla poster som saknar tom-datum till en interntabell för vidare behandling.
Poster som hämtats till en interntabell synkroniseras sedan med uppgifter från infilen. Om inget datum anges i körbeställningens fält Sjukposter ersätts fr.o.m, så används infilens inledande datum.
I filen förekommer ingen behandlingskod (fältet ska lämnas blankt. Om värde finns, så ignoreras det) så matchning behöver utföras på nyckelbegreppen företag, enhet, anstid, befid ochsjuk from. Om dubblettposter förekommer i filen från försystemet så ska dessa inledningsvis sorteras bort.
Inläsning av sjukposter
Programmet läser in poster från fil till tabellen p_sjtrns och uppdatera följande fält:
Fältid | Benämning | Nyckel/kommentarer | Typ | Längd | Decimaler |
---|---|---|---|---|---|
p_sjt001 | Sjuk from | x Från fil |
D | 8 | 0 |
p_ist002 | Sjuk tom | Från fil | D | 8 | 0 |
p_sit017 | Timmar | Från fil | N | 6 | 2 |
p_sit040 | Personnr | Fält personnr uppdateras från p11000 | A | 12 | 0 |
p_sit047 | Omfattning % | Från fil | N | 6 | 2 |
p_sit090 | Företag | x Från fil |
A | 4 | 0 |
p_sit091 | Enhet | x Från fil |
A | 2 | 0 |
p_sit092 | Anstid | x Från fil |
A | 10 | 0 |
p_sit093 | Befid | x Från fil |
A | 10 | 0 |
p_sit121 | Dag 1 sjuk |
Sätts av programmet efter inläsning. Alla poster som har ett sammanhängande datum kommer att uppdateras med den första postens from-datum. |
D | 8 | 0 |
Efter att inläsning av sjukfil till p_sjtrns har utförts och fältet Dag 1 sjuk i p_sjtrns har uppdaterats så uppdateras tabellen p_sjuk enligt följande:
- Sjuk from, p_sj001 - uppdateras från Dag 1 sjuk, p_sjt121.
- Sjuk tom, p_sj002 - uppdateras från p_sjt002, om det finns flera poster i p_sjtrns med samma datum i Dag 1 sjuk sätts den senaste postens tom-datum.
- Personnummer, p_sj040 - uppdateras från p_sjt040.
- Omfattning%, p_sj047 - uppdateras från p_sjt047, om det finns flera poster i p_sjtrns med samma datum i Dag 1 sjuk så är det den senaste postens omfattning som sätts i p_sjuk.
- Företag, p_sj090 - uppdateras från p_sjt090.
- Enhet, p_sj091 - uppdateras från p_sjt091.
- Anstid, p_sj092 - uppdateras från p_sjt092.
- Befid, p_sj093 - uppdateras från p_sjt093.