FSN#13718
svn path=/Customer/trunk/; revision=13574
This commit is contained in:
100
CWTD/cwtd.sql
100
CWTD/cwtd.sql
@@ -1,7 +1,7 @@
|
||||
-- Script containing customer specific configuration sql statements for CWTD
|
||||
-- (c) 2008 Facilitor
|
||||
-- $Revision: 1 $
|
||||
-- $Modtime: 3-03-08 17:20 $
|
||||
-- $Revision: 2 $
|
||||
-- $Modtime: 1-04-08 16:38 $
|
||||
--
|
||||
-- Support: +31 53 4800700
|
||||
|
||||
@@ -243,7 +243,7 @@ CREATE OR REPLACE PROCEDURE cwtd_update_persoon (p_applname IN VARCHAR2, p_applr
|
||||
AS
|
||||
|
||||
-- Constanten (LET OP: deze waarden moeten letterlijk in de DB aabwezig zijn!)
|
||||
c_usrtab_key INTEGER := 1; -- Tbv LOCATIE
|
||||
c_usrtab_key INTEGER := 1; -- Tbv GEBOUW
|
||||
c_srtgebouw_default INTEGER := 1;
|
||||
c_srtruimte_default INTEGER := 1;
|
||||
|
||||
@@ -293,7 +293,7 @@ AS
|
||||
, lp.prs_perslid_tussenvoegsel
|
||||
, lp.prs_perslid_voorletters
|
||||
, lp.prs_perslid_voornaam
|
||||
, lp.prs_perslid_telefoonnr
|
||||
, DECODE (lp.prs_perslid_telefoonnr, '0', null, lp.prs_perslid_telefoonnr) prs_perslid_telefoonnr
|
||||
, lp.prs_perslid_mobiel
|
||||
, lp.prs_perslid_oslogin
|
||||
, lp.prs_perslid_email
|
||||
@@ -317,7 +317,6 @@ AS
|
||||
v_prs_key_cnt NUMBER (10);
|
||||
v_srtperslid_key NUMBER (10);
|
||||
v_afdeling_key NUMBER (10);
|
||||
v_locatie_key NUMBER (10);
|
||||
v_gebouw_key NUMBER (10);
|
||||
v_verdieping_key NUMBER (10);
|
||||
v_ruimte_key NUMBER (10);
|
||||
@@ -343,8 +342,8 @@ AS
|
||||
o_afdeling_key NUMBER (10); -- huidige (oude) afdeling
|
||||
l_nrkps NUMBER;
|
||||
v_nr_werkplek NUMBER;
|
||||
v_current_locatie_key NUMBER;
|
||||
v_new_locatie_key NUMBER;
|
||||
v_current_gebouw_key NUMBER;
|
||||
v_new_gebouw_key NUMBER;
|
||||
|
||||
BEGIN
|
||||
|
||||
@@ -671,12 +670,12 @@ BEGIN
|
||||
(prs_perslid_naam, prs_perslid_tussenvoegsel, prs_perslid_module,
|
||||
prs_perslid_voorletters, prs_perslid_voornaam,
|
||||
prs_perslid_telefoonnr, prs_perslid_mobiel, prs_perslid_oslogin, prs_perslid_email, prs_perslid_nr,
|
||||
prs_perslid_titel, prs_srtperslid_key, prs_afdeling_key, prs_perslid_aanmaak
|
||||
prs_perslid_titel, prs_srtperslid_key, prs_afdeling_key, prs_perslid_aanmaak, fac_profiel_key
|
||||
)
|
||||
VALUES (v_perslid_naam, v_perslid_tussenvoegsel, 'PRS',
|
||||
rec_prs_upd.prs_perslid_voorletters, rec_prs_upd.prs_perslid_voornaam,
|
||||
rec_prs_upd.prs_perslid_telefoonnr, rec_prs_upd.prs_perslid_mobiel, rec_prs_upd.prs_perslid_oslogin, rec_prs_upd.prs_perslid_email, rec_prs_upd.prs_perslid_nr,
|
||||
rec_prs_upd.prs_perslid_titel, v_srtperslid_key, v_afdeling_key, c_perslid_aanmaak
|
||||
rec_prs_upd.prs_perslid_titel, v_srtperslid_key, v_afdeling_key, c_perslid_aanmaak, 21
|
||||
);
|
||||
|
||||
fac.imp_writelog (p_applname,
|
||||
@@ -699,7 +698,7 @@ BEGIN
|
||||
prs_perslid_tussenvoegsel = v_perslid_tussenvoegsel,
|
||||
prs_perslid_voorletters = rec_prs_upd.prs_perslid_voorletters,
|
||||
prs_perslid_voornaam = NVL (rec_prs_upd.prs_perslid_voornaam, prs_perslid_voornaam),
|
||||
prs_perslid_telefoonnr = NVL (rec_prs_upd.prs_perslid_telefoonnr, prs_perslid_telefoonnr),
|
||||
prs_perslid_telefoonnr = rec_prs_upd.prs_perslid_telefoonnr,
|
||||
prs_perslid_titel = rec_prs_upd.prs_perslid_titel,
|
||||
prs_srtperslid_key = v_srtperslid_key,
|
||||
prs_afdeling_key = v_afdeling_key,
|
||||
@@ -763,23 +762,26 @@ BEGIN
|
||||
THEN
|
||||
BEGIN
|
||||
|
||||
-- bepaal huidige alg_locatie_key
|
||||
SELECT alg_locatie_key
|
||||
INTO v_current_locatie_key
|
||||
FROM prs_v_werkplekperslid_gegevens
|
||||
WHERE prs_perslid_key = rec_prs_upd.prs_perslid_key;
|
||||
-- bepaal huidige alg_gebouw_key
|
||||
SELECT alg_gebouw_key
|
||||
INTO v_current_gebouw_key
|
||||
FROM prs_v_werkplekperslid_gegevens pwg
|
||||
, alg_gebouw g
|
||||
WHERE prs_perslid_key = rec_prs_upd.prs_perslid_key
|
||||
AND g.alg_gebouw_upper = pwg.alg_gebouw_upper
|
||||
AND g.alg_gebouw_verwijder IS NULL;
|
||||
|
||||
-- bepaal nieuwe alg_locatie_key
|
||||
SELECT lo.alg_locatie_key
|
||||
INTO v_new_locatie_key
|
||||
-- bepaal nieuwe alg_gebouw_key
|
||||
SELECT g.alg_gebouw_key
|
||||
INTO v_new_gebouw_key
|
||||
FROM fac_usrdata ud,
|
||||
alg_locatie lo
|
||||
alg_gebouw g
|
||||
WHERE ud.fac_usrtab_key = c_usrtab_key
|
||||
AND ud.fac_usrdata_code = lo.alg_locatie_code
|
||||
AND ud.fac_usrdata_omschr = rec_prs_upd.prs_locatie_omschrijving
|
||||
AND lo.alg_locatie_verwijder IS NULL;
|
||||
AND ud.fac_usrdata_omschr = g.alg_gebouw_code
|
||||
AND ud.fac_usrdata_code = rec_prs_upd.prs_afdeling_naam
|
||||
AND g.alg_gebouw_verwijder IS NULL;
|
||||
-- indien gelijk dan werkplek niet updaten.
|
||||
v_update := (v_current_locatie_key <> v_new_locatie_key);
|
||||
v_update := (v_current_gebouw_key <> v_new_gebouw_key);
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
@@ -788,7 +790,7 @@ BEGIN
|
||||
p_applrun,
|
||||
'I',
|
||||
v_errormsg,
|
||||
'huidige of nieuwe alg_locatie_key kan niet bepaald worden?! personeelsnummer: '
|
||||
'huidige of nieuwe alg_gebouw_key kan niet bepaald worden?! personeelsnummer: '
|
||||
|| rec_prs_upd.prs_perslid_nr
|
||||
);
|
||||
v_update := FALSE;
|
||||
@@ -796,7 +798,7 @@ BEGIN
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
IF v_update AND (rec_prs_upd.prs_locatie_omschrijving IS NOT NULL)
|
||||
IF v_update AND (rec_prs_upd.prs_afdeling_naam IS NOT NULL)
|
||||
AND ((v_aktie = 'INSERT') OR (v_aktie = 'UPDATE') AND (v_nr_werkplek<=1))
|
||||
THEN
|
||||
|
||||
@@ -838,13 +840,13 @@ BEGIN
|
||||
|
||||
BEGIN
|
||||
|
||||
SELECT lo.alg_locatie_key
|
||||
INTO v_locatie_key
|
||||
FROM FAC_USRDATA ud, ALG_LOCATIE lo
|
||||
SELECT g.alg_gebouw_key
|
||||
INTO v_gebouw_key
|
||||
FROM FAC_USRDATA ud, ALG_gebouw g
|
||||
WHERE ud.fac_usrtab_key = c_usrtab_key
|
||||
AND ud.fac_usrdata_code = lo.alg_locatie_code
|
||||
AND ud.fac_usrdata_omschr = rec_prs_upd.prs_locatie_omschrijving
|
||||
AND lo.alg_locatie_verwijder IS NULL;
|
||||
AND ud.fac_usrdata_omschr = g.alg_gebouw_code
|
||||
AND ud.fac_usrdata_code = rec_prs_upd.prs_afdeling_naam
|
||||
AND g.alg_gebouw_verwijder IS NULL;
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
@@ -856,42 +858,12 @@ BEGIN
|
||||
IF NOT v_update
|
||||
THEN
|
||||
v_errorhint :=
|
||||
'Onbekende Locatie-omschrijving '
|
||||
|| rec_prs_upd.prs_locatie_omschrijving
|
||||
'Onbekende Gebouw-omschrijving '
|
||||
|| rec_prs_upd.prs_afdeling_naam
|
||||
|| '; personeelsnummer: '
|
||||
|| rec_prs_upd.prs_perslid_nr;
|
||||
fac.imp_writelog (p_applname, p_applrun, 'I', v_errormsg, v_errorhint);
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT MIN (alg_gebouw_code)
|
||||
INTO v_gebouw_code
|
||||
FROM alg_gebouw
|
||||
WHERE alg_locatie_key = v_locatie_key AND alg_gebouw_verwijder IS NULL;
|
||||
|
||||
SELECT alg_gebouw_key
|
||||
INTO v_gebouw_key
|
||||
FROM alg_gebouw
|
||||
WHERE alg_locatie_key = v_locatie_key
|
||||
AND alg_gebouw_code = v_gebouw_code
|
||||
AND alg_gebouw_verwijder IS NULL;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
INSERT INTO alg_gebouw
|
||||
(alg_locatie_key, alg_srtgebouw_key, alg_gebouw_code, alg_gebouw_naam
|
||||
)
|
||||
VALUES (v_locatie_key, c_srtgebouw_default, '0', 'Onbekend'
|
||||
);
|
||||
|
||||
v_errormsg := 'Bepalen alg_gebouw_key adhv v_locatie_key=['||to_char(v_locatie_key)||'] en v_gebouw_code=['||v_gebouw_code||']';
|
||||
|
||||
SELECT alg_gebouw_key
|
||||
INTO v_gebouw_key
|
||||
FROM alg_gebouw
|
||||
WHERE alg_locatie_key = v_locatie_key
|
||||
AND alg_gebouw_code = v_gebouw_code
|
||||
AND alg_gebouw_verwijder IS NULL;
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
v_errormsg := 'Bepalen alg_verdieping_key';
|
||||
@@ -1017,7 +989,7 @@ BEGIN
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errorhint := 'perslid_nr:' || rec_prs_upd.prs_perslid_nr || ' locatie:' || rec_prs_upd.prs_locatie_omschrijving || ' ' || v_errorhint || ' {' || v_errormsg || '}';
|
||||
v_errorhint := 'perslid_nr:' || rec_prs_upd.prs_perslid_nr || ' gebouw:' || rec_prs_upd.prs_afdeling_naam || ' ' || v_errorhint || ' {' || v_errormsg || '}';
|
||||
v_errormsg := '(ORACLE error ' || oracle_err_num || '/' || oracle_err_mes || ')';
|
||||
fac.imp_writelog (p_applname, p_applrun, 'E', v_errormsg, v_errorhint);
|
||||
END;
|
||||
|
||||
Reference in New Issue
Block a user