2368 lines
114 KiB
SQL
2368 lines
114 KiB
SQL
-- Script containing customer specific db-configuration for WTCA.
|
|
-- (c) 2010 SG|facilitor bv
|
|
-- $Revision: 19 $
|
|
-- $Modtime: 21-06-11 16:03 $
|
|
--
|
|
-- Support: +31 53 4800700
|
|
|
|
set echo on
|
|
|
|
spool xwtca.lst
|
|
|
|
/* Formatted on 6-9-2010 15:44:44 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE PACKAGE WTCA
|
|
AS
|
|
-- PACKAGES voor de WTCA specifieke ondersteuning
|
|
PROCEDURE freezeopdrachten (p_uv_key IN NUMBER);
|
|
FUNCTION bepaal_wtc_kantooruren (van_date IN DATE, tot_date IN DATE)
|
|
RETURN NUMBER;
|
|
END;
|
|
/
|
|
|
|
/* Formatted on 16-9-2010 14:15:16 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE PACKAGE BODY WTCA
|
|
AS
|
|
PROCEDURE freezeopdrachten (p_uv_key IN NUMBER)
|
|
AS
|
|
-- Cursor loopt over alle opdrachten naar Uitvoerende 'p_uv_key' die voor
|
|
-- de 1e van deze maand (technisch) zijn afgerond; deze worden "bevroren"
|
|
-- ofwel administratief afgemeld!
|
|
CURSOR c1
|
|
IS
|
|
SELECT mld_opdr_key
|
|
FROM mld_opdr o, prs_kostenplaats kp
|
|
WHERE o.mld_statusopdr_key = 9 -- KV
|
|
AND o.mld_uitvoerende_keys = p_uv_key
|
|
AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
|
AND kp.prs_kostenplaats_upper = 'WTC'
|
|
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) <
|
|
TO_DATE (TO_CHAR (SYSDATE, 'yyyymm') || '01',
|
|
'yyyymmdd');
|
|
|
|
c_applname VARCHAR2 (50) := 'FREEZE_OPDR';
|
|
c_applrun VARCHAR2 (30)
|
|
:= TO_CHAR (SYSDATE, 'dd-mm-yyyy hh24:mi:ss') ;
|
|
v_errormsg VARCHAR2 (1000);
|
|
oracle_err_num NUMBER;
|
|
oracle_err_mes VARCHAR2 (200);
|
|
v_count NUMBER (10);
|
|
v_count_upd NUMBER (10);
|
|
v_bedrijf_naam VARCHAR2 (30);
|
|
BEGIN
|
|
v_count_upd := 0;
|
|
|
|
-- Verwijder log-regels van voor deze maand.
|
|
DELETE FROM imp_log
|
|
WHERE imp_log_applicatie = c_applname
|
|
AND imp_log_datum <
|
|
TO_DATE (TO_CHAR (SYSDATE, 'yyyymm') || '01',
|
|
'yyyymmdd');
|
|
|
|
-- Controleer bestaan uitvoerende.
|
|
v_errormsg := 'Fout bij bepalen uitvoerende.';
|
|
|
|
SELECT b.prs_bedrijf_naam
|
|
INTO v_bedrijf_naam
|
|
FROM prs_v_aanwezigbedrijf b
|
|
WHERE b.prs_bedrijf_key = p_uv_key AND b.prs_bedrijf_uitvoerende = 1;
|
|
|
|
-- AV-verklaren opdrachten naar Uitvoerende 'p_uv_key' die voor de 1e van
|
|
-- deze maand (technisch) zijn afgemeld!
|
|
FOR rec IN c1
|
|
LOOP
|
|
MLD.setopdrachtstatus (rec.mld_opdr_key, 7, 4);
|
|
|
|
v_count_upd := v_count_upd + 1;
|
|
|
|
COMMIT;
|
|
END LOOP;
|
|
|
|
fac.imp_writelog (
|
|
c_applname,
|
|
c_applrun,
|
|
'S',
|
|
'Proces: ' || TO_CHAR (v_count_upd) || ' opdrachten bevroren',
|
|
''
|
|
);
|
|
COMMIT;
|
|
EXCEPTION
|
|
WHEN OTHERS
|
|
THEN
|
|
oracle_err_num := SQLCODE;
|
|
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
|
v_errormsg :=
|
|
v_errormsg
|
|
|| ' ORACLE (error '
|
|
|| oracle_err_num
|
|
|| '/'
|
|
|| oracle_err_mes
|
|
|| ')';
|
|
fac.imp_writelog (c_applname,
|
|
c_applrun,
|
|
'E',
|
|
v_errormsg,
|
|
'');
|
|
COMMIT;
|
|
END freezeopdrachten;
|
|
|
|
FUNCTION bepaal_wtc_kantooruren (van_date IN DATE, tot_date IN DATE)
|
|
RETURN NUMBER
|
|
IS
|
|
c_kt_van NUMBER := 8.5;
|
|
c_kt_tot NUMBER := 17.5;
|
|
v_dl NUMBER;
|
|
lbackwards BOOLEAN;
|
|
v_van_date DATE;
|
|
v_van_uur NUMBER;
|
|
v_tot_date DATE;
|
|
v_tot_uur NUMBER;
|
|
v_loop_date DATE;
|
|
v_count NUMBER;
|
|
BEGIN
|
|
v_dl := 0;
|
|
|
|
IF (van_date > tot_date)
|
|
THEN
|
|
v_van_date := TO_DATE (TO_CHAR (tot_date, 'yyyymmddhh24mi'), 'yyyymmddhh24mi');
|
|
v_tot_date := TO_DATE (TO_CHAR (van_date, 'yyyymmddhh24mi'), 'yyyymmddhh24mi');
|
|
lbackwards := TRUE;
|
|
ELSE
|
|
v_van_date := TO_DATE (TO_CHAR (van_date, 'yyyymmddhh24mi'), 'yyyymmddhh24mi');
|
|
v_tot_date := TO_DATE (TO_CHAR (tot_date, 'yyyymmddhh24mi'), 'yyyymmddhh24mi');
|
|
lbackwards := FALSE;
|
|
END IF;
|
|
|
|
v_loop_date := TRUNC (van_date);
|
|
|
|
IF ( ( ( (v_van_date - TRUNC (v_van_date)) * 24) - c_kt_van) < 0)
|
|
THEN
|
|
v_van_uur := c_kt_van;
|
|
ELSE
|
|
IF ( ( ( (v_van_date - TRUNC (v_van_date)) * 24) - c_kt_tot) < 0)
|
|
THEN
|
|
v_van_uur := (v_van_date - TRUNC (v_van_date)) * 24;
|
|
ELSE
|
|
v_van_uur := c_kt_tot;
|
|
END IF;
|
|
END IF;
|
|
|
|
IF ( ( ( (v_tot_date - TRUNC (v_tot_date)) * 24) - c_kt_van) < 0)
|
|
THEN
|
|
v_tot_uur := c_kt_van;
|
|
ELSE
|
|
IF ( ( ( (v_tot_date - TRUNC (v_tot_date)) * 24) - c_kt_tot) < 0)
|
|
THEN
|
|
v_tot_uur := (v_tot_date - TRUNC (v_tot_date)) * 24;
|
|
ELSE
|
|
v_tot_uur := c_kt_tot;
|
|
END IF;
|
|
END IF;
|
|
|
|
WHILE (v_loop_date <= v_tot_date)
|
|
LOOP
|
|
SELECT COUNT ( * )
|
|
INTO v_count
|
|
FROM mld_vrije_dagen
|
|
WHERE mld_vrije_dagen_datum = v_loop_date;
|
|
|
|
IF (v_count = 0 AND TO_CHAR (v_loop_date, 'd') NOT IN ('1', '7'))
|
|
THEN
|
|
CASE
|
|
WHEN TRUNC (v_van_date) = TRUNC (v_tot_date)
|
|
THEN
|
|
v_dl := v_dl + (v_tot_uur - v_van_uur);
|
|
WHEN v_loop_date = TRUNC (v_van_date)
|
|
THEN
|
|
v_dl := v_dl + (c_kt_tot - v_van_uur);
|
|
WHEN v_loop_date = TRUNC (v_tot_date)
|
|
THEN
|
|
v_dl := v_dl + (v_tot_uur - c_kt_van);
|
|
ELSE
|
|
v_dl := v_dl + (c_kt_tot - c_kt_van);
|
|
END CASE;
|
|
END IF;
|
|
|
|
v_loop_date := v_loop_date + 1;
|
|
END LOOP;
|
|
|
|
IF lbackwards
|
|
THEN
|
|
RETURN 0 - v_dl;
|
|
ELSE
|
|
RETURN v_dl;
|
|
END IF;
|
|
END;
|
|
END;
|
|
/
|
|
|
|
/* Formatted on 5-1-2011 16:38:28 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_stdmld_lijst
|
|
(
|
|
stdmld_key,
|
|
stdmld_oms
|
|
)
|
|
AS
|
|
SELECT sm.mld_stdmelding_key stdmld_key,
|
|
sd.ins_srtdiscipline_prefix
|
|
|| '-'
|
|
|| td.ins_discipline_omschrijving
|
|
|| '-'
|
|
|| sm.mld_stdmelding_omschrijving
|
|
stdmld_oms
|
|
FROM mld_stdmelding sm, ins_tab_discipline td, ins_srtdiscipline sd
|
|
WHERE sm.mld_stdmelding_verwijder IS NULL
|
|
AND sm.mld_ins_discipline_key = td.ins_discipline_key
|
|
AND td.ins_discipline_verwijder IS NULL
|
|
AND td.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
|
|
AND sd.ins_srtdiscipline_verwijder IS NULL;
|
|
|
|
/* Formatted on 5-5-2011 14:02:02 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_opdr_maandtotalen
|
|
(
|
|
fclt_f_maand,
|
|
sla,
|
|
fclt_f_prefix,
|
|
opdr,
|
|
fclt_f_kdrager,
|
|
fclt_f_kdrager_oms,
|
|
corr_kdrager,
|
|
fclt_f_maatschap,
|
|
fclt_f_ksoort,
|
|
fclt_f_ksoort_oms,
|
|
org_ksoort,
|
|
fclt_f_gebouw_terrein,
|
|
verdieping,
|
|
ruimte,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
omschrijving,
|
|
opmerking,
|
|
aanmaak,
|
|
gepland,
|
|
gereed,
|
|
status,
|
|
fclt_f_uitvoerende,
|
|
contactpersoon,
|
|
kosten,
|
|
fclt_3d_afdeling_key
|
|
)
|
|
AS
|
|
SELECT a.maand,
|
|
COALESCE (c2.sla, a.sla),
|
|
a.prefix,
|
|
a.opdracht,
|
|
a.kdrager,
|
|
a.kdrager_oms,
|
|
c1.corr_kdrager,
|
|
COALESCE (d.geb_maatschap, e.ter_maatschap),
|
|
COALESCE (c2.corr_ksoort, a.ksoort),
|
|
COALESCE (c2.corr_ksoort_oms, a.ksoort_oms),
|
|
DECODE (c2.corr_ksoort,
|
|
NULL, NULL,
|
|
a.ksoort || '-' || a.ksoort_oms),
|
|
DECODE (f.kdeel,
|
|
63, a.gebouw_terrein || ' (H)', -- Toevoeging (H)
|
|
37, a.gebouw_terrein || ' (I)', -- Toevoeging (I)
|
|
a.gebouw_terrein),
|
|
a.verdieping,
|
|
a.ruimte,
|
|
COALESCE (c2.vakgroep, a.vakgroep),
|
|
COALESCE (c2.melding, a.melding),
|
|
a.oms,
|
|
a.opm,
|
|
a.datum_aanmaak,
|
|
a.datum_gepland,
|
|
a.datum_gereed,
|
|
a.status,
|
|
a.bedrijf,
|
|
a.cp,
|
|
DECODE (f.kdeel,
|
|
NULL, a.kosten,
|
|
ROUND ( (f.kdeel * a.kosten) / 100, 2)),
|
|
b.afdeling
|
|
FROM (SELECT o.mld_opdr_key,
|
|
COALESCE (og.alg_gebouw_key,
|
|
og.alg_terreinsector_key)
|
|
gebter_key,
|
|
DECODE (
|
|
o.mld_statusopdr_key,
|
|
1,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDCAN',
|
|
o.mld_opdr_key
|
|
),
|
|
'yyyy-mm'
|
|
),
|
|
7,
|
|
TO_CHAR (
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDAFR',
|
|
o.mld_opdr_key
|
|
),
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
)
|
|
),
|
|
'yyyy-mm'
|
|
),
|
|
9,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDAFR',
|
|
o.mld_opdr_key
|
|
),
|
|
'yyyy-mm'
|
|
),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
TO_CHAR (m.mld_melding_uitvoertijd)
|
|
sla,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
o.mld_melding_key
|
|
|| '/'
|
|
|| o.mld_opdr_bedrijfopdr_volgnr
|
|
opdracht,
|
|
kp.prs_kostenplaats_nr kdrager,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kdrager_oms,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
ksoort,
|
|
DECODE (
|
|
ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking
|
|
)
|
|
ksoort_oms,
|
|
COALESCE (og.alg_terreinsector_code,
|
|
og.alg_gebouw_code)
|
|
gebouw_terrein,
|
|
og.alg_verdieping_code verdieping,
|
|
og.alg_ruimte_nr ruimte,
|
|
td.ins_discipline_omschrijving
|
|
vakgroep,
|
|
sm.mld_stdmelding_omschrijving
|
|
melding,
|
|
o.mld_opdr_omschrijving oms,
|
|
o.mld_opdr_opmerking opm,
|
|
TO_CHAR (o.mld_opdr_datumbegin,
|
|
'dd-mm-yyyy')
|
|
datum_aanmaak, -- Of verzonden?
|
|
TO_CHAR (
|
|
fac.datumtijdplusuitvoertijd (
|
|
o.mld_opdr_datumbegin,
|
|
m.mld_melding_uitvoertijd,
|
|
'DAGEN'
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gepland,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gereed,
|
|
so.mld_statusopdr_omschrijving status,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
o.mld_opdr_contactpersoon cp,
|
|
o.mld_opdr_kosten kosten
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
mld_melding m,
|
|
alg_v_allonrgoed_gegevens og,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv,
|
|
prs_kostenplaats kp,
|
|
mld_statusopdr so
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND m.mld_alg_onroerendgoed_keys =
|
|
og.alg_onroerendgoed_keys
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND o.mld_statusopdr_key =
|
|
so.mld_statusopdr_key) a
|
|
LEFT JOIN
|
|
(SELECT DISTINCT
|
|
o.mld_opdr_key,
|
|
p.prs_afdeling_key afdeling
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
prs_contactpersoon cp,
|
|
prs_perslid p
|
|
WHERE o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND b.prs_bedrijf_key =
|
|
cp.prs_bedrijf_key
|
|
AND cp.prs_perslid_key =
|
|
p.prs_perslid_key) b
|
|
ON a.mld_opdr_key = b.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
ud.fac_usrdata_omschr corr_kdrager
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ko.mld_kenmerk_key = 1 -- Corr. kdrager
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)) c1
|
|
ON a.mld_opdr_key = c1.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd) sla,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
corr_ksoort,
|
|
DECODE (ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking)
|
|
corr_ksoort_oms,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) c2
|
|
ON a.mld_opdr_key = c2.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr geb_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1020 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) d
|
|
ON a.gebter_key = d.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr ter_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1040 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) e
|
|
ON a.gebter_key = e.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT g.alg_gebouw_key, 63 kdeel -- 63% van A-HI (=1572) op TH
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572
|
|
UNION ALL
|
|
SELECT g.alg_gebouw_key, 37 kdeel -- 37% van A-HI (=1572) op TI
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572) f
|
|
ON a.gebter_key = f.alg_gebouw_key;
|
|
|
|
/* Formatted on 11-2-2011 11:15:45 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_opdr_mi_oms
|
|
(
|
|
fclt_f_maand,
|
|
fclt_f_bedrijf,
|
|
opdr,
|
|
fclt_f_kdrager,
|
|
fclt_f_kdrager_oms,
|
|
fclt_f_prefix,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
omschrijving,
|
|
opmerking,
|
|
aanmaak_melding,
|
|
sla,
|
|
gepland_melding,
|
|
sp_afhandeltijd,
|
|
sp_afh_ok,
|
|
uv_responsetijd,
|
|
uv_rsp_ok,
|
|
uv_afhandeltijd,
|
|
uv_afh_ok
|
|
)
|
|
AS
|
|
SELECT DECODE (
|
|
opdr.status_key,
|
|
NULL,
|
|
DECODE (meld.status_key,
|
|
1, TO_CHAR (meld.mldrej, 'yyyy-mm'),
|
|
5, TO_CHAR (meld.mldafm, 'yyyy-mm'),
|
|
'Lopend'),
|
|
1,
|
|
TO_CHAR (opdr.ordcan, 'yyyy-mm'),
|
|
6,
|
|
TO_CHAR (opdr.ordafm, 'yyyy-mm'),
|
|
7,
|
|
TO_CHAR (opdr.ordafm, 'yyyy-mm'),
|
|
9,
|
|
TO_CHAR (opdr.ordafm, 'yyyy-mm'),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
DECODE (opdr.status_key,
|
|
1, opdr.bedrijf || '/GEANNULEERD',
|
|
opdr.bedrijf),
|
|
meld.mld_key
|
|
|| DECODE (opdr.volgnr, NULL, NULL, '/' || opdr.volgnr),
|
|
opdr.kostenplaats,
|
|
opdr.kostenplaats_oms,
|
|
COALESCE (CORR.prefix, meld.prefix),
|
|
COALESCE (CORR.vakgroep, meld.vakgroep),
|
|
COALESCE (CORR.melding, meld.melding),
|
|
DECODE (opdr.status_key, NULL, meld.oms, opdr.oms),
|
|
DECODE (opdr.status_key, NULL, meld.status, opdr.opm),
|
|
TO_CHAR (meld.mldnew, 'dd-mm-yyyy hh24:mi') aanmaak,
|
|
TO_CHAR (COALESCE (CORR.sla, meld.sla)) sla,
|
|
TO_CHAR (
|
|
fac.datumtijdplusuitvoertijd (meld.mldnew,
|
|
COALESCE (CORR.sla, meld.sla),
|
|
'DAGEN'),
|
|
'dd-mm-yyyy hh24:mi'
|
|
)
|
|
gepland,
|
|
DECODE (
|
|
opdr.ordnew,
|
|
NULL,
|
|
NULL,
|
|
TO_CHAR(FLOOR(wtca.bepaal_wtc_kantooruren (meld.mldnew,
|
|
opdr.ordnew)
|
|
/ 9))
|
|
|| 'd-'
|
|
|| TO_CHAR(MOD (
|
|
FLOOR(wtca.bepaal_wtc_kantooruren (meld.mldnew,
|
|
opdr.ordnew)),
|
|
9
|
|
))
|
|
|| 'u-'
|
|
|| TO_CHAR(MOD (
|
|
ROUND (
|
|
wtca.bepaal_wtc_kantooruren (meld.mldnew,
|
|
opdr.ordnew)
|
|
* 60,
|
|
0
|
|
),
|
|
60
|
|
))
|
|
|| 'm'
|
|
)
|
|
sp_afhandeltijd,
|
|
DECODE (
|
|
opdr.ordnew,
|
|
NULL,
|
|
DECODE (meld.status_key, 1, '-', 6, '-', NULL),
|
|
DECODE (
|
|
meld.prio,
|
|
1,
|
|
'-',
|
|
2,
|
|
'-',
|
|
3,
|
|
DECODE (
|
|
SIGN(ROUND (
|
|
wtca.bepaal_wtc_kantooruren (
|
|
meld.mldnew,
|
|
COALESCE (opdr.ordnew, SYSDATE)
|
|
)
|
|
* 60,
|
|
0
|
|
)
|
|
- 30), -- Harde afspraak 30m
|
|
1,
|
|
'Nee',
|
|
'Ja'
|
|
),
|
|
DECODE (
|
|
SIGN(ROUND (
|
|
wtca.bepaal_wtc_kantooruren (
|
|
meld.mldnew,
|
|
COALESCE (opdr.ordnew, SYSDATE)
|
|
)
|
|
* 60,
|
|
0
|
|
)
|
|
- 60), -- Harde afspraak 60m
|
|
1,
|
|
'Nee',
|
|
'Ja'
|
|
)
|
|
)
|
|
)
|
|
sp_afh_ok,
|
|
DECODE (
|
|
opdr.ordacp,
|
|
NULL,
|
|
NULL,
|
|
TO_CHAR (FLOOR (opdr.ordacp - opdr.ordnew)) || 'd-'
|
|
|| TO_CHAR (
|
|
MOD (FLOOR ( (opdr.ordacp - opdr.ordnew) * 24), 24)
|
|
)
|
|
|| 'u-'
|
|
|| TO_CHAR(MOD (
|
|
ROUND ( (opdr.ordacp - opdr.ordnew) * 24 * 60,
|
|
0),
|
|
60
|
|
))
|
|
|| 'm'
|
|
)
|
|
uv_responsetijd,
|
|
DECODE (
|
|
opdr.ordnew,
|
|
NULL,
|
|
DECODE (meld.status_key, 1, '-', 6, '-', NULL),
|
|
DECODE (
|
|
meld.prio,
|
|
1,
|
|
'-',
|
|
2,
|
|
'-',
|
|
3,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (opdr.ordacp, SYSDATE)
|
|
- opdr.ordnew)
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
'Nee',
|
|
'Ja'
|
|
),
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
opdr.ordnew,
|
|
COALESCE (opdr.ordacp, SYSDATE)
|
|
)
|
|
- 1), -- Harde afspraak 24 uur
|
|
1,
|
|
'Nee',
|
|
'Ja'
|
|
)
|
|
)
|
|
)
|
|
uv_rsp_ok,
|
|
DECODE (
|
|
opdr.ordafm,
|
|
NULL,
|
|
DECODE (
|
|
opdr.ordcan,
|
|
NULL,
|
|
NULL,
|
|
TO_CHAR (FLOOR (opdr.ordcan - opdr.ordnew)) || 'd-'
|
|
|| TO_CHAR(MOD (
|
|
ROUND ( (opdr.ordcan - opdr.ordnew) * 24, 0),
|
|
24
|
|
))
|
|
|| 'u'
|
|
),
|
|
TO_CHAR (FLOOR (opdr.ordafm - opdr.ordnew)) || 'd-'
|
|
|| TO_CHAR (
|
|
MOD (ROUND ( (opdr.ordafm - opdr.ordnew) * 24, 0), 24)
|
|
)
|
|
|| 'u'
|
|
)
|
|
afhandeltijd,
|
|
DECODE (
|
|
opdr.ordnew,
|
|
NULL,
|
|
DECODE (meld.status_key, 1, '-', 6, '-', NULL),
|
|
DECODE (
|
|
meld.prio,
|
|
1,
|
|
'-',
|
|
2,
|
|
'-',
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
opdr.ordnew,
|
|
COALESCE (opdr.ordafm, SYSDATE)
|
|
)
|
|
- COALESCE (CORR.sla, meld.sla)),
|
|
1,
|
|
'Nee',
|
|
'Ja'
|
|
)
|
|
)
|
|
)
|
|
uv_afh_ok
|
|
FROM (SELECT m.mld_melding_key mld_key,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding,
|
|
m.mld_melding_spoed prio,
|
|
m.mld_melding_uitvoertijd sla,
|
|
m.mld_melding_status status_key,
|
|
s.mld_statuses_omschrijving status,
|
|
m.mld_melding_omschrijving oms,
|
|
fac.gettrackingdate ('MLDNEW', m.mld_melding_key)
|
|
mldnew,
|
|
fac.gettrackingdate ('MLDREJ', m.mld_melding_key)
|
|
mldrej,
|
|
fac.gettrackingdate ('MLDAFM', m.mld_melding_key)
|
|
mldafm
|
|
FROM mld_melding m,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
mld_statuses s
|
|
WHERE m.mld_stdmelding_key = sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND m.mld_melding_status = mld_statuses_key) meld
|
|
LEFT JOIN
|
|
(SELECT o.mld_melding_key,
|
|
COALESCE (sm.mld_stdmelding_uitvoertijd, 0) sla,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_opdr o,
|
|
mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd
|
|
WHERE o.mld_opdr_key = ko.mld_opdr_key
|
|
AND ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND ko.mld_opdr_key = o.mld_opdr_key
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) CORR
|
|
ON meld.mld_key = CORR.mld_melding_key
|
|
LEFT JOIN
|
|
(SELECT o.mld_melding_key mld_key,
|
|
o.mld_opdr_bedrijfopdr_volgnr volgnr,
|
|
o.mld_statusopdr_key status_key,
|
|
o.mld_opdr_omschrijving oms,
|
|
o.mld_opdr_opmerking opm,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
kp.prs_kostenplaats_nr kostenplaats,
|
|
kp.prs_kostenplaats_omschrijving kostenplaats_oms,
|
|
fac.gettrackingdate ('ORDNEW', o.mld_opdr_key)
|
|
ordnew,
|
|
o.mld_opdr_verzonden verzonden,
|
|
fac.gettrackingdate ('ORDACP', o.mld_opdr_key)
|
|
ordacp,
|
|
fac.gettrackingdate ('ORDCAN', o.mld_opdr_key)
|
|
ordcan,
|
|
fac.gettrackingdate ('ORDAFM', o.mld_opdr_key)
|
|
ordafm
|
|
FROM mld_opdr o, prs_bedrijf b, prs_kostenplaats kp
|
|
WHERE o.mld_uitvoerende_keys = b.prs_bedrijf_key
|
|
AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key)
|
|
opdr
|
|
ON meld.mld_key = opdr.mld_key;
|
|
|
|
/* Formatted on 11-2-2011 11:15:45 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_opdr_mi_ppi
|
|
(
|
|
fclt_f_maand,
|
|
fclt_f_bedrijf,
|
|
fclt_f_prefix,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
aant_opdr,
|
|
acceptatie_op_tijd,
|
|
acceptatie_perc,
|
|
uitvoering_op_tijd,
|
|
uitvoering_perc
|
|
)
|
|
AS
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.prefix,
|
|
x.vakgroep,
|
|
x.melding,
|
|
x.aant_opdrachten,
|
|
x.acceptatie_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.acceptatie_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
acceptatie_perc,
|
|
x.uitvoering_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.uitvoering_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix) prefix,
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep) vakgroep,
|
|
COALESCE (CORR.melding, opdr.melding) melding,
|
|
COUNT (opdr_key) aant_opdrachten,
|
|
SUM (acceptoptijd) acceptatie_op_tijd,
|
|
SUM(DECODE (
|
|
SIGN(opdr.afmelddagen
|
|
- COALESCE (CORR.sla, opdr.sla)),
|
|
1,
|
|
0,
|
|
1
|
|
))
|
|
uitvoering_op_tijd
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
DECODE (
|
|
o.mld_statusopdr_key,
|
|
6,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
7,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
9,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding,
|
|
m.mld_melding_uitvoertijd sla,
|
|
DECODE (
|
|
m.mld_melding_spoed,
|
|
3,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
),
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- 1), -- Harde afspraak 24 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
)
|
|
acceptoptijd,
|
|
FAC.count_work_days_incltime (
|
|
fac.gettrackingdate ('ORDNEW',
|
|
o.mld_opdr_key),
|
|
COALESCE (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
SYSDATE
|
|
)
|
|
)
|
|
afmelddagen
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_bedrijf b
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_statusopdr_key <> 1
|
|
AND m.mld_melding_spoed IN (3, 4)) opdr
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding,
|
|
COALESCE (sm.mld_stdmelding_uitvoertijd,
|
|
0)
|
|
sla
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) CORR
|
|
ON opdr.opdr_key = CORR.mld_opdr_key
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix),
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep),
|
|
COALESCE (CORR.melding, opdr.melding)) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.prefix,
|
|
x.vakgroep,
|
|
x.melding,
|
|
x.aant_opdrachten,
|
|
x.acceptatie_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.acceptatie_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
acceptatie_perc,
|
|
x.uitvoering_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.uitvoering_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf || '/GEANNULEERD' bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix) prefix,
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep) vakgroep,
|
|
COALESCE (CORR.melding, opdr.melding) melding,
|
|
COUNT (opdr_key) aant_opdrachten,
|
|
SUM (acceptoptijd) acceptatie_op_tijd,
|
|
SUM(DECODE (
|
|
SIGN(opdr.afmelddagen
|
|
- COALESCE (CORR.sla, opdr.sla)),
|
|
1,
|
|
0,
|
|
1
|
|
))
|
|
uitvoering_op_tijd
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDCAN',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding,
|
|
m.mld_melding_uitvoertijd sla,
|
|
DECODE (
|
|
m.mld_melding_spoed,
|
|
3,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
),
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- 1), -- Harde afspraak 24 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
)
|
|
acceptoptijd,
|
|
FAC.count_work_days_incltime (
|
|
fac.gettrackingdate ('ORDNEW',
|
|
o.mld_opdr_key),
|
|
COALESCE (
|
|
fac.gettrackingdate ('ORDCAN',
|
|
o.mld_opdr_key),
|
|
SYSDATE
|
|
)
|
|
)
|
|
afmelddagen
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_bedrijf b
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_statusopdr_key = 1
|
|
AND m.mld_melding_spoed IN (3, 4)) opdr
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding,
|
|
COALESCE (sm.mld_stdmelding_uitvoertijd,
|
|
0)
|
|
sla
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) CORR
|
|
ON opdr.opdr_key = CORR.mld_opdr_key
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix),
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep),
|
|
COALESCE (CORR.melding, opdr.melding)) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.prefix,
|
|
x.vakgroep,
|
|
x.melding || '/KRITIEK-DRINGEND',
|
|
x.aant_opdrachten,
|
|
TO_NUMBER (NULL),
|
|
'-' acceptatie_perc,
|
|
TO_NUMBER (NULL),
|
|
'-' uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix) prefix,
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep) vakgroep,
|
|
COALESCE (CORR.melding, opdr.melding) melding,
|
|
COUNT (opdr_key) aant_opdrachten
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
DECODE (
|
|
o.mld_statusopdr_key,
|
|
6,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
7,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
9,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_bedrijf b
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_statusopdr_key <> 1
|
|
AND m.mld_melding_spoed IN (1, 2)) opdr
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) CORR
|
|
ON opdr.opdr_key = CORR.mld_opdr_key
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix),
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep),
|
|
COALESCE (CORR.melding, opdr.melding)) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.prefix,
|
|
x.vakgroep,
|
|
x.melding || '/KRITIEK-DRINGEND',
|
|
x.aant_opdrachten,
|
|
TO_NUMBER (NULL),
|
|
'-' acceptatie_perc,
|
|
TO_NUMBER (NULL),
|
|
'-' uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf || '/GEANNULEERD' bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix) prefix,
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep) vakgroep,
|
|
COALESCE (CORR.melding, opdr.melding) melding,
|
|
COUNT (opdr_key) aant_opdrachten
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDCAN',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_bedrijf b
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_statusopdr_key = 1
|
|
AND m.mld_melding_spoed IN (1, 2)) opdr
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) CORR
|
|
ON opdr.opdr_key = CORR.mld_opdr_key
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
COALESCE (CORR.prefix, opdr.prefix),
|
|
COALESCE (CORR.vakgroep, opdr.vakgroep),
|
|
COALESCE (CORR.melding, opdr.melding)) x;
|
|
|
|
/* Formatted on 6-1-2011 10:28:58 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_opdr_mi_ppi2
|
|
(
|
|
fclt_f_maand,
|
|
fclt_f_bedrijf,
|
|
fclt_f_kdrager,
|
|
fclt_f_kdrager_oms,
|
|
aant_opdr,
|
|
acceptatie_op_tijd,
|
|
acceptatie_perc,
|
|
uitvoering_op_tijd,
|
|
uitvoering_perc
|
|
)
|
|
AS
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.kostenplaats,
|
|
x.kostenplaats_oms,
|
|
x.aant_opdrachten,
|
|
x.acceptatie_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.acceptatie_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
acceptatie_perc,
|
|
x.uitvoering_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.uitvoering_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms,
|
|
COUNT (opdr_key) aant_opdrachten,
|
|
SUM (acceptoptijd) acceptatie_op_tijd,
|
|
SUM (afmeldoptijd) uitvoering_op_tijd
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
DECODE (
|
|
o.mld_statusopdr_key,
|
|
6,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
7,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
9,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
kp.prs_kostenplaats_nr kostenplaats,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kostenplaats_oms,
|
|
DECODE (
|
|
m.mld_melding_spoed,
|
|
3,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
),
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- 1), -- Harde afspraak 24 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
)
|
|
acceptoptijd,
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- m.mld_melding_uitvoertijd),
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
afmeldoptijd
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
prs_bedrijf b,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND o.mld_statusopdr_key <> 1
|
|
AND m.mld_melding_spoed IN (3, 4))
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.kostenplaats,
|
|
x.kostenplaats_oms,
|
|
x.aant_opdrachten,
|
|
x.acceptatie_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.acceptatie_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
acceptatie_perc,
|
|
x.uitvoering_op_tijd,
|
|
REPLACE (
|
|
TO_CHAR (x.uitvoering_op_tijd * 100 / x.aant_opdrachten,
|
|
'990D99'),
|
|
'.',
|
|
','
|
|
)
|
|
uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf || '/GEANNULEERD' bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms,
|
|
COUNT (opdr_key) aant_opdrachten,
|
|
SUM (acceptoptijd) acceptatie_op_tijd,
|
|
SUM (afmeldoptijd) uitvoering_op_tijd
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDCAN',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
kp.prs_kostenplaats_nr kostenplaats,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kostenplaats_oms,
|
|
DECODE (
|
|
m.mld_melding_spoed,
|
|
3,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
),
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- 1), -- Harde afspraak 24 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
)
|
|
acceptoptijd,
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDCAN',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- m.mld_melding_uitvoertijd),
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
afmeldoptijd
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
prs_bedrijf b,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND o.mld_statusopdr_key = 1
|
|
AND m.mld_melding_spoed IN (3, 4))
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.kostenplaats,
|
|
x.kostenplaats_oms,
|
|
x.aant_opdrachten,
|
|
TO_NUMBER (NULL),
|
|
'-' acceptatie_perc,
|
|
TO_NUMBER (NULL),
|
|
'-' uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms,
|
|
COUNT (opdr_key) aant_opdrachten
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
DECODE (
|
|
o.mld_statusopdr_key,
|
|
6,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
7,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
9,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDAFM',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
),
|
|
'Lopend'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
kp.prs_kostenplaats_nr kostenplaats,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kostenplaats_oms,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
acceptoptijd,
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- m.mld_melding_uitvoertijd),
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
afmeldoptijd
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
prs_bedrijf b,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND o.mld_statusopdr_key <> 1
|
|
AND m.mld_melding_spoed IN (1, 2))
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms) x
|
|
UNION ALL
|
|
SELECT x.maand,
|
|
x.bedrijf,
|
|
x.kostenplaats,
|
|
x.kostenplaats_oms,
|
|
x.aant_opdrachten,
|
|
TO_NUMBER (NULL),
|
|
'-' acceptatie_perc,
|
|
TO_NUMBER (NULL),
|
|
'-' uitvoering_perc
|
|
FROM ( SELECT maand,
|
|
bedrijf || '/GEANNULEERD' bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms,
|
|
COUNT (opdr_key) aant_opdrachten
|
|
FROM (SELECT o.mld_opdr_key opdr_key,
|
|
TO_CHAR (
|
|
fac.gettrackingdate ('ORDCAN',
|
|
o.mld_opdr_key),
|
|
'yyyy-mm'
|
|
)
|
|
maand,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
kp.prs_kostenplaats_nr kostenplaats,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kostenplaats_oms,
|
|
DECODE (
|
|
SIGN(FLOOR( (COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDACP',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
- fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
))
|
|
* 24)
|
|
- 4), -- Harde afspraak 4 uur
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
acceptoptijd,
|
|
DECODE (
|
|
SIGN(FAC.count_work_days_incltime (
|
|
fac.gettrackingdate (
|
|
'ORDNEW',
|
|
o.mld_opdr_key
|
|
),
|
|
COALESCE (
|
|
fac.gettrackingdate (
|
|
'ORDCAN',
|
|
o.mld_opdr_key
|
|
),
|
|
SYSDATE
|
|
)
|
|
)
|
|
- m.mld_melding_uitvoertijd),
|
|
1,
|
|
0,
|
|
1
|
|
)
|
|
afmeldoptijd
|
|
FROM mld_opdr o,
|
|
mld_melding m,
|
|
prs_bedrijf b,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_melding_key = m.mld_melding_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND o.mld_statusopdr_key = 1
|
|
AND m.mld_melding_spoed IN (1, 2))
|
|
GROUP BY maand,
|
|
bedrijf,
|
|
kostenplaats,
|
|
kostenplaats_oms) x;
|
|
|
|
/* Formatted on 24-1-2011 12:18:36 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_mld_structuur
|
|
(
|
|
fclt_f_vakgroeptype,
|
|
fclt_f_prefix,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
fclt_f_groep,
|
|
fclt_f_ksoort,
|
|
ksoort_oms,
|
|
acc_tijd,
|
|
sla_krit,
|
|
sla_hoog,
|
|
sla_norm,
|
|
sla_laag,
|
|
m_totaal,
|
|
m_lopend
|
|
)
|
|
AS
|
|
SELECT x.vakgroeptype,
|
|
x.prefix,
|
|
x.vakgroep,
|
|
x.melding,
|
|
x.groep,
|
|
x.ksoort,
|
|
x.ksoort_oms,
|
|
x.acc_tijd,
|
|
x.sla_krit,
|
|
x.sla_hoog,
|
|
x.sla_norm,
|
|
x.sla_laag,
|
|
y.m_totaal,
|
|
z.m_lopend
|
|
FROM (SELECT sm.mld_stdmelding_key,
|
|
DECODE (sd.ins_srtdiscipline_verwijder,
|
|
NULL, '',
|
|
'XXX-')
|
|
|| sd.ins_srtdiscipline_omschrijving
|
|
vakgroeptype,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
-- DECODE (sd.ins_srtdiscipline_alg, 0, 'N', 'J') plaatsgegevens,
|
|
-- DECODE (sd.ins_srtdiscipline_bes, 0, 'N', 'J') objectgegevens,
|
|
-- DECODE (sd.ins_srtdiscipline_ins, 0, 'N', 'J') bestelgegevens,
|
|
DECODE (td.ins_discipline_verwijder,
|
|
NULL, '',
|
|
'XXX-')
|
|
|| td.ins_discipline_omschrijving
|
|
vakgroep,
|
|
DECODE (sm.mld_stdmelding_verwijder,
|
|
NULL, '',
|
|
'XXX-')
|
|
|| sm.mld_stdmelding_omschrijving
|
|
melding,
|
|
sm.mld_stdmelding_groep groep,
|
|
k.prs_kostensoort_oms ksoort,
|
|
k.prs_kostensoort_opmerking ksoort_oms,
|
|
TO_CHAR (sm.mld_stdmelding_urgentie) acc_tijd,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd_pr1)
|
|
sla_krit,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd_pr2)
|
|
sla_hoog,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd) sla_norm,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd_pr4)
|
|
sla_laag
|
|
FROM ins_srtdiscipline sd,
|
|
ins_tab_discipline td,
|
|
mld_stdmelding sm,
|
|
prs_kostensoort k
|
|
WHERE sd.ins_srtdiscipline_module = 'MLD'
|
|
-- AND sd.ins_srtdiscipline_verwijder IS NULL
|
|
AND sd.ins_srtdiscipline_key =
|
|
td.ins_srtdiscipline_key
|
|
-- AND td.ins_discipline_verwijder IS NULL
|
|
AND td.ins_discipline_key =
|
|
sm.mld_ins_discipline_key
|
|
-- AND sm.mld_stdmelding_verwijder IS NULL
|
|
AND sm.prs_kostensoort_key =
|
|
k.prs_kostensoort_key(+)) x
|
|
LEFT JOIN
|
|
( SELECT mld_stdmelding_key, COUNT ( * ) m_totaal
|
|
FROM mld_melding
|
|
GROUP BY mld_stdmelding_key) y
|
|
ON x.mld_stdmelding_key = y.mld_stdmelding_key
|
|
LEFT JOIN
|
|
( SELECT mld_stdmelding_key, COUNT ( * ) m_lopend
|
|
FROM mld_melding
|
|
WHERE mld_melding_status NOT IN (1, 5, 6)
|
|
GROUP BY mld_stdmelding_key) z
|
|
ON x.mld_stdmelding_key = z.mld_stdmelding_key;
|
|
|
|
/* Formatted on 5-5-2011 14:02:24 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_maand_actual
|
|
(
|
|
maand,
|
|
sla,
|
|
fclt_f_prefix,
|
|
opdr,
|
|
fclt_f_kdrager,
|
|
fclt_f_kdrager_oms,
|
|
corr_kdrager,
|
|
fclt_f_maatschap,
|
|
fclt_f_ksoort,
|
|
fclt_f_ksoort_oms,
|
|
org_ksoort,
|
|
fclt_f_gebouw_terrein,
|
|
verdieping,
|
|
ruimte,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
omschrijving,
|
|
opmerking,
|
|
aanmaak,
|
|
gepland,
|
|
gereed,
|
|
fclt_f_uitvoerende,
|
|
contactpersoon,
|
|
kosten,
|
|
fclt_3d_afdeling_key
|
|
)
|
|
AS
|
|
SELECT TO_CHAR (SYSDATE, 'yyyy-mm'),
|
|
COALESCE (c2.sla, a.sla),
|
|
COALESCE (c2.prefix, a.prefix),
|
|
a.opdracht,
|
|
a.kdrager,
|
|
a.kdrager_oms,
|
|
c1.corr_kdrager,
|
|
COALESCE (d.geb_maatschap, e.ter_maatschap),
|
|
COALESCE (c2.corr_ksoort, a.ksoort),
|
|
COALESCE (c2.corr_ksoort_oms, a.ksoort_oms),
|
|
DECODE (c2.corr_ksoort,
|
|
NULL, NULL,
|
|
a.ksoort || '-' || a.ksoort_oms),
|
|
DECODE (f.kdeel,
|
|
63, a.gebouw_terrein || ' (H)', -- Toevoeging (H)
|
|
37, a.gebouw_terrein || ' (I)', -- Toevoeging (I)
|
|
a.gebouw_terrein),
|
|
a.verdieping,
|
|
a.ruimte,
|
|
COALESCE (c2.vakgroep, a.vakgroep),
|
|
COALESCE (c2.melding, a.melding),
|
|
a.oms,
|
|
a.opm,
|
|
a.datum_aanmaak,
|
|
a.datum_gepland,
|
|
a.datum_gereed,
|
|
a.bedrijf,
|
|
a.cp,
|
|
DECODE (f.kdeel,
|
|
NULL, a.kosten,
|
|
ROUND ( (f.kdeel * a.kosten) / 100, 2)),
|
|
b.afdeling
|
|
FROM (SELECT o.mld_opdr_key,
|
|
COALESCE (og.alg_gebouw_key,
|
|
og.alg_terreinsector_key)
|
|
gebter_key,
|
|
TO_CHAR (m.mld_melding_uitvoertijd)
|
|
sla,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
o.mld_melding_key
|
|
|| '/'
|
|
|| o.mld_opdr_bedrijfopdr_volgnr
|
|
opdracht,
|
|
kp.prs_kostenplaats_nr kdrager,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kdrager_oms,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
ksoort,
|
|
DECODE (
|
|
ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking
|
|
)
|
|
ksoort_oms,
|
|
COALESCE (og.alg_terreinsector_code,
|
|
og.alg_gebouw_code)
|
|
gebouw_terrein,
|
|
og.alg_verdieping_code verdieping,
|
|
og.alg_ruimte_nr ruimte,
|
|
td.ins_discipline_omschrijving
|
|
vakgroep,
|
|
sm.mld_stdmelding_omschrijving
|
|
melding,
|
|
o.mld_opdr_omschrijving oms,
|
|
o.mld_opdr_opmerking opm,
|
|
TO_CHAR (o.mld_opdr_datumbegin,
|
|
'dd-mm-yyyy')
|
|
datum_aanmaak, -- Of verzonden?
|
|
TO_CHAR (
|
|
fac.datumtijdplusuitvoertijd (
|
|
o.mld_opdr_datumbegin,
|
|
m.mld_melding_uitvoertijd,
|
|
'DAGEN'
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gepland,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gereed,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
o.mld_opdr_contactpersoon cp,
|
|
o.mld_opdr_kosten kosten
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
mld_melding m,
|
|
alg_v_allonrgoed_gegevens og,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_statusopdr_key = 9
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_melding_key =
|
|
m.mld_melding_key
|
|
AND m.mld_alg_onroerendgoed_keys =
|
|
og.alg_onroerendgoed_keys
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND kp.prs_kostenplaats_upper = 'WTC'
|
|
AND fac.gettrackingdate (
|
|
'ORDAFR',
|
|
o.mld_opdr_key
|
|
) <
|
|
TO_DATE (
|
|
TO_CHAR (SYSDATE, 'yyyymm')
|
|
|| '01',
|
|
'yyyymmdd'
|
|
)) a
|
|
LEFT JOIN
|
|
(SELECT DISTINCT
|
|
o.mld_opdr_key,
|
|
p.prs_afdeling_key afdeling
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
prs_contactpersoon cp,
|
|
prs_perslid p
|
|
WHERE b.prs_bedrijf_key =
|
|
cp.prs_bedrijf_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND cp.prs_perslid_key =
|
|
p.prs_perslid_key) b
|
|
ON a.mld_opdr_key = b.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
ud.fac_usrdata_omschr corr_kdrager
|
|
FROM mld_kenmerkopdr ko, fac_usrdata ud
|
|
WHERE ko.mld_kenmerk_key = 1 -- Corr. kdrager
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)) c1
|
|
ON a.mld_opdr_key = c1.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd) sla,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
corr_ksoort,
|
|
DECODE (ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking)
|
|
corr_ksoort_oms,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) c2
|
|
ON a.mld_opdr_key = c2.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr geb_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1020 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) d
|
|
ON a.gebter_key = d.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr ter_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1040 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) e
|
|
ON a.gebter_key = e.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT g.alg_gebouw_key, 63 kdeel -- 63% van A-HI (=1572) op TH
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572
|
|
UNION ALL
|
|
SELECT g.alg_gebouw_key, 37 kdeel -- 37% van A-HI (=1572) op TI
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572) f
|
|
ON a.gebter_key = f.alg_gebouw_key;
|
|
|
|
/* Formatted on 5-5-2011 14:02:24 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_maand_frozen
|
|
(
|
|
fclt_f_archief,
|
|
sla,
|
|
fclt_f_prefix,
|
|
opdr,
|
|
fclt_f_kdrager,
|
|
fclt_f_kdrager_oms,
|
|
corr_kdrager,
|
|
fclt_f_maatschap,
|
|
fclt_f_ksoort,
|
|
fclt_f_ksoort_oms,
|
|
org_ksoort,
|
|
fclt_f_gebouw_terrein,
|
|
verdieping,
|
|
ruimte,
|
|
fclt_f_vakgroep,
|
|
fclt_f_melding,
|
|
omschrijving,
|
|
opmerking,
|
|
aanmaak,
|
|
gepland,
|
|
gereed,
|
|
fclt_f_uitvoerende,
|
|
contactpersoon,
|
|
kosten,
|
|
fclt_3d_afdeling_key
|
|
)
|
|
AS
|
|
SELECT a.datum_frozen,
|
|
COALESCE (c2.sla, a.sla),
|
|
COALESCE (c2.prefix, a.prefix),
|
|
a.opdracht,
|
|
a.kdrager,
|
|
a.kdrager_oms,
|
|
c1.corr_kdrager,
|
|
COALESCE (d.geb_maatschap, e.ter_maatschap),
|
|
COALESCE (c2.corr_ksoort, a.ksoort),
|
|
COALESCE (c2.corr_ksoort_oms, a.ksoort_oms),
|
|
DECODE (c2.corr_ksoort,
|
|
NULL, NULL,
|
|
a.ksoort || '-' || a.ksoort_oms),
|
|
DECODE (f.kdeel,
|
|
63, a.gebouw_terrein || ' (H)', -- Toevoeging (H)
|
|
37, a.gebouw_terrein || ' (I)', -- Toevoeging (I)
|
|
a.gebouw_terrein),
|
|
a.verdieping,
|
|
a.ruimte,
|
|
COALESCE (c2.vakgroep, a.vakgroep),
|
|
COALESCE (c2.melding, a.melding),
|
|
a.oms,
|
|
a.opm,
|
|
a.datum_aanmaak,
|
|
a.datum_gepland,
|
|
a.datum_gereed,
|
|
a.bedrijf,
|
|
a.cp,
|
|
DECODE (f.kdeel,
|
|
NULL, a.kosten,
|
|
ROUND ( (f.kdeel * a.kosten) / 100, 2)),
|
|
b.afdeling
|
|
FROM (SELECT o.mld_opdr_key,
|
|
COALESCE (og.alg_gebouw_key,
|
|
og.alg_terreinsector_key)
|
|
gebter_key,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDVER',
|
|
o.mld_opdr_key
|
|
),
|
|
'yyyy-mm-dd'
|
|
)
|
|
datum_frozen,
|
|
TO_CHAR (m.mld_melding_uitvoertijd)
|
|
sla,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
o.mld_melding_key
|
|
|| '/'
|
|
|| o.mld_opdr_bedrijfopdr_volgnr
|
|
opdracht,
|
|
kp.prs_kostenplaats_nr kdrager,
|
|
kp.prs_kostenplaats_omschrijving
|
|
kdrager_oms,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
ksoort,
|
|
DECODE (
|
|
ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking
|
|
)
|
|
ksoort_oms,
|
|
COALESCE (og.alg_terreinsector_code,
|
|
og.alg_gebouw_code)
|
|
gebouw_terrein,
|
|
og.alg_verdieping_code verdieping,
|
|
og.alg_ruimte_nr ruimte,
|
|
td.ins_discipline_omschrijving
|
|
vakgroep,
|
|
sm.mld_stdmelding_omschrijving
|
|
melding,
|
|
o.mld_opdr_omschrijving oms,
|
|
o.mld_opdr_opmerking opm,
|
|
TO_CHAR (o.mld_opdr_datumbegin,
|
|
'dd-mm-yyyy')
|
|
datum_aanmaak, -- Of verzonden?
|
|
TO_CHAR (
|
|
fac.datumtijdplusuitvoertijd (
|
|
o.mld_opdr_datumbegin,
|
|
m.mld_melding_uitvoertijd,
|
|
'DAGEN'
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gepland,
|
|
TO_CHAR (
|
|
fac.gettrackingdate (
|
|
'ORDAFM',
|
|
o.mld_opdr_key
|
|
),
|
|
'dd-mm-yyyy'
|
|
)
|
|
datum_gereed,
|
|
b.prs_bedrijf_naam bedrijf,
|
|
o.mld_opdr_contactpersoon cp,
|
|
o.mld_opdr_kosten kosten
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
mld_melding m,
|
|
alg_v_allonrgoed_gegevens og,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv,
|
|
prs_kostenplaats kp
|
|
WHERE o.mld_statusopdr_key = 7
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND o.mld_melding_key =
|
|
m.mld_melding_key
|
|
AND m.mld_alg_onroerendgoed_keys =
|
|
og.alg_onroerendgoed_keys
|
|
AND m.mld_stdmelding_key =
|
|
sm.mld_stdmelding_key
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND o.prs_kostenplaats_key =
|
|
kp.prs_kostenplaats_key
|
|
AND kp.prs_kostenplaats_upper = 'WTC')
|
|
a
|
|
LEFT JOIN
|
|
(SELECT DISTINCT
|
|
o.mld_opdr_key,
|
|
p.prs_afdeling_key afdeling
|
|
FROM mld_opdr o,
|
|
prs_bedrijf b,
|
|
prs_contactpersoon cp,
|
|
prs_perslid p
|
|
WHERE b.prs_bedrijf_key =
|
|
cp.prs_bedrijf_key
|
|
AND o.mld_uitvoerende_keys =
|
|
b.prs_bedrijf_key
|
|
AND cp.prs_perslid_key =
|
|
p.prs_perslid_key) b
|
|
ON a.mld_opdr_key = b.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
ud.fac_usrdata_omschr corr_kdrager
|
|
FROM mld_kenmerkopdr ko, fac_usrdata ud
|
|
WHERE ko.mld_kenmerk_key = 1 -- Corr. kdrager
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)) c1
|
|
ON a.mld_opdr_key = c1.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ko.mld_opdr_key,
|
|
TO_CHAR (sm.mld_stdmelding_uitvoertijd) sla,
|
|
COALESCE (ksm.prs_kostensoort_oms,
|
|
ksv.prs_kostensoort_oms)
|
|
corr_ksoort,
|
|
DECODE (ksm.prs_kostensoort_oms,
|
|
NULL,
|
|
ksv.prs_kostensoort_opmerking,
|
|
ksm.prs_kostensoort_opmerking)
|
|
corr_ksoort_oms,
|
|
sd.ins_srtdiscipline_prefix prefix,
|
|
td.ins_discipline_omschrijving vakgroep,
|
|
sm.mld_stdmelding_omschrijving melding
|
|
FROM mld_v_aanwezigkenmerkopdr ko,
|
|
mld_stdmelding sm,
|
|
ins_tab_discipline td,
|
|
ins_srtdiscipline sd,
|
|
prs_kostensoort ksm,
|
|
prs_kostensoort ksv
|
|
WHERE ko.mld_kenmerk_key = 41 -- Corr. melding
|
|
AND sm.mld_stdmelding_key =
|
|
fac.safe_to_number (
|
|
ko.mld_kenmerkopdr_waarde
|
|
)
|
|
AND sm.prs_kostensoort_key =
|
|
ksm.prs_kostensoort_key(+)
|
|
AND sm.mld_ins_discipline_key =
|
|
td.ins_discipline_key
|
|
AND td.prs_kostensoort_key =
|
|
ksv.prs_kostensoort_key(+)
|
|
AND td.ins_srtdiscipline_key =
|
|
sd.ins_srtdiscipline_key) c2
|
|
ON a.mld_opdr_key = c2.mld_opdr_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr geb_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1020 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) d
|
|
ON a.gebter_key = d.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT ok.alg_onrgoed_key,
|
|
ud.fac_usrdata_omschr ter_maatschap
|
|
FROM alg_v_aanwezigonrgoedkenmerk ok,
|
|
fac_v_aanwezigusrdata ud
|
|
WHERE ok.alg_kenmerk_key = 1040 -- Maatschap
|
|
AND ud.fac_usrdata_key =
|
|
fac.safe_to_number (
|
|
ok.alg_onrgoedkenmerk_waarde
|
|
)) e
|
|
ON a.gebter_key = e.alg_onrgoed_key
|
|
LEFT JOIN
|
|
(SELECT g.alg_gebouw_key, 63 kdeel -- 63% van A-HI (=1572) op TH
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572
|
|
UNION ALL
|
|
SELECT g.alg_gebouw_key, 37 kdeel -- 37% van A-HI (=1572) op TI
|
|
FROM alg_gebouw g
|
|
WHERE g.alg_gebouw_key = 1572) f
|
|
ON a.gebter_key = f.alg_gebouw_key;
|
|
|
|
/* Formatted on 20-9-2010 15:25:35 (QP5 v5.115.810.9015) */
|
|
CREATE OR REPLACE VIEW wtca_v_rap_freezeopdrachten
|
|
(
|
|
fclt_f_uitvoerende,
|
|
hide_f_bedrijf_key,
|
|
-- kdrager,
|
|
-- kdrager_oms,
|
|
-- maatschap,
|
|
aantal,
|
|
kosten
|
|
)
|
|
AS
|
|
SELECT x.bedrijf,
|
|
x.bedrijf_key,
|
|
-- y.kostenplaats,
|
|
-- y.kostenplaats_oms,
|
|
-- y.maatschap,
|
|
TO_CHAR (DECODE (y.aantal, NULL, 0, y.aantal)),
|
|
y.kosten
|
|
FROM (SELECT b.prs_bedrijf_key bedrijf_key,
|
|
b.prs_bedrijf_naam bedrijf
|
|
FROM prs_bedrijf b
|
|
WHERE prs_bedrijf_uitvoerende = 1) x
|
|
LEFT JOIN
|
|
( SELECT o.mld_uitvoerende_keys bedrijf_key,
|
|
-- kp.prs_kostenplaats_nr kostenplaats,
|
|
-- kp.prs_kostenplaats_omschrijving kostenplaats_oms,
|
|
-- fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde)
|
|
-- maatschap,
|
|
COUNT ( * ) aantal,
|
|
SUM (o.mld_opdr_kosten) kosten
|
|
FROM mld_opdr o, prs_kostenplaats kp
|
|
-- mld_melding m,
|
|
-- alg_v_allonrgoed_gegevens og,
|
|
-- alg_onrgoedkenmerk ok
|
|
WHERE o.mld_statusopdr_key = 9
|
|
AND o.prs_kostenplaats_key = kp.prs_kostenplaats_key
|
|
-- AND o.mld_melding_key = m.mld_melding_key
|
|
-- AND m.mld_alg_onroerendgoed_keys =
|
|
-- og.alg_onroerendgoed_keys
|
|
-- AND og.alg_gebouw_key = ok.alg_onrgoed_key(+)
|
|
AND kp.prs_kostenplaats_upper = 'WTC'
|
|
AND fac.gettrackingdate ('ORDAFR', o.mld_opdr_key) <
|
|
TO_DATE (TO_CHAR (SYSDATE, 'yyyymm') || '01',
|
|
'yyyymmdd')
|
|
GROUP BY o.mld_uitvoerende_keys) y
|
|
-- kp.prs_kostenplaats_nr,
|
|
-- kp.prs_kostenplaats_omschrijving,
|
|
-- fac.safe_to_number (
|
|
-- ok.alg_onrgoedkenmerk_waarde
|
|
-- )) y
|
|
ON x.bedrijf_key = y.bedrijf_key
|
|
WHERE y.aantal IS NOT NULL;
|
|
|
|
BEGIN adm.systrackscript('$Workfile: wtca.sql $', '$Revision: 19 $', 0); END;
|
|
/
|
|
BEGIN fac.registercustversion('WTCA', 12); END;
|
|
/
|
|
COMMIT;
|
|
spool off
|