FCLT#55208 Invalid na upgrade DB35

svn path=/Customer/trunk/; revision=39665
This commit is contained in:
Erik Groener
2018-11-06 11:05:11 +00:00
parent ec754e83f2
commit 48dc33da17
4 changed files with 27 additions and 150 deletions

View File

@@ -1676,7 +1676,7 @@ AS
AND cnt_kenmerkcontract_waarde = fac_usrdata_key)
totalgas
FROM cnt_contract c,
(SELECT cp.cnt_contract_key,
(SELECT cp_1.cnt_contract_key,
l.alg_locatie_key,
l.alg_locatie_omschrijving,
l.alg_locatie_code,
@@ -1687,14 +1687,16 @@ AS
g.alg_gebouw_code,
g.alg_gebouw_naam,
g.prs_kostenplaats_key,
cnt_contract_plaats_gewicht
FROM cnt_contract_plaats cp, alg_gebouw g, alg_locatie l
WHERE cnt_contract_plaats_verwijder IS NULL
AND cp.cnt_alg_plaats_key = g.alg_gebouw_key
cp_1.cnt_contract_plaats_gewicht
FROM cnt_contract_plaats cp_1,
alg_gebouw g,
alg_locatie l
WHERE cp_1.cnt_contract_plaats_verwijder IS NULL
AND cp_1.cnt_alg_plaats_key = g.alg_gebouw_key
AND g.alg_locatie_key = l.alg_locatie_key
AND cnt_alg_plaats_code = 'G'
AND cp_1.cnt_alg_plaats_code = 'G'
UNION ALL
SELECT cp.cnt_contract_key,
SELECT cp_2.cnt_contract_key,
l.alg_locatie_key,
l.alg_locatie_omschrijving,
l.alg_locatie_code,
@@ -1705,16 +1707,17 @@ AS
NULL,
NULL,
NULL,
cnt_contract_plaats_gewicht
FROM cnt_contract_plaats cp, alg_locatie l
WHERE cnt_contract_plaats_verwijder IS NULL
AND cp.cnt_alg_plaats_key = l.alg_locatie_key
AND cnt_alg_plaats_code = 'L') cp,
cp_2.cnt_contract_plaats_gewicht
FROM cnt_contract_plaats cp_2,
alg_locatie l
WHERE cp_2.cnt_contract_plaats_verwijder IS NULL
AND cp_2.cnt_alg_plaats_key = l.alg_locatie_key
AND cp_2.cnt_alg_plaats_code = 'L') cp,
prs_bedrijf b,
prs_v_perslid_fullnames_all pf1,
prs_kostenplaats pk
WHERE ins_discipline_key = 1101
AND cnt_contract_verwijder IS NULL
WHERE c.ins_discipline_key = 1101
AND c.cnt_contract_verwijder IS NULL
AND c.cnt_contract_key = cp.cnt_contract_key(+)
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key(+)
AND c.cnt_prs_perslid_key = pf1.prs_perslid_key(+)
@@ -2044,7 +2047,7 @@ BEGIN
-- 'NR' betekent dat op basis van Personeelsnummer wordt gematched.
-- 'A' betekent altijd alle (andere/overige) werkplekken verwijderen
prs.update_perslid (p_import_key, 'LOGIN', NULL);
hpji_post_update_perslid(p_import_key);
-- Verwijder personen die niet meer in de import voorkomen.
@@ -2054,9 +2057,9 @@ BEGIN
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
END;
END LOOP;
END hpji_update_prs;
/

View File

@@ -10,12 +10,12 @@ set echo on
spool xnmpc.lst
-- script om dagelijks terugkerende scripts aan te roepen.
-- script om dagelijks terugkerende scripts aan te roepen.
CREATE OR REPLACE PROCEDURE nmpc_select_daily_task (p_applname IN VARCHAR2, p_applrun IN VARCHAR2)
AS
CURSOR wp
IS
CURSOR wp
IS
SELECT p.prs_perslid_key, MAX (r.alg_ruimte_key) alg_ruimte_key
FROM prs_perslid p, prs_ruimteafdeling ra, alg_ruimte r
WHERE p.prs_perslid_verwijder IS NULL
@@ -34,7 +34,7 @@ BEGIN
LOOP
prs.movetoruimte (rec.prs_perslid_key, rec.alg_ruimte_key, 'A');
END LOOP;
COMMIT;
END;
/
@@ -165,7 +165,7 @@ AS
omschrijving,
SUBSTR (mld_melding_opmerking, 1, 1000) opmerking
FROM mld_melding m, prs_v_perslid_fullnames pf, mld_stdmelding std
WHERE mld_ins_discipline_key = 561
WHERE std.mld_ins_discipline_key = 561
AND std.mld_stdmelding_key = m.mld_stdmelding_key
AND m.prs_perslid_key = pf.prs_perslid_key;

View File

@@ -2281,25 +2281,6 @@ AS
WHERE pb.prs_bedrijf_naam_upper = UPPER(eb.prs_bedrijf_naam)
AND pb.prs_leverancier_nr = l_rec.bgt_bedrijf_code;
--
BEGIN
SELECT prs_kostenplaatsgrp_key
INTO a_kostenplaatsgrp_key
FROM prs_kostenplaatsgrp
WHERE bgt_project_key = a_kosten_keys.bgt_project_key;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO prs_kostenplaatsgrp
( prs_kostenplaatsgrp_nr
, prs_kostenplaatsgrp_oms
, bgt_project_key
)
VALUES
( l_rec.bgt_discipline_code
, l_rec.bgt_project_code
, a_kosten_keys.bgt_project_key
)
RETURNING prs_kostenplaatsgrp_key INTO a_kostenplaatsgrp_key;
END;
--
IF (l_rec.prs_kostenplaats_nr IS NOT NULL) THEN
BEGIN
@@ -2321,7 +2302,7 @@ AS
, l_rec.prs_kostenplaats_oms
, UPPER(TO_CHAR(l_rec.prs_kostenplaats_nr))
, 'PRJ'
, a_kostenplaatsgrp_key
, 1
)
RETURNING prs_kostenplaats_key INTO a_kostenplaats_key;
END;

View File

@@ -381,113 +381,6 @@ AS
-- Voor verwijderen van deelproject is delete_kostenplaatsen niet meer van toepassing
-- omdat een kostenplaats nu bij een project (ins_discipline) hoort.
-- Alleen als de discipline wordt verwijderd zouden ook de bijbehorende kostenplaatsen kunnen worden verwijderd.
PROCEDURE delete_kostenplaatsen(p_bgt_project_key IN NUMBER)
AS
CURSOR c_kostenplaats(p_kpgrp_key In NUMBER)
IS
SELECT prs_kostenplaats_key
FROM prs_kostenplaats
WHERE prs_kostenplaatsgrp_key = p_kpgrp_key;
iprj NUMBER;
iopd NUMBER;
ibdr NUMBER;
v_kpgrp_key NUMBER;
i NUMBER;
BEGIN -- delete_kostenplaatsen
iprj := p_bgt_project_key;
log_info('I', 'Kostenplaatsen en kostenplaatsgroep:');
-- Eerst even wat referenties verwijderen.
log_info('I', 'referenties vanuit bgt_project wissen..');
--
UPDATE bgt_project
SET prs_kostenplaats_key = NULL
WHERE bgt_project_key = p_bgt_project_key;
--
log_info('I', 'Referenties vanuit kostensoort wissen..');
--
UPDATE prs_kostensoort
SET prs_kostenplaats_key = NULL
WHERE prs_kostensoort_key IN
(SELECT s.prs_kostensoort_key
FROM prs_kostensoort s
, prs_kostensoortgrp g
, bgt_kostenrubriek r
WHERE s.prs_kostensoortgrp_key = g.prs_kostensoortgrp_key
AND g.bgt_kostenrubriek_key = r.bgt_kostenrubriek_key
AND r.bgt_project_key = p_bgt_project_key
);
--
BEGIN
SELECT g.prs_kostenplaatsgrp_key
INTO v_kpgrp_key
FROM prs_kostenplaatsgrp g
WHERE g.bgt_project_key = p_bgt_project_key;
--
-- Foutieve verwijzingen verwijderen.
-- (vanuit een ander deelproject wordt naar een kostenplaats verwezen die hier verwijderd wordt.)
log_info('I', 'Referenties vanuit ander project wissen..');
--
UPDATE bgt_project
SET prs_kostenplaats_key = NULL
WHERE prs_kostenplaats_key IN
(SELECT prs_kostenplaats_key
FROM prs_kostenplaats
WHERE prs_kostenplaatsgrp_key = v_kpgrp_key
);
--
log_info('I', 'Referenties vanuit andere kostensoort wissen..');
--
UPDATE prs_kostensoort
SET prs_kostenplaats_key = NULL
WHERE prs_kostenplaats_key IN
(SELECT prs_kostenplaats_key
FROM prs_kostenplaats
WHERE prs_kostenplaatsgrp_key = v_kpgrp_key
);
--
log_info('I', 'Referenties vanuit opdracht wissen..');
--
UPDATE mld_opdr
SET prs_kostenplaats_key = NULL
WHERE prs_kostenplaats_key IN
(SELECT kp.prs_kostenplaats_key
FROM prs_kostenplaats kp
WHERE kp.prs_kostenplaatsgrp_key = v_kpgrp_key
);
--
log_info('I', 'Referenties vanuit budget wissen..');
UPDATE bgt_budget
SET prs_kostenplaats_key = NULL
WHERE prs_kostenplaats_key IN
(SELECT kp.prs_kostenplaats_key
FROM prs_kostenplaats kp
WHERE kp.prs_kostenplaatsgrp_key = v_kpgrp_key
);
--
-- kostenplaatsen van dit project verwijderen
DELETE
FROM prs_kostenplaats
WHERE prs_kostenplaatsgrp_key = v_kpgrp_key;
--
i := sql%rowcount;
log_info('I', 'Aantal kostenplaatsen verwijderd: ' || TO_CHAR(i)
, iprj
);
-- kostenplaatsgroep van dit project verwijderen
DELETE
FROM prs_kostenplaatsgrp
WHERE prs_kostenplaatsgrp_key = v_kpgrp_key;
log_info('I', 'Kostenplaatsgroep verwijderd: ' || TO_CHAR(v_kpgrp_key)
, iprj
);
EXCEPTION
WHEN NO_DATA_FOUND THEN log_info('I', 'Geen kostenplaatsgroep aanwezig.');
WHEN OTHERS THEN log_info('W', NULL, iprj, NULL, NULL, NULL, NULL);
-- xmsg, iprj, irub, igrp, isrt, ibgt, imut, iopd, ifac, ibdr
END;
END; -- delete_kostenplaatsen
PROCEDURE delete_deelproject(p_bgt_project_key IN NUMBER)
AS