diff --git a/HMOD/hmod.sql b/HMOD/hmod.sql index 45e640d6b..2d65014c2 100644 --- a/HMOD/hmod.sql +++ b/HMOD/hmod.sql @@ -320,18 +320,123 @@ CREATE OR REPLACE VIEW hmod_v_koffersysteem_huidig ( VOLGNR, OMSCHRIJVING, - VERSIEDATUM + VERSIEDATUM, + FORMATIEPLAATS, + ORGANISATIE_CODE, + FUNCTIE_CODE, + FUNCTIE_0, -- substr uit koffersysteem_totaalomschrijving + FUNCTIE_1, -- uit prs_srtfunctie + FUNCTIE_TOT ) AS SELECT - VOLGNR, - OMSCHRIJVING_TOTAAL, - VERSIEDATUM - FROM hmod_v_koffersysteem + k.volgnr, + k.omschrijving_totaal, + k.versiedatum, + k.code, + SUBSTR (k.code, 1, INSTR (k.code, '-')-1) + organisatie_code, + SUBSTR(k.code,(instr(k.code,'-')+1),LENGTH(k.code)) + functie_code, + SUBSTR(k.omschrijving_totaal, INSTR(k.omschrijving_totaal, CHR(45))+1,(INSTR(k.omschrijving_totaal, CHR(40))-2)-(INSTR(k.omschrijving_totaal, CHR(45)))) + functie_0, + f.functie + functie_1, + SUBSTR(k.code,(instr(k.code,CHR(45))+1),LENGTH(k.code)) || ' - ' || + SUBSTR(k.omschrijving_totaal, INSTR(k.omschrijving_totaal, CHR(45))+1,(INSTR(k.omschrijving_totaal, CHR(40))-2)-(INSTR(k.omschrijving_totaal, CHR(45)))) + functie_tot + FROM hmod_v_koffersysteem k, + (SELECT v.functie_code, v.formatieplaats, MAX (v.functie) functie + FROM (SELECT k.prs_kenmerklink_waarde + formatieplaats, + SUBSTR (k.prs_kenmerklink_waarde, (INSTR (k.prs_kenmerklink_waarde, CHR(45)) + 1), LENGTH (k.prs_kenmerklink_waarde)) + functie_code, + sp.prs_srtperslid_omschrijving + functie + FROM prs_perslid p, prs_srtperslid sp, prs_kenmerklink k + WHERE p.prs_srtperslid_key = sp.prs_srtperslid_key + AND p.prs_perslid_key = k.prs_link_key(+) + AND k.prs_kenmerk_key = 1025) v + GROUP BY v.functie_code, v.formatieplaats ) f WHERE TO_DATE (versiedatum, 'DD-MM-YYYY') = (SELECT MAX (TO_DATE (versiedatum, 'DD-MM-YYYY')) FROM hmod_v_koffersysteem) - ORDER BY omschrijving, versiedatum DESC - ; - + AND k.code = f.formatieplaats (+) + ORDER BY omschrijving, versiedatum DESC ; + +-- KEUZELIJST VOOR KP's +CREATE OR REPLACE VIEW hmod_v_kostenplaatsen +( + KEY, + KP_NR, + OMSCHRIJVING, + OMSCHRIJVING_TOT, + KP_EINDDATUM, + KP_GROEP +) +AS + SELECT + kp.prs_kostenplaats_key, + kp.prs_kostenplaats_nr, + kp.prs_kostenplaats_omschrijving, + kp.prs_kostenplaats_omschrijving || ' (' || kp.prs_kostenplaats_nr ||')' omschrijving_tot, + prs_kostenplaats_eind, + kpg.prs_kostenplaatsgrp_oms + FROM + prs_kostenplaats kp, + prs_kostenplaatsgrp kpg + WHERE + kp.prs_kostenplaatsgrp_key = kpg.prs_kostenplaatsgrp_key + AND kpg.prs_kostenplaatsgrp_key = 2 + AND kp.prs_kostenplaats_verwijder IS NULL + AND TRUNC(SYSDATE) < COALESCE(TRUNC(prs_kostenplaats_eind),TO_DATE('31-12-2099','DD-MM-YYYY')) + ; + +-- KEUZELIJST VOOR PERSONEN +CREATE OR REPLACE VIEW hmod_v_personenlijst +( + KEY, + NAAM, + PERSONEELSNUMMER, + NAAM_TOT, + TEAMLEIDER_MT, + BEDRIJF, + DATUM_UITDIENST +) +AS + SELECT + p.prs_perslid_key, + p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam + naam, + p.prs_perslid_nr, + CASE WHEN v.teamleider_mt = 'ja' + THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ') - teamleider' + ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ')' + END naam_tot, + teamleider_mt, + b.prs_bedrijf_naam, + v.datum_uitdienst + FROM + prs_perslid p, + prs_v_afdeling a, + prs_bedrijf b, + ( + SELECT prs_perslid_key, + (select CASE WHEN max(k.prs_kenmerklink_waarde) IS NULL THEN 'nee' ELSE 'ja' END teamleider_mt + from prs_kenmerklink k where k.prs_link_key = p.prs_perslid_key and k.prs_kenmerklink_niveau = 'P' and k.prs_kenmerk_key = 1280) -- tl_mt + teamleider_mt, + (select TO_DATE(max(k.prs_kenmerklink_waarde),'DD-MM-YYYY') + from prs_kenmerklink k where k.prs_link_key = p.prs_perslid_key and k.prs_kenmerklink_niveau = 'P' and k.prs_kenmerk_key = 1100) -- datum_uitdienst + datum_uitdienst + FROM prs_perslid p) v + WHERE + p.prs_afdeling_key = a.prs_afdeling_key + AND a.prs_bedrijf_key = b.prs_bedrijf_key + AND p.prs_perslid_key = v.prs_perslid_key + AND p.prs_perslid_verwijder IS NULL + AND p.prs_perslid_nr IS NOT NULL + AND b.prs_bedrijf_key = 41 + AND TRUNC(SYSDATE) < COALESCE(TRUNC(v.datum_uitdienst),TO_DATE('31-12-2099','DD-MM-YYYY')) + ; + CREATE OR REPLACE VIEW hmod_v_koffersysteem_actueel AS SELECT *