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.

Relaterad hjälp