FCLT#70361: Management rapportage voor periodieke taken.
svn path=/Database/trunk/; revision=58801
This commit is contained in:
455
CTR/CTR_VIE.SRC
455
CTR/CTR_VIE.SRC
@@ -15,41 +15,39 @@ DEFINIEER_VIEW_AANWEZIG(ctr_discipline, ins_discipline_verwijder,
|
||||
CREATE_VIEW(ctr_v_monthly_recurring_tasks, 0)
|
||||
AS
|
||||
-- Inspecties die dit jaar en volgend jaar nog uitgevoerd moeten worden.
|
||||
SELECT gedeelte,
|
||||
ig.ins_deel_key,
|
||||
ig.ins_srtcontrole_key,
|
||||
ig.discipline,
|
||||
SELECT ig.discipline,
|
||||
ig.soort,
|
||||
ig.groep,
|
||||
ig.soortcode,
|
||||
ig.omschrijving,
|
||||
ig.omschrijving object,
|
||||
ig.opmerking,
|
||||
ig.locatie_omschrijving,
|
||||
ig.locatie_omschrijving locatie,
|
||||
ig.gebouw,
|
||||
ig.ruimtenr,
|
||||
ig.perslid persoon,
|
||||
ig.aantal,
|
||||
ig.srtcontrole_omschrijving,
|
||||
ig.ins_discipline_omschrijving,
|
||||
ig.ins_deelsrtcontrole_datum,
|
||||
ig.controlemode_omschrijving,
|
||||
ig.ins_deelsrtcontrole_opmerking,
|
||||
ig.perslid,
|
||||
ig.ins_deelsrtcontrole_datum_org,
|
||||
ig.ins_deelsrtcontrole_plandatum,
|
||||
ins_deelsrtcontrole_status,
|
||||
ins_controlemode_success,
|
||||
ig.deelsrtcontrole_status,
|
||||
ig.srtcontrole_omschrijving taak,
|
||||
ig.ins_srtcontrole_eenheid eenheid,
|
||||
ig.ins_srtcontrole_periode periode,
|
||||
ig.taaksoort,
|
||||
ig.ins_deelsrtcontrole_datum inspectiedatum,
|
||||
ig.controlemode_omschrijving taakafhandeling,
|
||||
ig.ins_deelsrtcontrole_opmerking inspectie_opmerking,
|
||||
ins_deelsrtcontrole_status inspectie_code,
|
||||
ig.deelsrtcontrole_status inspectie_status,
|
||||
ins_controlemode_success succesvol,
|
||||
TO_CHAR(ig.volgendedatum, 'MM') maand,
|
||||
TO_CHAR(ig.volgendedatum, 'YYYY') jaar,
|
||||
TO_CHAR(ig.volgendedatum, 'YYYY-MM') jaarmaand,
|
||||
ig.ins_deelsrtcontrole_datum_org orgdatum,
|
||||
ig.ins_deelsrtcontrole_plandatum plandatum,
|
||||
ig.volgendedatum,
|
||||
ig.ins_srtcontrole_eenheid,
|
||||
ig.ins_srtcontrole_periode,
|
||||
ig.vervaldatum,
|
||||
ig.ins_deel_key deel_key,
|
||||
ig.ins_srtcontrole_key,
|
||||
ig.ins_deelsrtcontrole_key
|
||||
FROM (WITH
|
||||
comps(gedeelte,
|
||||
ins_deel_key,
|
||||
comps(ins_deel_key,
|
||||
ins_srtcontrole_key,
|
||||
ins_deelsrtcontrole_datum,
|
||||
ins_srtcontrole_eenheid,
|
||||
@@ -66,7 +64,7 @@ AS
|
||||
ruimtenr,
|
||||
aantal,
|
||||
srtcontrole_omschrijving,
|
||||
ins_discipline_omschrijving,
|
||||
taaksoort,
|
||||
ins_deelsrtcontrole_datum_org,
|
||||
controlemode_omschrijving,
|
||||
ins_deelsrtcontrole_opmerking,
|
||||
@@ -78,16 +76,189 @@ AS
|
||||
vervaldatum,
|
||||
ins_deelsrtcontrole_key)
|
||||
AS
|
||||
(-- 1a) Eerste deel bepaald de laatste inspectie (geplande(0), gestarte(2), afgemeld(5) of verwerkt(6)).
|
||||
SELECT '1a' gedeelte,
|
||||
di.deel_key ins_deel_key,
|
||||
( -- 1a) Eerste deel bepaald de laatste inspectie (geplande(0), gestarte(2), afgemeld(5) of verwerkt(6)).
|
||||
SELECT di.deel_key ins_deel_key,
|
||||
xcp.ins_srtcontrole_key,
|
||||
di.ins_deelsrtcontrole_datum,
|
||||
xcp.ins_srtcontrole_eenheid,
|
||||
xcp.ins_srtcontrole_periode,
|
||||
COALESCE(di.ins_deelsrtcontrole_datum,
|
||||
di.ins_deelsrtcontrole_plandatum,
|
||||
di.ins_deelsrtcontrole_datum_org) volgendedatum,
|
||||
COALESCE(di.ins_deelsrtcontrole_plandatum,
|
||||
CASE
|
||||
WHEN di.ins_deelsrtcontrole_status = 2
|
||||
AND di.ins_deelsrtcontrole_datum_org IS NULL
|
||||
THEN
|
||||
-- Periodieke taken:
|
||||
-- De startdatum is MAX(startdatum, aanmaakdatum/registratiedatum) en heeft altijd een waarde (ins_deel_aanmaak is altijd gevuld).
|
||||
-- Er is nog geen inspectie geweest en de startdatum is ingevuld of de registratiedatum ligt in de toekomst.
|
||||
-- Er geldt dan het volgende:
|
||||
-- Voor Controle(1): Eerste inspectie tonen op MAX(startdatum, registratiedatum) van het object.
|
||||
-- Voor Vervanging(2) of Certificering(3):
|
||||
-- a) Als de startdatum het verst ligt: Eerste inspectie tonen op de startdatum.
|
||||
-- b) Als registratiedatum het verst in de toekomst ligt: Eerste inspectie tonen op 1 periode verder dan de registratiedatum.
|
||||
-- De aanmaakdatum/Registratiedatum is altijd ingevuld en als er al een inspectie is geweest,
|
||||
-- zijn de startdatum en registratiedatum niet meer van belang.
|
||||
CASE
|
||||
-- Er geldt dat (ctr_ismjob = 0), dus de eerste when is toch niet geldig.
|
||||
--WHEN di.ctr_ismjob = 1
|
||||
--THEN
|
||||
-- ins_deelsrtcontrole_freezedate
|
||||
WHEN xcp.ctr_controle_type = 1
|
||||
THEN -- Controle(1).
|
||||
CASE
|
||||
WHEN xcp.ins_srtcontroledl_xcp_startdat IS NOT NULL
|
||||
AND xcp.ins_srtcontroledl_xcp_startdat >= xcp.ins_deel_aanmaak
|
||||
THEN
|
||||
xcp.ins_srtcontroledl_xcp_startdat
|
||||
ELSE
|
||||
xcp.ins_deel_aanmaak
|
||||
END
|
||||
ELSE -- Vervanging(2), Certificering(3).
|
||||
CASE
|
||||
WHEN xcp.ins_srtcontroledl_xcp_startdat IS NOT NULL
|
||||
AND xcp.ins_srtcontroledl_xcp_startdat >= xcp.ins_deel_aanmaak
|
||||
THEN
|
||||
xcp.ins_srtcontroledl_xcp_startdat
|
||||
ELSE
|
||||
fac.nextcyclusdate(
|
||||
COALESCE(
|
||||
(SELECT CASE xcp.ins_srtcontrole_mode
|
||||
WHEN 0
|
||||
THEN
|
||||
di.ins_deelsrtcontrole_datum_org
|
||||
ELSE
|
||||
idsc.ins_deelsrtcontrole_datum
|
||||
END
|
||||
ins_deelsrtcontrole_datum
|
||||
FROM ins_deelsrtcontrole idsc
|
||||
WHERE idsc.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND di.ins_deelsrtcontrole_status IN (5, 6)
|
||||
AND idsc.ins_deel_key = di.deel_key
|
||||
AND idsc.ins_deelsrtcontrole_key =
|
||||
(SELECT MAX(idsc2.ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole idsc2
|
||||
WHERE idsc2.ins_deel_key = di.deel_key
|
||||
AND idsc2.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND idsc2.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc2.ins_scenario_key = 1)),
|
||||
GREATEST(
|
||||
COALESCE(xcp.ins_srtcontroledl_xcp_startdat,
|
||||
xcp.ins_deel_aanmaak),
|
||||
COALESCE(xcp.ins_deel_aanmaak,
|
||||
xcp.ins_srtcontroledl_xcp_startdat))),
|
||||
xcp.ins_srtcontrole_mode,
|
||||
xcp.ins_srtcontrole_eenheid,
|
||||
xcp.ins_srtcontrole_periode,
|
||||
xcp.ins_srtcontrole_bits,
|
||||
CASE
|
||||
WHEN xcp.ins_srtcontrole_mode = 1
|
||||
THEN
|
||||
1
|
||||
WHEN xcp.ins_srtcontrole_eenheid = 0
|
||||
AND TRUNC(
|
||||
COALESCE(
|
||||
(SELECT CASE xcp.ins_srtcontrole_mode
|
||||
WHEN 0
|
||||
THEN
|
||||
di.ins_deelsrtcontrole_datum_org
|
||||
ELSE
|
||||
idsc.ins_deelsrtcontrole_datum
|
||||
END
|
||||
ins_deelsrtcontrole_datum
|
||||
FROM ins_deelsrtcontrole idsc
|
||||
WHERE idsc.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND di.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc.ins_deel_key = di.deel_key
|
||||
AND idsc.ins_deelsrtcontrole_key =
|
||||
(SELECT MAX(
|
||||
idsc2.ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole idsc2
|
||||
WHERE idsc2.ins_deel_key =
|
||||
di.deel_key
|
||||
AND idsc2.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND idsc2.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc2.ins_scenario_key =
|
||||
1)),
|
||||
xcp.ins_deel_aanmaak),
|
||||
'HH24') >=
|
||||
TRUNC(SYSDATE, 'HH24')
|
||||
THEN
|
||||
1
|
||||
WHEN xcp.ins_srtcontrole_eenheid > 0
|
||||
AND TRUNC(
|
||||
COALESCE(
|
||||
(SELECT CASE xcp.ins_srtcontrole_mode
|
||||
WHEN 0
|
||||
THEN
|
||||
di.ins_deelsrtcontrole_datum_org
|
||||
ELSE
|
||||
idsc.ins_deelsrtcontrole_datum
|
||||
END
|
||||
ins_deelsrtcontrole_datum
|
||||
FROM ins_deelsrtcontrole idsc
|
||||
WHERE idsc.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND di.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc.ins_deel_key = di.deel_key
|
||||
AND idsc.ins_deelsrtcontrole_key =
|
||||
(SELECT MAX(
|
||||
idsc2.ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole idsc2
|
||||
WHERE idsc2.ins_deel_key =
|
||||
di.deel_key
|
||||
AND idsc2.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND idsc2.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc2.ins_scenario_key =
|
||||
1)),
|
||||
xcp.ins_deel_aanmaak),
|
||||
'DDD') >=
|
||||
TRUNC(SYSDATE, 'DDD')
|
||||
THEN
|
||||
1
|
||||
WHEN (SELECT CASE xcp.ins_srtcontrole_mode
|
||||
WHEN 0
|
||||
THEN
|
||||
di.ins_deelsrtcontrole_datum_org
|
||||
ELSE
|
||||
idsc.ins_deelsrtcontrole_datum
|
||||
END
|
||||
ins_deelsrtcontrole_datum
|
||||
FROM ins_deelsrtcontrole idsc
|
||||
WHERE idsc.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND di.ins_deelsrtcontrole_status IN (5, 6)
|
||||
AND idsc.ins_deel_key = di.deel_key
|
||||
AND idsc.ins_deelsrtcontrole_key =
|
||||
(SELECT MAX(
|
||||
idsc2.ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole idsc2
|
||||
WHERE idsc2.ins_deel_key = di.deel_key
|
||||
AND idsc2.ins_srtcontrole_key =
|
||||
di.ins_srtcontrole_key
|
||||
AND idsc2.ins_deelsrtcontrole_status IN
|
||||
(5, 6)
|
||||
AND idsc2.ins_scenario_key = 1))
|
||||
IS NULL
|
||||
THEN
|
||||
1
|
||||
ELSE
|
||||
0
|
||||
END,
|
||||
0) --Er geldt dat (ctr_ismjob = 0), dus de eerste when is toch niet geldig.
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
di.ins_deelsrtcontrole_datum_org
|
||||
END) volgendedatum,
|
||||
discipline,
|
||||
soort,
|
||||
groep,
|
||||
@@ -99,48 +270,57 @@ AS
|
||||
ruimtenr,
|
||||
aantal,
|
||||
srtcontrole_omschrijving,
|
||||
ctr_discipline_omschrijving ins_discipline_omschrijving,
|
||||
ctr_discipline_omschrijving taaksoort,
|
||||
ins_deelsrtcontrole_datum_org,
|
||||
controlemode_omschrijving,
|
||||
ins_deelsrtcontrole_opmerking,
|
||||
perslid,
|
||||
ins_deelsrtcontrole_plandatum,
|
||||
(SELECT ins_deelsrtcontrole_status
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key) ins_deelsrtcontrole_status,
|
||||
COALESCE((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)), -1) ins_controlemode_success,
|
||||
CASE (SELECT ins_deelsrtcontrole_status
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)
|
||||
di.ins_deelsrtcontrole_status,
|
||||
COALESCE(
|
||||
(SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key =
|
||||
(SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)),
|
||||
-1) ins_controlemode_success,
|
||||
CASE di.ins_deelsrtcontrole_status
|
||||
WHEN 0
|
||||
THEN lcl.L('lcl_ins_controle_pending')
|
||||
THEN
|
||||
lcl.L('lcl_ins_controle_pending')
|
||||
WHEN 2
|
||||
THEN lcl.L('lcl_ins_controle_gestart')
|
||||
THEN
|
||||
lcl.L('lcl_ins_controle_gestart')
|
||||
WHEN 5
|
||||
THEN
|
||||
CASE
|
||||
WHEN ((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) = 1)
|
||||
THEN lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE lcl.L('lcl_ins_controlemode_deprecated')
|
||||
WHERE icm.ins_controlemode_key =
|
||||
(SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) =
|
||||
1)
|
||||
THEN
|
||||
lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE
|
||||
lcl.L('lcl_ins_controlemode_deprecated')
|
||||
END
|
||||
WHEN 6
|
||||
THEN
|
||||
CASE
|
||||
WHEN ((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) = 1)
|
||||
THEN lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE lcl.L('lcl_ins_controlemode_deprecated')
|
||||
WHERE icm.ins_controlemode_key =
|
||||
(SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) =
|
||||
1)
|
||||
THEN
|
||||
lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE
|
||||
lcl.L('lcl_ins_controlemode_deprecated')
|
||||
END
|
||||
END deelsrtcontrole_status,
|
||||
xcp.ins_srtcontrole_eind vervaldatum,
|
||||
@@ -149,40 +329,45 @@ AS
|
||||
ins_v_defined_inspect_xcp xcp,
|
||||
ctr_disc_params dp
|
||||
WHERE di.ins_srtcontrole_key = xcp.ins_srtcontrole_key
|
||||
AND ctr_discipline_key = ctr_ins_discipline_key
|
||||
AND di.deel_key = xcp.ins_deel_key
|
||||
AND xcp.ctr_discipline_key = dp.ctr_ins_discipline_key
|
||||
AND dp.ctr_disc_params_ismjob = 0
|
||||
AND xcp.ins_srtcontrole_eenheid > 2
|
||||
AND xcp.ins_scenario_key = 1
|
||||
AND xcp.ins_srtcontrole_periode > 0
|
||||
AND di.ins_deelsrtcontrole_key = (SELECT MAX(ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole id2
|
||||
WHERE id2.ins_deel_key = di.deel_key
|
||||
AND id2.ins_srtcontrole_key = di.ins_srtcontrole_key
|
||||
AND id2.ins_scenario_key = 1)
|
||||
AND COALESCE(di.ins_deelsrtcontrole_datum,
|
||||
di.ins_deelsrtcontrole_plandatum,
|
||||
di.ins_deelsrtcontrole_datum_org)
|
||||
IS NOT NULL
|
||||
UNION ALL
|
||||
-- 1b) Tweede deel bepaalt/berekent de toekomstige inspecties van dit jaar en volgend jaar.
|
||||
SELECT '1b' gedeelte,
|
||||
m.ins_deel_key,
|
||||
SELECT m.ins_deel_key,
|
||||
m.ins_srtcontrole_key,
|
||||
NULL ins_deelsrtcontrole_datum,
|
||||
m.ins_srtcontrole_eenheid,
|
||||
m.ins_srtcontrole_periode,
|
||||
ADD_MONTHS(volgendedatum, CASE
|
||||
WHEN m.ins_srtcontrole_eenheid = 3
|
||||
THEN m.ins_srtcontrole_periode
|
||||
ELSE m.ins_srtcontrole_periode * 12
|
||||
END),
|
||||
discipline,
|
||||
soort,
|
||||
groep,
|
||||
soortcode,
|
||||
omschrijving,
|
||||
opmerking,
|
||||
locatie_omschrijving,
|
||||
gebouw,
|
||||
ruimtenr,
|
||||
aantal,
|
||||
srtcontrole_omschrijving,
|
||||
ins_discipline_omschrijving,
|
||||
ADD_MONTHS(m.volgendedatum,
|
||||
CASE
|
||||
WHEN m.ins_srtcontrole_eenheid = 3 THEN m.ins_srtcontrole_periode
|
||||
ELSE m.ins_srtcontrole_periode * 12
|
||||
END),
|
||||
m.discipline,
|
||||
m.soort,
|
||||
m.groep,
|
||||
m.soortcode,
|
||||
m.omschrijving,
|
||||
m.opmerking,
|
||||
m.locatie_omschrijving,
|
||||
m.gebouw,
|
||||
m.ruimtenr,
|
||||
m.aantal,
|
||||
m.srtcontrole_omschrijving,
|
||||
m.taaksoort,
|
||||
NULL ins_deelsrtcontrole_datum_org,
|
||||
NULL controlemode_omschrijving,
|
||||
NULL ins_deelsrtcontrole_opmerking,
|
||||
@@ -191,109 +376,115 @@ AS
|
||||
-1 ins_deelsrtcontrole_status,
|
||||
-1 ins_controlemode_success,
|
||||
lcl.L('lcl_ins_controlemode_notplaned') deelsrtcontrole_status,
|
||||
vervaldatum,
|
||||
m.vervaldatum,
|
||||
NULL ins_deelsrtcontrole_key
|
||||
FROM comps m
|
||||
WHERE ADD_MONTHS(volgendedatum, CASE
|
||||
WHEN m.ins_srtcontrole_eenheid = 3
|
||||
THEN m.ins_srtcontrole_periode
|
||||
ELSE m.ins_srtcontrole_periode * 12
|
||||
END) <= TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY'))
|
||||
WHERE ADD_MONTHS(m.volgendedatum,
|
||||
CASE
|
||||
WHEN m.ins_srtcontrole_eenheid = 3 THEN m.ins_srtcontrole_periode
|
||||
ELSE m.ins_srtcontrole_periode * 12
|
||||
END) <=
|
||||
TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY')
|
||||
)
|
||||
SELECT *
|
||||
FROM comps
|
||||
WHERE volgendedatum BETWEEN TRUNC(ADD_MONTHS(SYSDATE, -12), 'YYYY')
|
||||
AND TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY')) ig
|
||||
WHERE (vervaldatum IS NULL OR vervaldatum > volgendedatum)
|
||||
FROM comps) ig
|
||||
WHERE (ig.vervaldatum IS NULL
|
||||
OR ig.vervaldatum > ig.volgendedatum)
|
||||
AND ig.volgendedatum BETWEEN TRUNC(ADD_MONTHS(SYSDATE, -12), 'YYYY') AND TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY')
|
||||
UNION ALL
|
||||
-- 2) Inspecties die vorig jaar en dit jaar zijn uitgevoerd, uitgezonderd de laatste.
|
||||
SELECT '2' gedeelte,
|
||||
di.deel_key ins_deel_key,
|
||||
sc.ins_srtcontrole_key,
|
||||
di.discipline,
|
||||
SELECT di.discipline,
|
||||
di.soort,
|
||||
di.groep,
|
||||
di.soortcode,
|
||||
di.omschrijving,
|
||||
di.omschrijving object,
|
||||
di.opmerking,
|
||||
di.locatie_omschrijving,
|
||||
di.locatie_omschrijving locatie,
|
||||
di.gebouw,
|
||||
di.ruimtenr,
|
||||
di.perslid persoon,
|
||||
di.aantal,
|
||||
di.srtcontrole_omschrijving,
|
||||
di.ctr_discipline_omschrijving,
|
||||
di.ins_deelsrtcontrole_datum,
|
||||
di.controlemode_omschrijving,
|
||||
di.ins_deelsrtcontrole_opmerking,
|
||||
di.perslid,
|
||||
di.ins_deelsrtcontrole_datum_org,
|
||||
di.ins_deelsrtcontrole_plandatum,
|
||||
di.srtcontrole_omschrijving taak,
|
||||
sc.ins_srtcontrole_eenheid eenheid,
|
||||
sc.ins_srtcontrole_periode periode,
|
||||
di.ctr_discipline_omschrijving taaksoort,
|
||||
di.ins_deelsrtcontrole_datum inspectiedatum,
|
||||
di.controlemode_omschrijving taakafhandeling,
|
||||
di.ins_deelsrtcontrole_opmerking inspectie_opmerking,
|
||||
(SELECT ins_deelsrtcontrole_status
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)
|
||||
ins_deelsrtcontrole_status,
|
||||
COALESCE((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)), -1) ins_controlemode_success,
|
||||
inspectie_code,
|
||||
CASE (SELECT di2.ins_deelsrtcontrole_status
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)
|
||||
WHEN 0
|
||||
THEN lcl.L('lcl_ins_controle_pending')
|
||||
THEN
|
||||
lcl.L('lcl_ins_controle_pending')
|
||||
WHEN 2
|
||||
THEN lcl.L('lcl_ins_controle_gestart')
|
||||
THEN
|
||||
lcl.L('lcl_ins_controle_gestart')
|
||||
WHEN 5
|
||||
THEN
|
||||
CASE
|
||||
WHEN ((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) = 1)
|
||||
THEN lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE lcl.L('lcl_ins_controlemode_deprecated')
|
||||
END
|
||||
WHEN 6
|
||||
WHERE icm.ins_controlemode_key =
|
||||
(SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) =
|
||||
1)
|
||||
THEN
|
||||
lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE
|
||||
lcl.L('lcl_ins_controlemode_deprecated')
|
||||
END
|
||||
WHEN 6
|
||||
THEN
|
||||
CASE
|
||||
WHEN ((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) = 1)
|
||||
THEN lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE lcl.L('lcl_ins_controlemode_deprecated')
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key =
|
||||
(SELECT ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole
|
||||
WHERE ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)) =
|
||||
1)
|
||||
THEN
|
||||
lcl.L('lcl_ins_controlemode_approved')
|
||||
ELSE
|
||||
lcl.L('lcl_ins_controlemode_deprecated')
|
||||
END
|
||||
END deelsrtcontrole_status,
|
||||
END inspectie_status,
|
||||
COALESCE((SELECT icm.ins_controlemode_success
|
||||
FROM ins_controlemode icm
|
||||
WHERE icm.ins_controlemode_key = (SELECT di2.ins_controlemode_key
|
||||
FROM ins_deelsrtcontrole di2
|
||||
WHERE di2.ins_deelsrtcontrole_key = di.ins_deelsrtcontrole_key)),
|
||||
-1) ins_controlemode_success,
|
||||
TO_CHAR(di.ins_deelsrtcontrole_datum, 'MM') maand,
|
||||
TO_CHAR(di.ins_deelsrtcontrole_datum, 'YYYY') jaar,
|
||||
TO_CHAR(di.ins_deelsrtcontrole_datum, 'YYYY-MM') jaarmaand,
|
||||
di.ins_deelsrtcontrole_datum_org orgdatum,
|
||||
di.ins_deelsrtcontrole_plandatum plandatum,
|
||||
di.ins_deelsrtcontrole_datum volgendedatum,
|
||||
sc.ins_srtcontrole_eenheid,
|
||||
sc.ins_srtcontrole_periode,
|
||||
di.vervaldatum,
|
||||
di.deel_key,
|
||||
sc.ins_srtcontrole_key,
|
||||
di.ins_deelsrtcontrole_key
|
||||
FROM ins_v_udr_deelinspect di,
|
||||
ins_srtcontrole sc,
|
||||
ctr_disc_params dp
|
||||
WHERE di.ins_srtcontrole_key = sc.ins_srtcontrole_key
|
||||
AND ctr_discipline_key = ctr_ins_discipline_key
|
||||
AND ctr_disc_params_ismjob = 0
|
||||
AND ins_srtcontrole_eenheid > 2
|
||||
AND ins_deelsrtcontrole_datum BETWEEN TRUNC(ADD_MONTHS(SYSDATE, -12), 'YYYY')
|
||||
AND TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY')
|
||||
AND sc.ctr_discipline_key = dp.ctr_ins_discipline_key
|
||||
AND dp.ctr_disc_params_ismjob = 0
|
||||
AND sc.ins_srtcontrole_eenheid > 2
|
||||
AND di.ins_deelsrtcontrole_datum BETWEEN TRUNC(ADD_MONTHS(SYSDATE, -12), 'YYYY')
|
||||
AND TRUNC(ADD_MONTHS(SYSDATE, 24), 'YYYY')
|
||||
AND di.ins_deelsrtcontrole_key NOT IN (SELECT MAX(ins_deelsrtcontrole_key)
|
||||
FROM ins_deelsrtcontrole id2
|
||||
WHERE id2.ins_deel_key = di.deel_key
|
||||
AND id2.ins_srtcontrole_key = di.ins_srtcontrole_key
|
||||
AND id2.ins_scenario_key = 1)
|
||||
ORDER BY
|
||||
ins_deel_key,
|
||||
ins_srtcontrole_key,
|
||||
ins_deelsrtcontrole_datum,
|
||||
jaar,
|
||||
maand;
|
||||
AND id2.ins_scenario_key = 1);
|
||||
|
||||
REGISTERRUN('$Id$')
|
||||
|
||||
|
||||
@@ -2276,7 +2276,8 @@ SELECT d.deel_key,
|
||||
(SELECT lcl.x ('fc2l.fac_code2label_label', fc2l.fac_code2label_key, fc2l.fac_code2label_label)
|
||||
FROM fac_code2label fc2l
|
||||
WHERE fc2l.fac_code2label_domein = 'controle'
|
||||
AND fc2l.fac_code2label_code = idsc.ins_deelsrtcontrole_status) deelsrtcontrole_status
|
||||
AND fc2l.fac_code2label_code = idsc.ins_deelsrtcontrole_status) deelsrtcontrole_status,
|
||||
idsc.ins_deelsrtcontrole_status
|
||||
FROM ins_v_udr_deel d,
|
||||
ins_deelsrtcontrole idsc
|
||||
WHERE d.deel_key = idsc.ins_deel_key;
|
||||
|
||||
Reference in New Issue
Block a user