NOUR#80194 (inzage) planning periodieke taken en workorders
svn path=/Customer/trunk/; revision=63193
This commit is contained in:
@@ -54,6 +54,9 @@ CREATE OR REPLACE PACKAGE NOUR AS
|
||||
p_waarde IN VARCHAR2,
|
||||
p_historymode IN VARCHAR2);
|
||||
PRAGMA RESTRICT_REFERENCES (NOUR_f_pct_gemeensch,WNDS, WNPS);
|
||||
|
||||
PROCEDURE update_planning_wo (p_mld_opdr_key IN NUMBER);
|
||||
|
||||
END NOUR;
|
||||
/
|
||||
|
||||
@@ -374,6 +377,60 @@ AS
|
||||
END;
|
||||
END IF;
|
||||
END Kmd_Update_Kenmerkdeel;
|
||||
|
||||
PROCEDURE update_planning_wo (p_mld_opdr_key IN NUMBER)
|
||||
AS
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (200);
|
||||
v_result NUMBER;
|
||||
v_uren_new NUMBER;
|
||||
v_uren NUMBER;
|
||||
BEGIN
|
||||
-- Als het aantal te verwachte uitvoerdagen is gevuld wordt er dus met een planning gewerkt
|
||||
-- Dan de uren uit deze planning optellen en vergelijken met de opdrachturen hiermee
|
||||
-- Wijken deze af tov elkaar, dan opdrachturen bijwerken!
|
||||
SELECT 1
|
||||
INTO v_result
|
||||
FROM mld_srtkenmerk sk, mld_kenmerk k, mld_kenmerkopdr ko
|
||||
WHERE sk.mld_srtkenmerk_key = 1601
|
||||
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
||||
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND ko.mld_opdr_key = p_mld_opdr_key;
|
||||
|
||||
SELECT SUM (fac.safe_to_number (ko.mld_kenmerkopdr_waarde)),
|
||||
NVL (o.mld_opdr_uren, 0)
|
||||
INTO v_uren_new, v_uren
|
||||
FROM mld_srtkenmerk sk,
|
||||
mld_kenmerk k,
|
||||
mld_kenmerkopdr ko,
|
||||
mld_opdr o
|
||||
WHERE sk.mld_srtkenmerk_key = 1602
|
||||
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
||||
AND ko.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND ko.mld_opdr_key = o.mld_opdr_key
|
||||
AND o.mld_opdr_key = p_mld_opdr_key
|
||||
GROUP BY ko.mld_opdr_key, o.mld_opdr_uren;
|
||||
|
||||
IF v_result = 1 AND v_uren <> v_uren_new
|
||||
THEN
|
||||
UPDATE mld_opdr o
|
||||
SET o.mld_opdr_uren = v_uren_new
|
||||
WHERE o.mld_opdr_key = p_mld_opdr_key;
|
||||
|
||||
-- aanmaken ordtrk in fac_tracking
|
||||
INSERT INTO fac_tracking (fac_srtnotificatie_key,
|
||||
fac_tracking_refkey,
|
||||
fac_tracking_oms)
|
||||
VALUES (
|
||||
662,
|
||||
p_mld_opdr_key,
|
||||
'Aantal uren bijgewerkt op basis van ingevulde werkplanning');
|
||||
|
||||
COMMIT;
|
||||
END IF;
|
||||
|
||||
END update_planning_wo;
|
||||
|
||||
END NOUR;
|
||||
/
|
||||
@@ -10461,20 +10518,20 @@ SELECT DISTINCT
|
||||
CREATE OR REPLACE VIEW NOUR_V_BESCHIKKING
|
||||
(
|
||||
PRS_PERSLID_KEY,
|
||||
PLANDAG,
|
||||
PLANDAG,
|
||||
BESCHIKBARE_TIJD_UREN
|
||||
)
|
||||
AS
|
||||
SELECT i.prs_perslid_key,
|
||||
UPPER (
|
||||
SELECT i.prs_perslid_key,
|
||||
UPPER (
|
||||
DECODE (i.prs_perslid_inzetbaar_dag,
|
||||
1, 'Maandag',
|
||||
2, 'Dinsdag',
|
||||
3, 'Woensdag',
|
||||
4, 'Donderdag',
|
||||
5, 'Vrijdag',
|
||||
6, 'Zaterdag',
|
||||
7, 'Zondag')) AS plandag,
|
||||
1, 'Monday',
|
||||
2, 'Tuesday',
|
||||
3, 'Wednesday',
|
||||
4, 'Thursday',
|
||||
5, 'Friday',
|
||||
6, 'Saturday',
|
||||
7, 'Sunday')) AS plandag_eng,
|
||||
(i.prs_perslid_inzetbaar_tot - i.prs_perslid_inzetbaar_van) / 60 beschikbare_tijd_uren
|
||||
FROM prs_perslid_inzetbaar i;
|
||||
|
||||
@@ -10488,7 +10545,8 @@ AS
|
||||
NVL (b.beschikbare_tijd_uren, 0) beschikbare_uren
|
||||
FROM nour_v_intern_uitv uitv, nour_v_plandag dat, nour_v_beschikking b
|
||||
WHERE b.prs_perslid_key(+) = uitv.prs_perslid_key
|
||||
AND b.plandag(+) = dat.dag
|
||||
AND upper(b.plandag(+)) = upper(dat.dag)
|
||||
OR upper(b.plandag_eng(+))= upper(dat.dag )
|
||||
ORDER BY dat.datum;
|
||||
|
||||
-- Stap 4: een view voor een kalender rapport met opdrachten waar een planning en raming op zit
|
||||
|
||||
Reference in New Issue
Block a user