YKPN#41337 prs.getfiatteur werkte niet goed voor methode=1

svn path=/Database/trunk/; revision=35300
This commit is contained in:
Jos Groot Lipman
2017-09-13 14:27:26 +00:00
parent 4069fc5607
commit d9ceeac0f0

View File

@@ -262,8 +262,7 @@ AS
)
RETURN NUMBER
IS
lkpbudgethouder prs_perslid.prs_perslid_key%TYPE;
lkpverantwkey prs_perslid.prs_perslid_key%TYPE;
lkpverantwkey prs_kostenplaats.prs_perslid_key%TYPE;
lexcludeisvervanger NUMBER;
lkpverantwlimiet fac_profiel.fac_profiel_limiet%TYPE;
afdkey prs_afdeling.prs_afdeling_key%TYPE;
@@ -273,7 +272,7 @@ AS
BEGIN
lkpverantwkey := -1;
SELECT COALESCE (prs_perslid_key, -1)
INTO lkpbudgethouder
INTO lkpverantwkey
FROM prs_kostenplaats
WHERE prs_kostenplaats_key = pkostenplaats_key;
EXCEPTION
@@ -282,8 +281,8 @@ AS
-- kostenplaats bestaat niet
RETURN -1;
END;
dbms_output.put_line('Budgethouder: '||lkpbudgethouder);
-- lkpbudgethouder is (mits gedefinieerd) de budgethouder van de kp. Het is nog niet gezegd of dit de gevraagde fiatteur is
dbms_output.put_line('Budgethouder: '||lkpverantwkey);
-- lkpverantwkey is (mits gedefinieerd) de budgethouder van de kp. Het is nog niet gezegd of dit de gevraagde fiatteur is
-- Is de meegegeven pexcludekey wellicht een vervanger van kostenplaatsverantwoordelijke van de kostenplaats?
-- Zo ja, dan is in dat geval lkpverantwkey de pexcludekey
IF pexcludekey > 0 THEN
@@ -297,16 +296,17 @@ AS
lmethode := fac.getSetting('prs_approvemethod');
dbms_output.put_line('Approvemethod: '||lmethode);
IF lmethode = 3 THEN
lkpverantwlimiet := prs.getprofiellimiet (lkpbudgethouder, pdisckey);
lkpverantwlimiet := prs.getprofiellimiet (lkpverantwkey, pdisckey);
dbms_output.put_line('Zijn limiet: '||lkpverantwlimiet);
END IF;
dbms_output.put_line('Ondergrens: '||pondergrens);
IF (lmethode = 3 AND lkpverantwlimiet >= pondergrens) -- lkpbudgethouder != -1 is impliciet in die limiet
IF (lmethode = 3 AND lkpverantwlimiet >= pondergrens) -- lkpverantwkey != -1 is impliciet in die limiet
THEN
-- het profiel van de budgethouder is genoeg
RETURN lkpbudgethouder;
RETURN lkpverantwkey;
END IF;
IF (lkpbudgethouder = -1 OR lkpbudgethouder = pexcludekey OR lexcludeisvervanger = 1 OR (lmethode = 3 AND lkpverantwlimiet < pondergrens)) AND (lmethode = 2 OR lmethode = 3)
IF (lkpverantwkey = -1 OR lkpverantwkey = pexcludekey OR lexcludeisvervanger = 1 OR (lmethode = 3 AND lkpverantwlimiet < pondergrens))
AND (lmethode = 2 OR lmethode = 3)
-- doorloop de boom naar boven, met allerlei aannames
THEN
dbms_output.put_line('We gaan de boom in');
@@ -345,7 +345,7 @@ AS
-- vindt de kostenplaatsGROEPverantwoordelijke van altijd de meegegeven kp
BEGIN
SELECT COALESCE (kg.prs_perslid_key, -1)
INTO lkpverantwkey
INTO lkpverantwkey -- variabele bvat nu een kpg-verantwoordelijke, naam klopt niet 100%
FROM prs_kostenplaats k, prs_kostenplaatsgrp kg
WHERE prs_kostenplaats_key = pkostenplaats_key
AND kg.prs_kostenplaatsgrp_key = k.prs_kostenplaatsgrp_key