HMOD#58494 -- Implementatie Humanitas Onder Dak - Koppelingen

svn path=/Customer/trunk/; revision=45014
This commit is contained in:
Jos Migo
2019-11-24 17:38:20 +00:00
parent 883e0f9a11
commit 95929f9cea

View File

@@ -28,11 +28,29 @@ BEGIN
-- De sequence array staat beschreven in PRS_PAC.SRC bij de import_perslid-PROCEDURE.
prs.import_perslid (
p_import_key,
'1;2;3;4;5;6;7;8;9;11;10;0;0;0;0;13;14;15;0;17;16;18;19;12;0;0;20;21;22;23;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0',
'Locatiecode;Gebouwcode;Bouwlaagvolgnummer;Ruimtenummer;Werkplekvolgnummer;Omschrijving;Afdelingscode;PersoonAchternaam;Tussenvoegsel;Voorletters;Voornaam;Titel/Aanhef;Telefoonnummer;Mobiel;Email;Functie;Personeelsnummer;Loginnaam;Password;Meisjesnaam;Brief aanhef;Formatieplaats;Toelichting koffersysteem%');
'1;2;3;4;5;6;7;8;9;11;10;20;0;0;0;13;14;15;0;17;16;18;19;12;0;0;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40',
'Locatiecode;Gebouwcode;Bouwlaagvolgnummer;Ruimtenummer;Werkplekvolgnummer;Omschrijving;Afdelingscode;Achternaam;Tussenvoegsel;Voorletters;Roepnaam;Geslacht;Telefoonnummer;Mobiel;Email;Functie;Personeelsnummer;Loginnaam;Password;Meisjesnaam;Brief aanhef;Formatieplaats;Basiskoffer;Functieomschrijving;token;mob;hit;lap+sim;lapt;Toegangsniveau;Facilitor;ADP;Absentiemanager;Regas;Checks;Accountview;Elvy;HodNet;Proactive%');
COMMIT;
UPDATE fac_imp_perslid
SET prs_perslid_geslacht =
CASE
WHEN prs_perslid_titel = 'Man' THEN 1
WHEN prs_perslid_titel = 'Vrouw' THEN 0
ELSE NULL
END,
prs_perslid_partner_naam = -- Meisjesnaam via veld Partnernaam omdat er teveel kenmerkvelden zijn... Leeg maken als geen vrouw
CASE
WHEN prs_perslid_titel = 'Man' THEN ''
ELSE prs_perslid_partner_naam
END,
prs_kenmerk20 = -- Afwijkend = keuzelijst met waarde Ja(21) en Nee(22)
CASE
WHEN prs_kenmerk20 = 'j' OR prs_kenmerk20 = 'J' OR prs_kenmerk20 = 'ja' OR prs_kenmerk20 = 'Ja' THEN '21'
ELSE '22'
END
;
EXCEPTION
WHEN OTHERS
THEN
@@ -47,13 +65,18 @@ CREATE OR REPLACE PROCEDURE hmod_update_perslid (p_import_key IN NUMBER)
IS
CURSOR c_flex
IS
SELECT p.prs_perslid_key, p.prs_perslid_nr, i.prs_kenmerk1, i.prs_kenmerk2, i.prs_kenmerk3,i.prs_kenmerk4
-- Er zijn in de hmod-import 21 kenmerken terwijl we er in fac_imp_perslid 20 ter beschikking hebben. Het eerste kenmerk 'meisjesnaam' staat daarom op prs_perslid_partner_naam
SELECT p.prs_perslid_key, p.prs_perslid_nr, i.prs_perslid_partner_naam,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,i.prs_kenmerk14,i.prs_kenmerk15,i.prs_kenmerk16,i.prs_kenmerk17,i.prs_kenmerk18,i.prs_kenmerk19,i.prs_kenmerk20
FROM prs_v_aanwezigperslid p, fac_imp_perslid i
WHERE p.prs_perslid_nr = i.prs_perslid_nr
ORDER BY 2;
-- Let op! Personen die niet meer in dienst zijn -> niet in fac_imp_perslid!
-- Dubbele perslid_nr? Dan wordt iemand mogelijk niet verwijderd/INACTIEF!
-- Voor HMOD: <NOG VASTSTELLEN! HOE/WAT !!!>
---- Indien er clienten in Faciltior zitten, deze sowieso uitsluiten van verwijderactie
---- Handmatig aangemaakte persoon 'Beumer applicatiebeheer' en 'Claudia ten Cate' + ......?
---- Omdat er via HRM-workflow wordt gewerkt, beste om dit via kenmerkveld te laten lopen met CHECK ADP-import
CURSOR c_del
IS
SELECT p.prs_perslid_key, p.prs_perslid_nr
@@ -86,26 +109,65 @@ BEGIN
END IF;
-- Generieke update.
prs.update_perslid (p_import_key, 'NR', 'D');
prs.update_perslid (p_import_key, 'NR', 'NULL');
-- Update flexvelden.
FOR rec IN c_flex
LOOP
v_errorhint:='Fout bijwerken meisjes';
PRS.upsertkenmerk (1023, rec.prs_perslid_key, rec.prs_kenmerk1); -- Meisjesnaam
PRS.upsertkenmerk (1023, rec.prs_perslid_key, rec.prs_perslid_partner_naam); -- Meisjesnaam
v_errorhint:='Fout bijwerken briefaanhef';
PRS.upsertkenmerk (1024, rec.prs_perslid_key, rec.prs_kenmerk2); -- Brief aanhef
PRS.upsertkenmerk (1024, rec.prs_perslid_key, rec.prs_kenmerk1); -- Brief aanhef
v_errorhint:='Fout bijwerken formatieplaats';
PRS.upsertkenmerk (1025, rec.prs_perslid_key, rec.prs_kenmerk3); -- Formatieplaats
v_errorhint:='Fout bijwerken toelichting koffersysteem';
PRS.upsertkenmerk (1028, rec.prs_perslid_key, rec.prs_kenmerk4); -- Toelichting koffersysteem
PRS.upsertkenmerk (1025, rec.prs_perslid_key, rec.prs_kenmerk2); -- Formatieplaats
v_errorhint:='Fout bijwerken Basiskoffer';
PRS.upsertkenmerk (1028, rec.prs_perslid_key, rec.prs_kenmerk3); -- Basiskoffer
v_errorhint:='Fout bijwerken Functieomschrijving';
PRS.upsertkenmerk (1040, rec.prs_perslid_key, rec.prs_kenmerk4); -- Functieomschrijving
v_errorhint:='Fout bijwerken Token';
PRS.upsertkenmerk (1068, rec.prs_perslid_key, rec.prs_kenmerk5); -- Token, 5 , 1068
v_errorhint:='Fout bijwerken Mobiel';
PRS.upsertkenmerk (1067, rec.prs_perslid_key, rec.prs_kenmerk6); -- Mobiel 6 , 1067
v_errorhint:='Fout bijwerken Hit';
PRS.upsertkenmerk (1069, rec.prs_perslid_key, rec.prs_kenmerk7); -- Hit 7 , 1069
v_errorhint:='Fout bijwerken Lap+Sim';
PRS.upsertkenmerk (1063, rec.prs_perslid_key, rec.prs_kenmerk8); -- Lap+Sim 8 , 1063
v_errorhint:='Fout bijwerken Lapt';
PRS.upsertkenmerk (1065, rec.prs_perslid_key, rec.prs_kenmerk9); -- Lapt 9, 1065
v_errorhint:='Fout bijwerken Toegangsniveau';
PRS.upsertkenmerk (1061, rec.prs_perslid_key, rec.prs_kenmerk10); -- Toegangsniveau 10, 1061
v_errorhint:='Fout bijwerken Facilitor';
PRS.upsertkenmerk (1072, rec.prs_perslid_key, rec.prs_kenmerk11); -- Facilitor 11 , 1072
v_errorhint:='Fout bijwerken ADP';
PRS.upsertkenmerk (1073, rec.prs_perslid_key, rec.prs_kenmerk12); -- ADP 12 , 1073
v_errorhint:='Fout bijwerken Absentiemanager';
PRS.upsertkenmerk (1074, rec.prs_perslid_key, rec.prs_kenmerk13); -- Absentiemanager 13, 1074
v_errorhint:='Fout bijwerken Regas';
PRS.upsertkenmerk (1075, rec.prs_perslid_key, rec.prs_kenmerk14); -- Regas 14, 1075
v_errorhint:='Fout bijwerken Checks';
PRS.upsertkenmerk (1076, rec.prs_perslid_key, rec.prs_kenmerk15); -- Checks 15, 1076
v_errorhint:='Fout bijwerken Accountview';
PRS.upsertkenmerk (1077, rec.prs_perslid_key, rec.prs_kenmerk16); -- Accountview 16, 1077
v_errorhint:='Fout bijwerken Elvy';
PRS.upsertkenmerk (1078, rec.prs_perslid_key, rec.prs_kenmerk17); -- Elvy 17, 1078
v_errorhint:='Fout bijwerken HodNet';
PRS.upsertkenmerk (1079, rec.prs_perslid_key, rec.prs_kenmerk18); -- HodNet 18, 1079
v_errorhint:='Fout bijwerken Proactive';
PRS.upsertkenmerk (1080, rec.prs_perslid_key, rec.prs_kenmerk19); -- Proactive 19, 1080
v_errorhint:='Fout bijwerken Afwijkend';
PRS.upsertkenmerk (1081, rec.prs_perslid_key, rec.prs_kenmerk20); -- Afwijkend 20, 1081
END LOOP;
-- Verwijder personen die niet meer in de import voorkomen.
--FOR rec IN c_del
--LOOP
-- prs.delete_perslid (p_import_key, rec.prs_perslid_key);
--END LOOP;
FOR rec IN c_del
LOOP
-- prs.delete_perslid (p_import_key, rec.prs_perslid_key); -- Deze niet draaien voor HMOD ivm de workflow HRM die men in Facilitor uitvoert...?
-- wel vullen van een kenmerkveld ADP-import 1082
v_errorhint:='Fout bijwerken Check ADP-import';
PRS.upsertkenmerk (1082, rec.prs_perslid_key, 'Let op! Niet in ADP-import - ' || sysdate); -- Niet in import
END LOOP;
COMMIT;
EXCEPTION