GOKO#77447 -- IT-Objectenbeheer herziening ivm sim-kaarten

svn path=/Customer/trunk/; revision=59788
This commit is contained in:
Jos Migo
2023-03-29 07:25:57 +00:00
parent a90ad87d0b
commit 2ebff18a62

View File

@@ -225,60 +225,6 @@ AS
ORDER BY kpg.prs_kostenplaatsgrp_oms || ' - ' || kp.prs_kostenplaats_nr || ' ' || kp.prs_kostenplaats_omschrijving
;
CREATE OR REPLACE VIEW goko_v_it_nummers
(
INS_DEEL_KEY,
INS_DEEL_UPPER
)
AS
SELECT
v.ins_deel_key,
v.ins_deel_upper
FROM ins_v_deel_gegevens v, ins_deel d
WHERE v.ins_discipline_key = 84 -- IT-Nummers
AND v.ins_deel_key = d.ins_deel_key
AND d.ins_deel_verwijder IS NULL
AND (d.ins_deel_vervaldatum IS NULL OR TRUNC(d.ins_deel_vervaldatum) > TRUNC(sysdate) ) ;
CREATE OR REPLACE VIEW goko_v_it_nummers_man
(
ICT_NUMMER,
STATUS,
ICT_OBJECT,
NR_INS_DEEL_KEY
)
AS
SELECT
nr.ins_deel_upper,
CASE WHEN d.ins_deel_upper IS NOT NULL THEN 'Gekoppeld' ELSE 'Vrij' END
status,
d.ins_deel_upper,
nr.ins_deel_key
FROM (SELECT v.ins_deel_key,
v.ins_deel_upper
FROM ins_v_deel_gegevens v, ins_deel d
WHERE v.ins_discipline_key = 84 -- IT-Nummers
AND v.ins_deel_key = d.ins_deel_key
AND d.ins_deel_verwijder IS NULL
AND (d.ins_deel_vervaldatum IS NULL OR TRUNC(d.ins_deel_vervaldatum) > TRUNC(sysdate) ) ) nr,
(SELECT d.ins_deel_key,
d.ins_deel_upper,
kw.ins_kenmerkdeel_waarde,
num.ins_deel_upper as nummer_gekoppeld
FROM ins_deel d,
ins_kenmerkdeel kw,
ins_kenmerk k,
ins_deel num
WHERE d.ins_deel_key = kw.ins_deel_key
AND kw.ins_kenmerk_key = k.ins_kenmerk_key
AND k.ins_srtkenmerk_key = 22 -- kenmerksoort domeinview SIM-kaart
AND kw.ins_kenmerkdeel_verwijder IS NULL
AND fac.safe_to_number (kw.ins_kenmerkdeel_waarde) =
num.ins_deel_key) d
WHERE
nr.ins_deel_upper = d.nummer_gekoppeld(+) ;
-- Lijst van Locatieleiders (tbv domeinview)
CREATE OR REPLACE VIEW goko_v_personenlijst_leider
(
@@ -577,6 +523,16 @@ AS
WHERE p.prs_perslid_nr = i.prs_perslid_nr
AND p.prs_perslid_verwijder IS NULL);
CURSOR c_afd
IS
SELECT fac_imp_file_index,
prs_afdeling_naam,
prs_kenmerk5,
prs_srtperslid_omschrijving
FROM fac_imp_perslid
WHERE fac_import_key = p_import_key
ORDER BY 1;
CURSOR c_login
IS
SELECT fac_imp_file_index, p.prs_perslid_key, p.prs_perslid_oslogin
@@ -587,20 +543,13 @@ AS
AND p.prs_perslid_oslogin IS NOT NULL
ORDER BY 1;
CURSOR c_afd
IS
SELECT fac_imp_file_index,
prs_afdeling_naam,
prs_kenmerk5,
prs_srtperslid_omschrijving
FROM fac_imp_perslid
WHERE fac_import_key = p_import_key;
CURSOR c_loc
IS
SELECT fac_imp_file_index, prs_kenmerk5
FROM fac_imp_perslid
WHERE fac_import_key = p_import_key;
WHERE fac_import_key = p_import_key
ORDER BY 1;
BEGIN
-- Het aangeleverde bestand heeft de gegevens komma gescheiden ipv ;
v_errorhint := 'Delimiter goed zetten';
@@ -682,44 +631,6 @@ BEGIN
END;
END LOOP;
FOR rec IN c_login
LOOP
BEGIN
v_errorhint := 'Bestaande OSLOGIN uit Facilitor handhaven';
UPDATE fac_imp_perslid
SET prs_perslid_oslogin = rec.prs_perslid_oslogin
WHERE fac_imp_file_index = rec.fac_imp_file_index;
END;
END LOOP;
v_errorhint := 'Login afleiden van emailadres (voor locatieleiders en kantoorpersoneel) indien nog geen login aanwezig';
-- Voor de locatieleiders en kantoorpersoneel de oslogin vullen in geval nog niet gevuld in Facilitor (vanuit vorige cursor)
UPDATE fac_imp_perslid
SET prs_perslid_oslogin =
UPPER (
(SUBSTR (prs_perslid_email,
0,
INSTR (prs_perslid_email, '@') - 1)))
WHERE UPPER (prs_perslid_email) LIKE '%GO-KINDEROPVANG.NL'
AND prs_perslid_email IS NOT NULL
AND ( UPPER (prs_srtperslid_omschrijving) = 'LOCATIELEIDER'
OR prs_afdeling_naam IN
(SELECT a.prs_afdeling_upper
FROM prs_v_afdeling_boom ab, prs_afdeling a
WHERE a.prs_afdeling_key = ab.prs_afdeling_key
AND a.prs_afdeling_verwijder IS NULL
AND ab.prs_afdeling_key1 = 281
AND ab.niveau NOT IN ('1') -- Alles onder ORG-1 van KCC
))
AND prs_perslid_oslogin IS NULL
AND LENGTH (
(SUBSTR (prs_perslid_email,
0,
INSTR (prs_perslid_email, '@') - 1))) <=
30;
v_errorhint := 'Afdeling bepalen en vullen';
-- Afdeling bepalen waar persoon onder komt te vallen. LET OP - Deze is voor GOKO niet altijd gevuld!? Oplossen door eerst te vullen met PERSONEELSNR en in Kenmerk5 de kostenplaats/afdeling
@@ -770,6 +681,44 @@ BEGIN
END;
END LOOP;
FOR rec IN c_login
LOOP
BEGIN
v_errorhint := 'Bestaande OSLOGIN uit Facilitor handhaven';
UPDATE fac_imp_perslid
SET prs_perslid_oslogin = rec.prs_perslid_oslogin
WHERE fac_imp_file_index = rec.fac_imp_file_index;
END;
END LOOP;
v_errorhint := 'Login afleiden van emailadres (voor locatieleiders en kantoorpersoneel) indien nog geen login aanwezig';
-- Voor de locatieleiders en kantoorpersoneel de oslogin vullen in geval nog niet gevuld in Facilitor (vanuit vorige cursor)
UPDATE fac_imp_perslid
SET prs_perslid_oslogin =
UPPER (
(SUBSTR (prs_perslid_email,
0,
INSTR (prs_perslid_email, '@') - 1)))
WHERE UPPER (prs_perslid_email) LIKE '%GO-KINDEROPVANG.NL'
AND prs_perslid_email IS NOT NULL
AND ( UPPER (prs_srtperslid_omschrijving) = 'LOCATIELEIDER'
OR prs_afdeling_naam IN
(SELECT a.prs_afdeling_upper
FROM prs_v_afdeling_boom ab, prs_afdeling a
WHERE a.prs_afdeling_key = ab.prs_afdeling_key
AND a.prs_afdeling_verwijder IS NULL
AND ab.prs_afdeling_key1 = 281
AND ab.niveau NOT IN ('1') -- Alles onder ORG-1 van KCC
))
AND prs_perslid_oslogin IS NULL
AND LENGTH (
(SUBSTR (prs_perslid_email,
0,
INSTR (prs_perslid_email, '@') - 1))) <=
30;
v_errorhint := 'Locatie bepalen en vullen';
-- Op basis van kostenplaats gaan we kijken of we de locatie en werkplekkoppeling kunnen maken