WTCA#26569 Performance rap./3d tbv. leveranciers

svn path=/Customer/trunk/; revision=17949
This commit is contained in:
Maarten van der Heide
2013-05-23 14:58:04 +00:00
parent f8e2e2a36e
commit 403a0eef51

View File

@@ -2633,7 +2633,7 @@ AS
ON x.bedrijf_key = y.bedrijf_key
WHERE y.aantal IS NOT NULL;
/* Formatted on 1-2-2013 13:08:08 (QP5 v5.115.810.9015) */
/* Formatted on 23-5-2013 16:42:24 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW wtca_v_rap_lev_perf
(
fclt_f_maand,
@@ -2643,7 +2643,8 @@ CREATE OR REPLACE VIEW wtca_v_rap_lev_perf
acceptatie_perc,
uitvoering_op_tijd,
uitvoering_perc,
binnen_norm
binnen_norm,
fclt_3d_afdeling_key
)
AS
SELECT x.maand,
@@ -2678,9 +2679,11 @@ AS
'Nee'
)
)
norm
norm,
x.afd_key
FROM ( SELECT opdr.maand,
opdr.bedrijf,
scope.afd_key,
COUNT (opdr_key) aant_opdrachten,
SUM (acceptoptijd) acceptatie_op_tijd,
SUM(DECODE (
@@ -2691,130 +2694,148 @@ AS
1
))
uitvoering_op_tijd
FROM (SELECT o.mld_opdr_key opdr_key,
o.mld_uitvoerende_keys bedrijf_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,
FROM (SELECT o.mld_opdr_key opdr_key,
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
),
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_key bedrijf_key,
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 (
SIGN(FAC.count_work_days_incltime (
fac.gettrackingdate (
'ORDNEW',
o.mld_opdr_key
),
COALESCE (
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 (
'ORDACP',
'ORDNEW',
o.mld_opdr_key
),
SYSDATE
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
- 1), -- Harde afspraak 24 uur
1,
0,
1
)
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, opdr.bedrijf) x;
)
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
LEFT JOIN
(SELECT DISTINCT
cp.prs_bedrijf_key bedrijf_key,
p.prs_afdeling_key afd_key
FROM prs_contactpersoon cp, prs_perslid p
WHERE cp.prs_perslid_key = p.prs_perslid_key)
scope
ON opdr.bedrijf_key = scope.bedrijf_key
GROUP BY maand, opdr.bedrijf, scope.afd_key) x;
/* Formatted on 19-9-2011 14:30:36 (QP5 v5.115.810.9015) */
/* Formatted on 23-5-2013 16:42:24 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW wtca_v_rap_lev_perf_details
(
fclt_f_maand,
@@ -2825,7 +2846,8 @@ CREATE OR REPLACE VIEW wtca_v_rap_lev_perf_details
acceptatie_perc,
uitvoering_op_tijd,
uitvoering_perc,
binnen_norm
binnen_norm,
fclt_3d_afdeling_key
)
AS
SELECT x.maand,
@@ -2862,9 +2884,11 @@ AS
'Nee'
)
)
norm
norm,
x.afd_key
FROM ( SELECT maand,
bedrijf,
afd_key,
COALESCE (CORR.sla, opdr.sla) sla,
COUNT (opdr_key) aant_opdrachten,
SUM (acceptoptijd) acceptatie_op_tijd,
@@ -2876,127 +2900,149 @@ AS
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,
FROM (SELECT o.mld_opdr_key opdr_key,
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
),
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_key bedrijf_key,
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 (
SIGN(FAC.count_work_days_incltime (
fac.gettrackingdate (
'ORDNEW',
o.mld_opdr_key
),
COALESCE (
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 (
'ORDACP',
'ORDNEW',
o.mld_opdr_key
),
SYSDATE
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
- 1), -- Harde afspraak 24 uur
1,
0,
1
)
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.sla, opdr.sla)) x
)
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
LEFT JOIN
(SELECT DISTINCT
cp.prs_bedrijf_key bedrijf_key,
p.prs_afdeling_key afd_key
FROM prs_contactpersoon cp, prs_perslid p
WHERE cp.prs_perslid_key = p.prs_perslid_key)
scope
ON opdr.bedrijf_key = scope.bedrijf_key
GROUP BY maand,
bedrijf,
afd_key,
COALESCE (CORR.sla, opdr.sla)) x
UNION ALL
SELECT x.maand,
x.bedrijf,
@@ -3006,76 +3052,93 @@ AS
'-' acceptatie_perc,
TO_NUMBER (NULL),
'-' uitvoering_perc,
'?' norm
'?' norm,
x.afd_key
FROM ( SELECT maand,
bedrijf,
afd_key,
'KRITIEK' sla,
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
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_key bedrijf_key,
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
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) x;
(SELECT DISTINCT
cp.prs_bedrijf_key bedrijf_key,
p.prs_afdeling_key afd_key
FROM prs_contactpersoon cp, prs_perslid p
WHERE cp.prs_perslid_key = p.prs_perslid_key)
scope
ON opdr.bedrijf_key = scope.bedrijf_key
GROUP BY maand, bedrijf, afd_key) x;
/* Formatted on 4-2-2013 15:35:05 (QP5 v5.115.810.9015) */
/*
@@ -3237,7 +3300,7 @@ AS
AND td.ins_srtdiscipline_key =
sd.ins_srtdiscipline_key
AND m.prs_perslid_key = p.prs_perslid_key
AND p.prs_srtperslid_key = 6
--AND p.prs_srtperslid_key = 6
AND p.prs_perslid_key = pf.prs_perslid_key
AND m.mld_melding_datum >
TRUNC (ADD_MONTHS (SYSDATE, -12), 'yyyy'))
@@ -4012,7 +4075,7 @@ AS
BEGIN adm.systrackscript('$Workfile: wtca.sql $', '$Revision$', 0); END;
/
BEGIN fac.registercustversion('WTCA', 19); END;
BEGIN fac.registercustversion('WTCA', 20); END;
/
COMMIT;
spool off