UWVA#36431 fix

svn path=/Database/trunk/; revision=35092
This commit is contained in:
Peter Feij
2017-08-25 12:06:15 +00:00
parent 442801663d
commit a2992f9c23

View File

@@ -282,6 +282,7 @@ 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
-- Is de meegegeven pexcludekey wellicht een vervanger van kostenplaatsverantwoordelijke van de kostenplaats?
-- Zo ja, dan is in dat geval lkpverantwkey de pexcludekey
@@ -292,13 +293,23 @@ AS
WHERE prs_perslid_key_alt = pexcludekey
AND prs_perslid_key = lkpverantwkey;
END IF;
dbms_output.put_line('ExcludeIsVervanger: '||lexcludeisvervanger);
lmethode := fac.getSetting('prs_approvemethod');
dbms_output.put_line('Approvemethod: '||lmethode);
IF lmethode = 3 THEN
lkpverantwlimiet := prs.getprofiellimiet (lkpbudgethouder, 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
THEN
-- het profiel van de budgethouder is genoeg
RETURN lkpbudgethouder;
END IF;
IF (lkpbudgethouder = -1 OR lkpbudgethouder = 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');
-- waar hoort deze kp bij?
BEGIN
SELECT prs_afdeling_key, prs_afdeling_parentkey
@@ -318,13 +329,16 @@ AS
FROM prs_kostenplaats k, prs_afdeling a
WHERE k.prs_kostenplaats_key(+) = a.prs_kostenplaats_key
AND a.prs_afdeling_verwijder IS NULL
AND a.prs_afdeling_key = parentafdkey;
AND a.prs_afdeling_key = parentafdkey;
dbms_output.put_line('Volgende budgethouder: '||lkpverantwkey);
IF lmethode = 3 THEN
lkpverantwlimiet := prs.getprofiellimiet (lkpverantwkey, pdisckey);
dbms_output.put_line('Zijn limiet: '||lkpverantwlimiet);
END IF;
END LOOP;
-- nu heb ik er een of kan ik er geen vinden
END IF;
dbms_output.put_line('Gevonden budgethouder voor de kpgroep-tak: '||lkpverantwkey);
-- Nu: als ik methode 1 heb, of methode 2 niemand opleverde (ondanks afdelingskostenplaats): de kpngroepverantwoordelijke
IF lkpverantwkey = -1 OR lkpverantwkey = pexcludekey OR lexcludeisvervanger = 1 OR (lmethode = 3 AND lkpverantwlimiet < pondergrens)
THEN
@@ -343,6 +357,7 @@ AS
RETURN -1;
END;
END IF;
dbms_output.put_line('Volgende budgethouder: '||lkpverantwkey);
RETURN lkpverantwkey;
END;