WTCA#21357

svn path=/Customer/trunk/; revision=14942
This commit is contained in:
Maarten van der Heide
2011-09-21 07:57:02 +00:00
parent 94b7d35cff
commit f9066fb1d5

View File

@@ -1,7 +1,7 @@
-- Script containing customer specific db-configuration for WTCA.
-- (c) 2010 SG|facilitor bv
-- $Revision: 19 $
-- $Modtime: 21-06-11 16:03 $
-- $Revision: 20 $
-- $Modtime: 19-09-11 14:30 $
--
-- Support: +31 53 4800700
@@ -2359,9 +2359,272 @@ AS
ON x.bedrijf_key = y.bedrijf_key
WHERE y.aantal IS NOT NULL;
BEGIN adm.systrackscript('$Workfile: wtca.sql $', '$Revision: 19 $', 0); END;
/* Formatted on 19-9-2011 14:30:36 (QP5 v5.115.810.9015) */
CREATE OR REPLACE VIEW wtca_v_rap_lev_perf
(
fclt_f_maand,
fclt_f_bedrijf,
fclt_f_sla,
aant_opdr,
acceptatie_op_tijd,
acceptatie_perc,
uitvoering_op_tijd,
uitvoering_perc,
binnen_norm
)
AS
SELECT x.maand,
x.bedrijf,
DECODE (x.sla, NULL, 'Onbekend', TO_CHAR (x.sla) || ' dag(en)')
sla,
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,
DECODE (
x.aant_opdrachten,
0,
'Ja',
DECODE (
SIGN (
(x.uitvoering_op_tijd * 100 / x.aant_opdrachten) - 80
),
1,
'Ja',
'Nee'
)
)
norm
FROM ( SELECT maand,
bedrijf,
COALESCE (CORR.sla, opdr.sla) sla,
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.sla, opdr.sla)) x
UNION ALL
SELECT x.maand,
x.bedrijf,
x.sla,
x.aant_opdrachten,
TO_NUMBER (NULL),
'-' acceptatie_perc,
TO_NUMBER (NULL),
'-' uitvoering_perc,
'?' norm
FROM ( SELECT maand,
bedrijf,
'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
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;
BEGIN adm.systrackscript('$Workfile: wtca.sql $', '$Revision: 20 $', 0); END;
/
BEGIN fac.registercustversion('WTCA', 12); END;
BEGIN fac.registercustversion('WTCA', 13); END;
/
COMMIT;
spool off