VEBE#40956 verbetering rapportage doorlooptijden

svn path=/Customer/trunk/; revision=34611
This commit is contained in:
Ruud Lipper
2017-07-13 11:02:52 +00:00
parent 7d63f3084f
commit 871d18828a

View File

@@ -2242,83 +2242,117 @@ END;
-- Selectie doorlooptijden leaseovereenkomst
CREATE OR REPLACE VIEW vebe_v_doorlooptijden
AS
SELECT m.mld_melding_key,
m.mld_melding_status,
berijder.prs_perslid_naam naam_berijder,
ap.prs_perslid_naam naam_ap,
lm.prs_bedrijf_key key_bedrijf1,
lm.prs_bedrijf_naam bedrijf1,
off.mld_opdr_key off_mld_opdr_key,
fac.gettrackingdate ('ORDAFM', off.mld_opdr_key) datum_einde_off_athlon,
lm1.prs_bedrijf_key key_bedrijf2,
lm1.prs_bedrijf_naam bedrijf2,
off1.mld_opdr_key off1_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', off1.mld_opdr_key) datum_start_off_pon,
fac.gettrackingdate ('ORDAFM', off1.mld_opdr_key) datum_einde_off_pon,
gun.mld_opdr_key gun_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', gun.mld_opdr_key) datum_start_gunning,
fac.gettrackingdate ('ORDAFM', gun.mld_opdr_key) datum_einde_gunning,
m1.mld_melding_key mld_vervolgmelding_key,
fac.gettrackingdate ('MLDNEW', m1.mld_melding_key) datum_start_vervolgmelding,
uitv.mld_opdr_key uitv_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', uitv.mld_opdr_key) datum_start_uitvoering,
fac.gettrackingdate ('ORDAFM', uitv.mld_opdr_key) datum_einde_uitvoering
FROM MLD_MELDING m,
prs_perslid berijder,
prs_perslid AP,
mld_opdr off,
mld_opdr off1,
mld_opdr gun,
prs_bedrijf LM,
prs_bedrijf LM1,
mld_melding m1,
mld_opdr uitv
WHERE m.mld_stdmelding_key IN (1, 21)
AND m.prs_perslid_key_voor = berijder.prs_perslid_key
AND m.prs_perslid_key = AP.prs_perslid_key
AND off.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND off.mld_typeopdr_key = 41
AND LM.PRS_BEDRIJF_KEY = off.MLD_UITVOERENDE_KEYS
AND LM.prs_bedrijf_key = 23
AND off1.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND off1.mld_typeopdr_key = 41
AND LM1.PRS_BEDRIJF_KEY = off1.MLD_UITVOERENDE_KEYS
AND LM1.prs_bedrijf_key = 22
AND gun.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND gun.mld_typeopdr_key = 5
AND m1.mld_stdmelding_key = 82
AND m.MLD_MELDING_KEY = m1.MLD_MELDING_START_KEY
AND uitv.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND uitv.mld_typeopdr_key = 81
AND off1.MLD_OPDR_KEY =
(SELECT MAX (MLD_OPDR_KEY)
FROM mld_opdr off1a, prs_bedrijf lm1a
WHERE off1a.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND off1a.mld_typeopdr_key = 41
AND LM1a.PRS_BEDRIJF_KEY = off1a.MLD_UITVOERENDE_KEYS
AND LM1a.prs_bedrijf_key = 22)
AND off.MLD_OPDR_KEY =
(SELECT MAX (MLD_OPDR_KEY)
FROM mld_opdr offAT, prs_bedrijf lma
WHERE offAT.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND offAT.mld_typeopdr_key = 41
AND LMa.PRS_BEDRIJF_KEY = offAT.MLD_UITVOERENDE_KEYS
AND LMa.prs_bedrijf_key = 23)
AND gun.MLD_OPDR_KEY =
(SELECT MAX (MLD_OPDR_KEY)
FROM mld_opdr gun_a
WHERE gun_a.MLD_MELDING_KEY = m.MLD_MELDING_KEY
AND gun_a.mld_typeopdr_key = 5)
AND uitv.MLD_OPDR_KEY =
(SELECT MAX (MLD_OPDR_KEY)
FROM mld_opdr uitv_a
WHERE (uitv_a.MLD_MELDING_KEY = m.MLD_MELDING_KEY OR uitv_a.MLD_MELDING_KEY = m1.MLD_MELDING_KEY)
AND uitv_a.mld_typeopdr_key = 81)
AND m1.MLD_MELDING_KEY =
(SELECT MAX (MLD_MELDING_KEY)
FROM mld_melding m1a
WHERE m.MLD_MELDING_KEY = m1a.MLD_MELDING_START_KEY
AND m1a.mld_stdmelding_key = 82);
SELECT mld_melding_key,
mld_melding_status,
naam_berijder,
naam_ap,
key_bedrijf1,
bedrijf1,
off_mld_opdr_key,
datum_einde_off_athlon,
key_bedrijf2,
bedrijf2,
off1_mld_opdr_key,
datum_start_off_pon,
datum_einde_off_pon,
gun_mld_opdr_key,
datum_start_gunning,
datum_einde_gunning,
mld_vervolgmelding_key,
datum_start_vervolgmelding,
uitv_mld_opdr_key,
datum_start_uitvoering,
datum_einde_uitvoering
FROM (SELECT m.mld_melding_key,
m.mld_melding_status,
berijder.prs_perslid_naam naam_berijder,
ap.prs_perslid_naam naam_ap,
lm.prs_bedrijf_key key_bedrijf1,
lm.prs_bedrijf_naam bedrijf1,
off.mld_opdr_key off_mld_opdr_key,
fac.gettrackingdate ('ORDAFM', off.mld_opdr_key)
datum_einde_off_athlon,
lm1.prs_bedrijf_key key_bedrijf2,
lm1.prs_bedrijf_naam bedrijf2,
off1.mld_opdr_key off1_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', off1.mld_opdr_key)
datum_start_off_pon,
fac.gettrackingdate ('ORDAFM', off1.mld_opdr_key)
datum_einde_off_pon,
gun.mld_opdr_key gun_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', gun.mld_opdr_key)
datum_start_gunning,
fac.gettrackingdate ('ORDAFM', gun.mld_opdr_key)
datum_einde_gunning,
m1.mld_melding_key mld_vervolgmelding_key,
fac.gettrackingdate ('MLDNEW', m1.mld_melding_key)
datum_start_vervolgmelding,
uitv.mld_opdr_key uitv_mld_opdr_key,
fac.gettrackingdate ('ORDNEW', uitv.mld_opdr_key)
datum_start_uitvoering,
fac.gettrackingdate ('ORDAFM', uitv.mld_opdr_key)
datum_einde_uitvoering,
(SELECT MAX (mld_melding_key)
FROM mld_melding m1a
WHERE m.mld_melding_key = m1a.mld_melding_start_key
AND m1a.mld_stdmelding_key = 82)
incl_start_key,
m1.mld_melding_key mld_vervolg_melding
FROM mld_melding m,
prs_perslid berijder,
prs_perslid ap,
mld_opdr off,
mld_opdr off1,
mld_opdr gun,
prs_bedrijf lm,
prs_bedrijf lm1,
mld_melding m1,
mld_opdr uitv
WHERE m.mld_stdmelding_key IN (1, 21)
AND m.prs_perslid_key_voor = berijder.prs_perslid_key
AND m.prs_perslid_key = ap.prs_perslid_key
AND off.mld_melding_key = m.mld_melding_key
AND off.mld_typeopdr_key = 41
AND lm.prs_bedrijf_key = off.mld_uitvoerende_keys
AND lm.prs_bedrijf_key = 23
AND off1.mld_melding_key = m.mld_melding_key
AND off1.mld_typeopdr_key = 41
AND lm1.prs_bedrijf_key = off1.mld_uitvoerende_keys
AND lm1.prs_bedrijf_key = 22
AND gun.mld_melding_key = m.mld_melding_key
AND gun.mld_typeopdr_key = 5
AND m.mld_melding_key = m1.mld_melding_start_key(+)
AND uitv.mld_melding_key = m.mld_melding_key
AND uitv.mld_typeopdr_key = 81
AND off1.mld_opdr_key =
(SELECT MAX (mld_opdr_key)
FROM mld_opdr off1a, prs_bedrijf lm1a
WHERE off1a.mld_melding_key = m.mld_melding_key
AND off1a.mld_typeopdr_key = 41
AND lm1a.prs_bedrijf_key =
off1a.mld_uitvoerende_keys
AND lm1a.prs_bedrijf_key = 22)
AND off.mld_opdr_key =
(SELECT MAX (mld_opdr_key)
FROM mld_opdr offat, prs_bedrijf lma
WHERE offat.mld_melding_key = m.mld_melding_key
AND offat.mld_typeopdr_key = 41
AND lma.prs_bedrijf_key =
offat.mld_uitvoerende_keys
AND lma.prs_bedrijf_key = 23)
AND gun.mld_opdr_key =
(SELECT MAX (mld_opdr_key)
FROM mld_opdr gun_a
WHERE gun_a.mld_melding_key = m.mld_melding_key
AND gun_a.mld_typeopdr_key = 5)
AND uitv.mld_opdr_key =
(SELECT MAX (mld_opdr_key)
FROM mld_opdr uitv_a
WHERE (uitv_a.mld_melding_key = m.mld_melding_key
OR uitv_a.mld_melding_key =
m1.mld_melding_key)
AND uitv_a.mld_typeopdr_key = 81))
WHERE mld_vervolg_melding = incl_start_key OR incl_start_key IS NULL;
-- Rapport doorlooptijden
CREATE OR REPLACE VIEW VEBE_V_RAP_DOORLOOPTIJDEN