HMOD#88835 -- AFAS-koppeling versie 1 + Zaken t.a.v Contractbeheer + Facilitorrollen-verhaal
svn path=/Customer/trunk/; revision=69853
This commit is contained in:
838
HMOD/hmod.sql
838
HMOD/hmod.sql
@@ -22,6 +22,784 @@ SET DEFINE OFF
|
||||
|
||||
------ payload begin ------
|
||||
|
||||
--------------------------------------------------
|
||||
--- HIERONDER NIEUWE AFAS IMPORT (2025-JULI) ----
|
||||
--------------------------------------------------
|
||||
|
||||
CREATE OR REPLACE PROCEDURE hmod_import_afasonline_h (p_import_key IN NUMBER)
|
||||
AS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (400);
|
||||
v_errorhint VARCHAR2 (400);
|
||||
v_aantal_in_fclt NUMBER;
|
||||
v_seq_of_columns VARCHAR (255);
|
||||
v_seq_of_header VARCHAR (1000);
|
||||
|
||||
-- overige variabelen
|
||||
v_prs_afdeling_key NUMBER (10);
|
||||
c_prs_bedrijf_key_hmod NUMBER (10) := 41;
|
||||
v_prs_perslid_rol_key NUMBER (10);
|
||||
|
||||
CURSOR c_afd
|
||||
IS
|
||||
SELECT fac_imp_file_index,
|
||||
prs_afdeling_naam, -- Afdelingscode
|
||||
prs_kenmerk5 -- Afdeling omschrijving
|
||||
FROM fac_imp_perslid
|
||||
WHERE fac_import_key = p_import_key
|
||||
ORDER BY fac_imp_file_index;
|
||||
|
||||
CURSOR c_afd_log
|
||||
IS
|
||||
SELECT prs_kenmerk20 -- Nieuwe afdeling aanmaken - vullen we in dit kenmerk20
|
||||
FROM fac_imp_perslid
|
||||
WHERE fac_import_key = p_import_key
|
||||
AND prs_kenmerk20 IS NOT NULL
|
||||
GROUP BY prs_kenmerk20;
|
||||
|
||||
-- Op basis van de functie gaan we de facilitor-rol bepalen
|
||||
---- via deze rol gaan tijdens verwerkingsactie mensen juiste rechten geven
|
||||
CURSOR c_rol
|
||||
IS
|
||||
SELECT fac_imp_file_index, prs_kenmerk6, prs_kenmerk7
|
||||
FROM fac_imp_perslid
|
||||
WHERE fac_import_key = p_import_key
|
||||
ORDER BY fac_imp_file_index ;
|
||||
|
||||
BEGIN
|
||||
-- Het aangeleverde bestand heeft de gegevens komma gescheiden ipv ;
|
||||
v_errorhint := 'Delimiter goed zetten';
|
||||
|
||||
-- UPDATE fac_imp_file
|
||||
-- SET fac_imp_file_line = REPLACE (fac_imp_file_line, ',', ';')
|
||||
-- WHERE fac_import_key = p_import_key;
|
||||
|
||||
-- Het aangeleverde bestand heeft aanhalingstekens om de invoervelden..
|
||||
UPDATE fac_imp_file
|
||||
SET fac_imp_file_line = REPLACE (fac_imp_file_line, '"', '')
|
||||
WHERE fac_import_key = p_import_key;
|
||||
|
||||
v_errorhint := 'Generieke update';
|
||||
-- Import AFAS_ONLINE -- csv formaat via stylesheet afas2fclt.xsl bepaald
|
||||
-- EVT NOG AANVULLING VAN CLAUDIA OP:
|
||||
---- DOEL: MET FORMATIEPLAATSCODE_WIJZIGINGSDATUM of AFDELINGSCODE_WIJZIGINGSDATUM DE TRIGGER MUTATIE-KOFFERSYSTEEM TE ZETTEN
|
||||
v_seq_of_header := 'Personeelsnummer;Roepnaam;Voorletters;Voorvoegsel;Achternaam;Geslacht;Zakelijk mailadres;Dienstverb.;Begindatum functieregel;Einddatum functieregel;Afdelingscode;Afdeling omschrijving;Functiecode;Functieomschrijving;Formatieplaatscode;Formatieplaats omschrijving;Uren/wk;Leidinggevende persnr.;Naam Leidinggevende;Kofferletter';
|
||||
-- 1. Personeelsnummer
|
||||
-- 2. Roepnaam
|
||||
-- 3. Voorletters
|
||||
-- 4. Voorvoegsel
|
||||
-- 5. Achternaam
|
||||
-- 6. Geslacht
|
||||
-- 7. Zakelijk mailadres
|
||||
-- 8. Dienstverb.
|
||||
-- 9. Begindatum functieregel
|
||||
-- 10. Einddatum functieregel
|
||||
-- 11. Afdelingscode
|
||||
-- 12. Afdeling omschrijving
|
||||
-- 13. Functiecode
|
||||
-- 14. Functieomschrijving
|
||||
-- 15. Formatieplaatscode
|
||||
-- 16. Formatieplaats omschrijving
|
||||
-- 17. Uren/wk
|
||||
-- 18. Leidinggevende persnr.
|
||||
-- 19. Naam Leidinggevende
|
||||
-- 20. Kofferletter
|
||||
|
||||
-- de sequence array staat beschreven in PRS_PAC.SRC bij de prs.import_perslid procedure
|
||||
v_seq_of_columns := '0;0;0;0;0;0;11;5;4;2;'
|
||||
-- v_alg_locatie_code 1
|
||||
-- v_alg_gebouw_code 2
|
||||
-- v_alg_verdieping_volgnr 3
|
||||
-- v_alg_ruimte_nr 4
|
||||
-- v_prs_werkplek_volgnr 5
|
||||
-- v_prs_werkplek_omschrijving 6
|
||||
-- v_prs_afdeling_naam 7 -- VERPLICHT BIJ IMPORT
|
||||
-- v_prs_perslid_naam 8 -- VERPLICHT BIJ IMPORT
|
||||
-- v_prs_perslid_tussenvoegsel 9
|
||||
-- v_prs_perslid_voornaam 10
|
||||
|| '3;0;0;0;6;0;0;7;0;1;'
|
||||
-- v_prs_perslid_voorletters 11
|
||||
-- v_prs_perslid_partner_naam 12
|
||||
-- v_prs_perslid_partner_tussenv 13
|
||||
-- v_prs_naamgebruik_code 14 0 (default) perslid_naam en perslid_tussenvoegsel worden gebruikt
|
||||
-- 1 personen die de geboortenaam van de partner icm de eigen naam willen gebruiken
|
||||
-- 2 personen die de geboortenaam van de partner willen gebruiken
|
||||
-- 3 personen die de eigen naam icm de geboortenaam van de partner willen gebruiken
|
||||
-- v_prs_perslid_geslacht 15 Gebruik 'man', 'm' of 1 voor man en 'vrouw', 'v' of 0 voor vrouw case insensitive geen default
|
||||
-- v_prs_perslid_telefoonnr 16
|
||||
-- v_prs_perslid_mobiel 17
|
||||
-- v_prs_perslid_email 18
|
||||
-- v_prs_perslid_dienstverband 19
|
||||
-- v_prs_perslid_nr 20
|
||||
|| '14;0;0;0;0;0;8;9;10;11;'
|
||||
-- v_prs_srtperslid_omschrijving 21 -- VERPLICHT BIJ IMPORT
|
||||
-- v_prs_perslid_oslogin 22
|
||||
-- v_prs_perslid_wachtwoord 23
|
||||
-- v_prs_perslid_titel 24
|
||||
-- v_prs_perslid_apikey 25
|
||||
-- v_dummy 26
|
||||
-- v_prs_kenmerk1 27
|
||||
-- v_prs_kenmerk2 28
|
||||
-- v_prs_kenmerk3 29
|
||||
-- v_prs_kenmerk4 30
|
||||
|| '12;13;14;15;16;17;18;19;20;0;'
|
||||
-- v_prs_kenmerk5 31
|
||||
-- .t/m kenmerk15 40
|
||||
|| '0;0;0;0;0;0';
|
||||
-- v_prs_kenmerk16 41
|
||||
-- ..t/m kenmerk20 45
|
||||
|
||||
|
||||
v_errorhint := 'Generieke update';
|
||||
-- csv verwerken naar de fac_imp_perslid-tabel
|
||||
prs.import_perslid(p_import_key, v_seq_of_columns, v_seq_of_header);
|
||||
|
||||
v_errorhint := 'Login afleiden van emailadres';
|
||||
-- Loginnaam afleiden van emailadres
|
||||
UPDATE fac_imp_perslid
|
||||
SET prs_perslid_oslogin =
|
||||
UPPER (
|
||||
(SUBSTR (prs_perslid_email,
|
||||
0,
|
||||
INSTR (prs_perslid_email, '@') - 1)))
|
||||
WHERE prs_perslid_email IS NOT NULL ;
|
||||
|
||||
v_errorhint := 'Uitfilteren records'; -- in afasonline-bestand zitten wellicht aantal zaken die niet mee hoeven naar Facilitor
|
||||
-- moeten we uit afasbestand nog medewerkers verwijderen voordat we vervolg import/update-acties gaan doen? Vooralsnog niet...
|
||||
NULL;
|
||||
|
||||
v_errorhint := 'Bewerken records'; -- in afasonline-bestand zitten wellicht aantal zaken die we voor import naar Facilitor willen bewerken
|
||||
-- Functie in Facilitor moet worden: functiecode - functieomschrijving
|
||||
UPDATE fac_imp_perslid
|
||||
SET prs_srtperslid_omschrijving = prs_kenmerk6 || ' - ' || prs_kenmerk7 ;
|
||||
|
||||
-- Afdeling bepalen waar persoon onder komt te vallen.
|
||||
---- Deze wordt voor HUMOD direct uit AFAS gevuld.
|
||||
---- In Facilitor kiezen we er voor dat alle afdelingen op niveau 1 aangemaakt worden onder bedrijf_key c_prs_bedrijf_key_hmod
|
||||
---- Indien afdeling niet gevonden dan gaan we deze aanmaken onder bedrijf Humanitas Onder Dak
|
||||
FOR rec IN c_afd
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Afdeling van Persoon - bestaand of nieuw?';
|
||||
|
||||
-- Afdeling op niveau 1 zoeken
|
||||
SELECT MIN (a.prs_afdeling_key)
|
||||
INTO v_prs_afdeling_key
|
||||
FROM prs_v_afdeling a
|
||||
WHERE a.prs_afdeling_upper = UPPER (rec.prs_afdeling_naam)
|
||||
AND a.prs_afdeling_verwijder IS NULL
|
||||
AND a.niveau = 1 -- kijken alleen naar afdelingen op niveau 1
|
||||
AND a.prs_bedrijf_key = c_prs_bedrijf_key_hmod ;
|
||||
|
||||
-- Als afdeling uit AFAS NIET bekend is in Facilitor dan maken we deze straks bij uitvoer/update aan - Bij deze import alvast de info-logging doen
|
||||
IF v_prs_afdeling_key IS NULL
|
||||
THEN
|
||||
|
||||
UPDATE fac_imp_perslid
|
||||
SET prs_kenmerk20 = 'Nieuwe afdeling - ' || rec.prs_afdeling_naam
|
||||
WHERE fac_imp_file_index = rec.fac_imp_file_index ;
|
||||
|
||||
END IF;
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN c_afd_log
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Nieuwe afdelingen aanmaken - ter info';
|
||||
|
||||
|
||||
fac.imp_writelog (p_import_key,
|
||||
'I',
|
||||
rec.prs_kenmerk20,
|
||||
v_errorhint);
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN c_rol
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Facilitor-rollen bepalen- ter info';
|
||||
-- Op zoek naar de Facilitor-rol voor deze medewerkers op basis van functie_code en functie_omschrijving
|
||||
-- Onderhouden in eigentabellen functie_rol1 en functie_rol2 (key 901 en key 903)
|
||||
|
||||
SELECT MAX((SELECT rol.fac_usrdata_code FROM fac_usrdata rol WHERE rol.fac_usrdata_key = ud.fac_usrdata_parentkey AND rol.fac_usrtab_key = 921))
|
||||
facilitor_rol
|
||||
INTO v_prs_perslid_rol_key
|
||||
FROM fac_usrtab ut, fac_usrdata ud
|
||||
WHERE ut.fac_usrtab_key = ud.fac_usrtab_key
|
||||
AND ut.fac_usrtab_key = 901
|
||||
AND ud.fac_usrdata_verwijder IS NULL
|
||||
AND UPPER(ud.fac_usrdata_code) = UPPER(rec.prs_kenmerk6) -- functiecode
|
||||
AND UPPER(ud.fac_usrdata_omschr) = UPPER(rec.prs_kenmerk7) -- functieomschrijving
|
||||
;
|
||||
|
||||
IF v_prs_perslid_rol_key IS NOT NULL
|
||||
THEN
|
||||
|
||||
UPDATE fac_imp_perslid
|
||||
SET prs_kenmerk19 = v_prs_perslid_rol_key
|
||||
WHERE fac_imp_file_index = rec.fac_imp_file_index ;
|
||||
|
||||
END IF;
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
|
||||
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
END hmod_import_afasonline_h;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE hmod_update_afasonline_h (p_import_key IN NUMBER)
|
||||
IS
|
||||
-- AFAS in sync met Facilitor bedrijf c_prs_bedrijf_key_hmod
|
||||
--- Alle personen verwijderen die niet meer in het import bestand voorkomen.
|
||||
--- Match bij HUMOD loopt via Personeelsnummer
|
||||
|
||||
-- Afdeling AFAS leading
|
||||
--- Op niveau 1 gaan we de afdeling van HMOD aanmaken.
|
||||
--- Indien onbekende afdelingscode dan gaan we die eerst aanmaken (in immport-deel vullen we daarvoor alvast prs_kenmerk20)
|
||||
|
||||
-- Leidinggevende - verantwoordelijke
|
||||
--- In de personenkaart van Facilitor wordt officiele leidinggevende uit afas gevuld
|
||||
--- En op basis functie een automatische toewijzing aan juiste autorisatiegroepen van managers en teamleiders
|
||||
|
||||
-- Facilitor-rollen bepalen en op basis van deze rollen autorisaties uitreiken
|
||||
--- Op basis functie/code zijn er 3 rollen te onderscheiden voor hmod in Facilitor: Teamleider locatie, Regiomanager, Manager algemeen
|
||||
|
||||
-- HR-mutaties in Facilitor
|
||||
--- Bij mutaties in AFAS moeten in Facilitor voor desbetreffende persoon ook zaken geregeld worden. Hiervoor zetten we kenmerk/trigger 'mutatie-koffersysteem'
|
||||
|
||||
v_count NUMBER;
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (400);
|
||||
v_errorhint VARCHAR2 (400);
|
||||
|
||||
-- overige variabelen
|
||||
v_fac_gebruikersgroep_key NUMBER(10);
|
||||
v_prs_perslid_key_verantw NUMBER(10);
|
||||
v_prs_afdeling_key NUMBER (10);
|
||||
c_prs_bedrijf_key_hmod NUMBER (10) := 41;
|
||||
c_rol_key_teamleider NUMBER (10) := 1280;
|
||||
c_rol_key_regiomanager NUMBER (10) := 1740;
|
||||
c_rol_key_manager NUMBER (10) := 1320;
|
||||
|
||||
CURSOR c_afd
|
||||
IS
|
||||
SELECT i.prs_kenmerk20, i.prs_kenmerk4, i.prs_kenmerk5
|
||||
FROM fac_imp_perslid i
|
||||
WHERE i.prs_kenmerk20 IS NOT NULL
|
||||
GROUP BY i.prs_kenmerk20, i.prs_kenmerk4, i.prs_kenmerk5 ;
|
||||
|
||||
CURSOR c_del
|
||||
IS
|
||||
SELECT p.prs_perslid_key, p.prs_perslid_naam, p.prs_perslid_email, p.prs_perslid_nr, sp.prs_srtperslid_omschrijving, a.prs_afdeling_omschrijving, b.prs_bedrijf_naam
|
||||
FROM prs_perslid p, fac_imp_perslid i, prs_srtperslid sp, prs_v_afdeling a, prs_bedrijf b
|
||||
WHERE p.prs_perslid_nr = i.prs_perslid_nr(+)
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND p.prs_afdeling_key = a.prs_afdeling_key AND a.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND b.prs_bedrijf_key = c_prs_bedrijf_key_hmod
|
||||
AND p.prs_srtperslid_key = sp.prs_srtperslid_key
|
||||
AND i.prs_perslid_nr IS NULL -- in Facilitor, met onderstaande voorwaarden, is er dus geen mapping op personeelsnummer en die personen gaan we verwijderen/inactief maken
|
||||
AND p.prs_perslid_nr IS NOT NULL
|
||||
AND UPPER (p.prs_perslid_email) LIKE '%HUMOD.NL'
|
||||
ORDER BY 1 ;
|
||||
|
||||
CURSOR c_flex -- Voor updaten van de algemene flex-kenmerkvelden op actuele medewerkers in blok AFAS_ONLINE op personenkaart
|
||||
IS
|
||||
SELECT p.prs_perslid_key, i.prs_perslid_nr, i.prs_perslid_naam, i.prs_perslid_email,
|
||||
i.prs_kenmerk1, i.prs_kenmerk2, i.prs_kenmerk3, i.prs_kenmerk4, i.prs_kenmerk5, i.prs_kenmerk6, i.prs_kenmerk7, i.prs_kenmerk8, i.prs_kenmerk9, i.prs_kenmerk10, i.prs_kenmerk11, i.prs_kenmerk12, i.prs_kenmerk13
|
||||
FROM prs_v_aanwezigperslid p, fac_imp_perslid i
|
||||
WHERE p.prs_perslid_key = i.prs_perslid_key
|
||||
ORDER BY 1;
|
||||
|
||||
CURSOR c_verantw
|
||||
IS
|
||||
SELECT p.prs_perslid_key,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_nr,
|
||||
p.prs_perslid_oslogin,
|
||||
CASE WHEN p.prs_perslid_key_verantw IS NOT NULL
|
||||
THEN (SELECT prs_perslid_nr FROM prs_perslid WHERE prs_perslid_key = p.prs_perslid_key_verantw)
|
||||
ELSE NULL
|
||||
END
|
||||
prs_perslid_verantw_nr,
|
||||
p.prs_perslid_verantw_nr_afas
|
||||
FROM fac_imp_perslid i,
|
||||
(SELECT p.prs_perslid_key,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_nr,
|
||||
p.prs_perslid_oslogin,
|
||||
p.prs_perslid_key_verantw,
|
||||
(SELECT kw.prs_kenmerklink_waarde
|
||||
FROM prs_kenmerklink kw
|
||||
WHERE kw.prs_kenmerk_key = 1643
|
||||
AND kw.prs_kenmerklink_niveau = 'P'
|
||||
AND kw.prs_link_key = p.prs_perslid_key)
|
||||
prs_perslid_verantw_nr_afas
|
||||
FROM prs_perslid p) p
|
||||
WHERE p.prs_perslid_key = i.prs_perslid_key
|
||||
ORDER BY 1 ;
|
||||
|
||||
-- cursor ROLLEN inlezen in de rol-kenmerkvelden op personenkaart
|
||||
----- en Autorisatie goed inregelen per rol --- DIT NOG APART GOED INREGELEN
|
||||
CURSOR c_rol
|
||||
IS
|
||||
SELECT p.prs_perslid_key,
|
||||
i.prs_kenmerk19, -- rol_key uit afas en eigen-tabel met de facilitor-rollen die bij functie_code en functie_omschrijving horen (tabel key 901 en key 903)
|
||||
p.prs_perslid_teamleider,
|
||||
p.prs_perslid_regiomanager,
|
||||
p.prs_perslid_manager_algemeen
|
||||
FROM fac_imp_perslid i,
|
||||
(SELECT p.prs_perslid_key,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_nr,
|
||||
p.prs_perslid_oslogin,
|
||||
p.prs_perslid_key_verantw,
|
||||
(SELECT kw.prs_kenmerklink_waarde
|
||||
FROM prs_kenmerklink kw
|
||||
WHERE kw.prs_kenmerk_key = c_rol_key_teamleider
|
||||
AND kw.prs_kenmerklink_niveau = 'P'
|
||||
AND kw.prs_link_key = p.prs_perslid_key)
|
||||
prs_perslid_teamleider,
|
||||
(SELECT kw.prs_kenmerklink_waarde
|
||||
FROM prs_kenmerklink kw
|
||||
WHERE kw.prs_kenmerk_key = c_rol_key_regiomanager
|
||||
AND kw.prs_kenmerklink_niveau = 'P'
|
||||
AND kw.prs_link_key = p.prs_perslid_key)
|
||||
prs_perslid_regiomanager,
|
||||
(SELECT kw.prs_kenmerklink_waarde
|
||||
FROM prs_kenmerklink kw
|
||||
WHERE kw.prs_kenmerk_key = c_rol_key_manager
|
||||
AND kw.prs_kenmerklink_niveau = 'P'
|
||||
AND kw.prs_link_key = p.prs_perslid_key)
|
||||
prs_perslid_manager_algemeen
|
||||
FROM prs_perslid p) p
|
||||
WHERE p.prs_perslid_key = i.prs_perslid_key
|
||||
ORDER BY 1 ;
|
||||
|
||||
-- HR-koffersysteem mutatie op functie en/of afdeling (=formatieplaats-wijziging) - NOG HELEMAAL GOED UITWERKEN!!!
|
||||
CURSOR c_mut
|
||||
IS
|
||||
SELECT p.prs_perslid_key -- NOG UITWERKEN
|
||||
FROM fac_imp_perslid i,
|
||||
(SELECT p.prs_perslid_key,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_nr,
|
||||
p.prs_perslid_oslogin,
|
||||
p.prs_perslid_key_verantw,
|
||||
(SELECT kw.prs_kenmerklink_waarde
|
||||
FROM prs_kenmerklink kw
|
||||
WHERE kw.prs_kenmerk_key = 1082
|
||||
AND kw.prs_kenmerklink_niveau = 'P'
|
||||
AND kw.prs_link_key = p.prs_perslid_key)
|
||||
prs_perslid_verantw_nr_afas
|
||||
FROM prs_perslid p) p
|
||||
WHERE p.prs_perslid_key = i.prs_perslid_key
|
||||
ORDER BY 1 ;
|
||||
|
||||
|
||||
BEGIN
|
||||
v_errormsg := 'Update afasonline';
|
||||
v_errorhint := 'Niet genoeg personen in bestand, import afgebroken';
|
||||
|
||||
SELECT COUNT ( * ) INTO v_count FROM fac_imp_perslid;
|
||||
|
||||
IF v_count >= 100
|
||||
THEN
|
||||
-- Geldig importbestand wat betreft aantal personen
|
||||
|
||||
-- Gaan we eerst de afdelingsstructuur bijwerken
|
||||
FOR rec IN c_afd
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint:='Fout aanvullen afdelingstructuur: ' || rec.prs_kenmerk4 || ' - ' || rec.prs_kenmerk5 ;
|
||||
|
||||
INSERT INTO prs_afdeling (
|
||||
prs_bedrijf_key,
|
||||
prs_afdeling_naam,
|
||||
prs_afdeling_omschrijving,
|
||||
prs_kostenplaats_key,
|
||||
prs_perslid_key_verantw,
|
||||
mld_adres_key)
|
||||
VALUES (
|
||||
c_prs_bedrijf_key_hmod,
|
||||
rec.prs_kenmerk4,
|
||||
rec.prs_kenmerk5,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL) ;
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
-- En dan kunnen we de generieke import draaien
|
||||
v_errorhint := 'Verwerken persoonsgegevens';
|
||||
|
||||
COMMIT;
|
||||
|
||||
-- generic update
|
||||
-- 'EMAIL' betekent dat op basis van Email wordt gematched.
|
||||
-- 'NR' betekent op basis Personeelsnummer
|
||||
-- 'NULL' betekent altijd geen werkplekken verwijderen
|
||||
prs.update_perslid (p_import_key, 'NR', NULL);
|
||||
|
||||
-- Verwijder personen die niet meer in de import voorkomen.
|
||||
FOR rec IN c_del
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint := 'Verwijderen persoonsgegevens';
|
||||
|
||||
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
-- Op de personenkaart de actuele humod-mederwerkers de afas-velden uit de koppeling vullen - ter informatie
|
||||
FOR rec IN c_flex
|
||||
LOOP
|
||||
BEGIN
|
||||
|
||||
-- standaardvelden:
|
||||
v_errorhint:='Fout bijwerken - Naam';
|
||||
PRS.upsertkenmerk (1602, rec.prs_perslid_key, rec.prs_perslid_naam);
|
||||
|
||||
v_errorhint:='Fout bijwerken - Personeelsnummer';
|
||||
PRS.upsertkenmerk (1604, rec.prs_perslid_key, rec.prs_perslid_nr);
|
||||
|
||||
v_errorhint:='Fout bijwerken - Zakelijk emailadres';
|
||||
PRS.upsertkenmerk (1605, rec.prs_perslid_key, rec.prs_perslid_email);
|
||||
|
||||
-- overige uit de import-kenmerkvelden:
|
||||
v_errorhint:='Fout bijwerken kenmerkveld1 - Dienstverb.';
|
||||
PRS.upsertkenmerk (1660, rec.prs_perslid_key, rec.prs_kenmerk1);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld2 - Begindatum functieregel';
|
||||
PRS.upsertkenmerk (1644, rec.prs_perslid_key, rec.prs_kenmerk2);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld3 - Einddatum functieregel';
|
||||
PRS.upsertkenmerk (1645, rec.prs_perslid_key, rec.prs_kenmerk3);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld4 - Afdelingscode';
|
||||
PRS.upsertkenmerk (1608, rec.prs_perslid_key, rec.prs_kenmerk4);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld5 - Afdeling omschrijving';
|
||||
PRS.upsertkenmerk (1609, rec.prs_perslid_key, rec.prs_kenmerk5);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld6 - Functiecode';
|
||||
PRS.upsertkenmerk (1610, rec.prs_perslid_key, rec.prs_kenmerk6);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld7 - Functieomschrijving';
|
||||
PRS.upsertkenmerk (1611, rec.prs_perslid_key, rec.prs_kenmerk7);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld8 - Formatieplaatscode';
|
||||
PRS.upsertkenmerk (1606, rec.prs_perslid_key, rec.prs_kenmerk8);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld9 - Formatieplaats omschrijving';
|
||||
PRS.upsertkenmerk (1607, rec.prs_perslid_key, rec.prs_kenmerk9);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld10 - Uren/wk';
|
||||
PRS.upsertkenmerk (1640, rec.prs_perslid_key, rec.prs_kenmerk10);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld11 - Leidinggevende persnr';
|
||||
PRS.upsertkenmerk (1643, rec.prs_perslid_key, rec.prs_kenmerk11);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld12 - Naam Leidinggevende';
|
||||
PRS.upsertkenmerk (1642, rec.prs_perslid_key, rec.prs_kenmerk12);
|
||||
|
||||
v_errorhint:='Fout bijwerken kenmerkveld13 - Kofferletter';
|
||||
PRS.upsertkenmerk (1641, rec.prs_perslid_key, rec.prs_kenmerk13);
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
-- En de verantwoordelijk manager updaten in de personenkaart indien nodig
|
||||
FOR rec IN c_verantw
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint:='Fout bijwerken verantwoordelijke';
|
||||
|
||||
-- als de aangeboden waarde uit afas anders is dan de huidige verantwoordelijke in de personenkaart dan gaan we personenkaart updaten
|
||||
IF COALESCE(rec.prs_perslid_verantw_nr_afas, '<leeg>') <> COALESCE(rec.prs_perslid_verantw_nr, '<leeg>')
|
||||
THEN
|
||||
|
||||
-- geen gevonden facilitor-manager dan gevulde verantwoordelijke verwijderen
|
||||
IF rec.prs_perslid_verantw_nr_afas IS NULL
|
||||
THEN
|
||||
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_key_verantw = ''
|
||||
WHERE prs_perslid_key = rec.prs_perslid_key ;
|
||||
|
||||
END IF;
|
||||
|
||||
-- wel gevonden facilitor-manager dan bijbehorende verantwoordelijke_key in personenkaart vullen
|
||||
IF rec.prs_perslid_verantw_nr_afas IS NOT NULL
|
||||
THEN
|
||||
|
||||
SELECT MIN(prs_perslid_key)
|
||||
INTO v_prs_perslid_key_verantw
|
||||
FROM prs_perslid
|
||||
WHERE prs_perslid_nr = rec.prs_perslid_verantw_nr_afas ;
|
||||
|
||||
IF v_prs_perslid_key_verantw IS NOT NULL
|
||||
THEN
|
||||
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_key_verantw = v_prs_perslid_key_verantw
|
||||
WHERE prs_perslid_key = rec.prs_perslid_key ;
|
||||
|
||||
ELSE
|
||||
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_key_verantw = ''
|
||||
WHERE prs_perslid_key = rec.prs_perslid_key ;
|
||||
|
||||
END IF;
|
||||
|
||||
END IF;
|
||||
|
||||
|
||||
END IF;
|
||||
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
FOR rec IN c_rol
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint:='Fout bijwerken facilitor-rollen';
|
||||
|
||||
-- 1. als prs_kenmerk19 leeg is dan ook alle vinkjes leegmaken...
|
||||
IF rec.prs_kenmerk19 IS NULL AND (rec.prs_perslid_teamleider IS NOT NULL OR rec.prs_perslid_regiomanager IS NOT NULL OR rec.prs_perslid_manager_algemeen IS NOT NULL)
|
||||
THEN
|
||||
|
||||
IF rec.prs_perslid_teamleider IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_teamleider AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Teamleider: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
IF rec.prs_perslid_regiomanager IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_regiomanager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Regiomanager: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
IF rec.prs_perslid_manager_algemeen IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_manager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Manager algemeen: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
END IF;
|
||||
|
||||
-- 2. als prs_kenmerk19 gevuld is dan checken of juiste rol-vinkje gezet is, zo niet, doen..
|
||||
-- 2.1. voor c_rol_key_teamleider
|
||||
IF rec.prs_kenmerk19 IS NOT NULL AND fac.safe_to_number(rec.prs_kenmerk19) = c_rol_key_teamleider
|
||||
THEN
|
||||
|
||||
-- toevoegen
|
||||
IF rec.prs_perslid_teamleider IS NULL
|
||||
THEN
|
||||
|
||||
INSERT INTO prs_kenmerklink(prs_link_key,prs_kenmerk_key,prs_kenmerklink_waarde,prs_kenmerklink_niveau)
|
||||
VALUES (rec.prs_perslid_key, c_rol_key_teamleider, '1', 'P') ;
|
||||
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Teamleider: (leeg) --> 1 (vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
-- en de andere rollen deleten als ze nog aangevinkt zijn (kan maar 1 rol krijgen)
|
||||
IF rec.prs_perslid_regiomanager IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_regiomanager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Regiomanager: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
IF rec.prs_perslid_manager_algemeen IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_manager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Manager algemeen: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
END IF;
|
||||
|
||||
-- 2.2. c_rol_key_regiomanager
|
||||
IF rec.prs_kenmerk19 IS NOT NULL AND fac.safe_to_number(rec.prs_kenmerk19) = c_rol_key_regiomanager
|
||||
THEN
|
||||
|
||||
-- toevoegen
|
||||
IF rec.prs_perslid_regiomanager IS NULL
|
||||
THEN
|
||||
|
||||
INSERT INTO prs_kenmerklink(prs_link_key,prs_kenmerk_key,prs_kenmerklink_waarde,prs_kenmerklink_niveau)
|
||||
VALUES (rec.prs_perslid_key, c_rol_key_regiomanager, '1', 'P') ;
|
||||
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Regiomanager: (leeg) --> 1 (vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
-- en de andere rollen deleten als ze nog aangevinkt zijn (kan maar 1 rol krijgen)
|
||||
IF rec.prs_perslid_teamleider IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_teamleider AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Teamleider: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
IF rec.prs_perslid_manager_algemeen IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_manager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Manager algemeen: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
END IF;
|
||||
|
||||
-- 2.3. c_rol_key_manager
|
||||
IF rec.prs_kenmerk19 IS NOT NULL AND fac.safe_to_number(rec.prs_kenmerk19) = c_rol_key_manager
|
||||
THEN
|
||||
|
||||
-- toevoegen
|
||||
IF rec.prs_perslid_manager_algemeen IS NULL
|
||||
THEN
|
||||
|
||||
INSERT INTO prs_kenmerklink(prs_link_key,prs_kenmerk_key,prs_kenmerklink_waarde,prs_kenmerklink_niveau)
|
||||
VALUES (rec.prs_perslid_key, c_rol_key_manager, '1', 'P') ;
|
||||
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Manager algemeen: (leeg) --> 1 (vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
-- en de andere rollen deleten als ze nog aangevinkt zijn (kan maar 1 rol krijgen)
|
||||
IF rec.prs_perslid_teamleider IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_teamleider AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Teamleider: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
IF rec.prs_perslid_manager_algemeen IS NOT NULL
|
||||
THEN
|
||||
|
||||
DELETE FROM prs_kenmerklink WHERE prs_link_key = rec.prs_perslid_key AND prs_kenmerk_key = c_rol_key_manager AND prs_kenmerklink_VERWIJDER IS NULL ;
|
||||
|
||||
-- tracking doen op personenkaart
|
||||
BEGIN fac.trackaction('PRSUPD', rec.prs_perslid_key, 3, NULL, 'Manager algemeen: 1 --> (gewist vanuit AFAS_koppeling)'); END;
|
||||
|
||||
END IF;
|
||||
|
||||
END IF;
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
/*
|
||||
FOR rec IN c_aut
|
||||
LOOP
|
||||
BEGIN
|
||||
-- Alle locatiemanagers toevoegen aan eigen autorisatiegroep'
|
||||
v_errorhint:='Fout bijwerken locatiemanagers in eigen autorisatiegroep';
|
||||
|
||||
BEGIN
|
||||
|
||||
SELECT fac_gebruikersgroep_key
|
||||
INTO v_fac_gebruikersgroep_key
|
||||
FROM fac_gebruikersgroep
|
||||
WHERE fac_groep_key = 22 -- Groep 'Locatie- en Regiomanagers'
|
||||
AND prs_perslid_key = rec.prs_perslid_key ;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
|
||||
INSERT INTO fac_gebruikersgroep (fac_groep_key,
|
||||
prs_perslid_key)
|
||||
VALUES (22, rec.prs_perslid_key);
|
||||
|
||||
END;
|
||||
|
||||
|
||||
END;
|
||||
END LOOP;
|
||||
*/
|
||||
|
||||
|
||||
ELSE
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
COMMIT;
|
||||
END IF;
|
||||
|
||||
COMMIT;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg := 'Error ' || oracle_err_num || '/' || oracle_err_mes;
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_errormsg,
|
||||
v_errorhint);
|
||||
END hmod_update_afasonline_h;
|
||||
/
|
||||
|
||||
|
||||
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
--- HIERONDER OUDE IMPORT ADP en KOFFERSYSTEEM NOG HELEMAAL OPSCHONEN! ----
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE hmod_import_koffer (p_import_key IN NUMBER)
|
||||
AS
|
||||
@@ -414,8 +1192,9 @@ CREATE OR REPLACE VIEW hmod_v_personenlijst
|
||||
NAAM,
|
||||
PERSONEELSNUMMER,
|
||||
NAAM_TOT,
|
||||
TEAMLEIDER_MT,
|
||||
HR_FUNCTIONARIS,
|
||||
TEAMLEIDER_LOC,
|
||||
MANAGER_ALGEMEEN,
|
||||
REGIOMANAGER,
|
||||
BEDRIJF,
|
||||
DATUM_UITDIENST
|
||||
)
|
||||
@@ -425,13 +1204,14 @@ AS
|
||||
p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam
|
||||
naam,
|
||||
p.prs_perslid_nr,
|
||||
CASE WHEN v.teamleider_mt = 'ja' AND v.hr_functionaris = 'nee' THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ') - teamleider'
|
||||
WHEN v.teamleider_mt = 'nee' AND v.hr_functionaris = 'ja' THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ') - hr-functionaris'
|
||||
WHEN v.teamleider_mt = 'nee' AND v.hr_functionaris = 'ja' THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ') - teamleider / hr-functionaris'
|
||||
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ')'
|
||||
END naam_tot,
|
||||
v.teamleider_mt,
|
||||
v.hr_functionaris,
|
||||
p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam || ' (' || p.prs_perslid_nr || ')' ||
|
||||
DECODE(v.teamleider_loc, 'ja', ' - teamleider loc',
|
||||
DECODE(v.regiomanager, 'ja', ' - regiomanager',
|
||||
DECODE(v.manager_algemeen, 'ja', '- manager algemeen',
|
||||
NULL))) naam_tot,
|
||||
v.teamleider_loc,
|
||||
v.manager_algemeen,
|
||||
v.regiomanager,
|
||||
b.prs_bedrijf_naam,
|
||||
v.datum_uitdienst
|
||||
FROM
|
||||
@@ -441,11 +1221,14 @@ AS
|
||||
(
|
||||
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,
|
||||
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
|
||||
teamleider_loc,
|
||||
(select CASE WHEN max(k.prs_kenmerklink_waarde) IS NULL THEN 'nee' ELSE 'ja' END hr_functionaris
|
||||
from prs_kenmerklink k where k.prs_link_key = p.prs_perslid_key and k.prs_kenmerklink_niveau = 'P' and k.prs_kenmerk_key = 1320) -- hr_functionaris
|
||||
hr_functionaris,
|
||||
from prs_kenmerklink k where k.prs_link_key = p.prs_perslid_key and k.prs_kenmerklink_niveau = 'P' and k.prs_kenmerk_key = 1320) -- manager algemeen
|
||||
manager_algemeen,
|
||||
(select CASE WHEN max(k.prs_kenmerklink_waarde) IS NULL THEN 'nee' ELSE 'ja' END regiomanager
|
||||
from prs_kenmerklink k where k.prs_link_key = p.prs_perslid_key and k.prs_kenmerklink_niveau = 'P' and k.prs_kenmerk_key = 1740) -- regiomanager
|
||||
regiomanager,
|
||||
(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
|
||||
@@ -456,7 +1239,7 @@ AS
|
||||
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 b.prs_bedrijf_key IN (41, 8101) -- HMOD en HMOD-interne-emailadressen
|
||||
AND TRUNC(SYSDATE) < COALESCE(TRUNC(v.datum_uitdienst),TO_DATE('31-12-2099','DD-MM-YYYY'))
|
||||
;
|
||||
|
||||
@@ -465,17 +1248,31 @@ AS
|
||||
SELECT *
|
||||
FROM hmod_v_personenlijst
|
||||
WHERE
|
||||
teamleider_mt = 'ja'
|
||||
teamleider_loc = 'ja'
|
||||
;
|
||||
|
||||
CREATE OR REPLACE VIEW hmod_v_personenlijst_hr
|
||||
CREATE OR REPLACE VIEW hmod_v_personenlijst_man
|
||||
AS
|
||||
SELECT *
|
||||
FROM hmod_v_personenlijst
|
||||
WHERE
|
||||
hr_functionaris = 'ja'
|
||||
manager_algemeen = 'ja'
|
||||
;
|
||||
|
||||
CREATE OR REPLACE VIEW hmod_v_personenlijst_rm -- Regiomanager
|
||||
AS
|
||||
SELECT *
|
||||
FROM hmod_v_personenlijst
|
||||
WHERE
|
||||
regiomanager = 'ja'
|
||||
;
|
||||
|
||||
-- HR is geen officiele Facilitor-rol meer en view kan tzt weg/gedropt worden
|
||||
CREATE OR REPLACE VIEW hmod_v_personenlijst_hr
|
||||
AS
|
||||
SELECT *
|
||||
FROM hmod_v_personenlijst ;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW hmod_v_koffersysteem_actueel
|
||||
AS
|
||||
@@ -1522,6 +2319,8 @@ AS
|
||||
cnt_contract_status,
|
||||
CASE WHEN cnt_contract_verlenging = 2 THEN 'nee' ELSE 'ja' END
|
||||
automatisch_verlengen,
|
||||
CASE WHEN cnt_contract_inactiveren = 1 THEN 'ja' ELSE 'nee' END
|
||||
automatisch_beeindigen,
|
||||
(SELECT kc.cnt_kenmerkcontract_waarde
|
||||
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
||||
WHERE k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||||
@@ -1610,6 +2409,7 @@ AS -- Op rappel-datum naar de Beheerder/Administrateur sturen
|
||||
AND c.prs_perslid_key_beh <> c.prs_perslid_key_eig -- als administrateur gelijk aan 1e aanspreekpunt dan dan sturen we de info-mail niet uit
|
||||
AND v.contract_opgezegd IS NULL
|
||||
AND v.automatisch_verlengen = 'nee'
|
||||
AND v.automatisch_beeindigen = 'nee'
|
||||
UNION ALL -- Op rappel-datum ACTIE-mail naar het 1e aanspreekpunt sturen (contractverantwoordelijke)
|
||||
SELECT 'CUST02',
|
||||
NULL,
|
||||
@@ -1632,6 +2432,7 @@ AS -- Op rappel-datum naar de Beheerder/Administrateur sturen
|
||||
AND c.prs_perslid_key_eig IS NOT NULL
|
||||
AND v.contract_opgezegd IS NULL
|
||||
AND v.automatisch_verlengen = 'nee'
|
||||
AND v.automatisch_beeindigen = 'nee'
|
||||
UNION ALL -- Op rappel-datum ACTIE-mail naar het 'RAPPEL-ANDERS-emailadres'
|
||||
SELECT 'CUST03',
|
||||
NULL,
|
||||
@@ -1652,7 +2453,8 @@ AS -- Op rappel-datum naar de Beheerder/Administrateur sturen
|
||||
AND c.cnt_contract_status = 0
|
||||
AND cnt.cnt_getrappeldatum (c.cnt_contract_key) = TRUNC (SYSDATE)
|
||||
AND v.contract_opgezegd IS NULL
|
||||
AND v.automatisch_verlengen = 'nee' ;
|
||||
AND v.automatisch_verlengen = 'nee'
|
||||
AND v.automatisch_beeindigen = 'nee' ;
|
||||
|
||||
-- domeinview Contracten
|
||||
CREATE OR REPLACE VIEW hmod_v_contracten
|
||||
|
||||
Reference in New Issue
Block a user