PGHE#68684 -- Rapport goedkeuring SVD's en Rapport beschikbaarheid koffieautomaten.

svn path=/Customer/trunk/; revision=55271
This commit is contained in:
Arthur Egberink
2022-03-11 07:53:09 +00:00
parent 6431a767c5
commit f074a9b711

View File

@@ -1346,6 +1346,117 @@ AS
AND mld_melding_status IN (2, 3);
CREATE OR REPLACE VIEW pghe_v_goedkeuring_svd
AS
SELECT pf.prs_perslid_naam_full,
m.prs_perslid_key,
o.mld_melding_key,
mld_opdr_key,
o.mld_opdr_bedrijfopdr_volgnr,
m.mld_melding_onderwerp,
sd.ins_srtdiscipline_prefix
|| m.mld_melding_key
|| '/'
|| o.mld_opdr_bedrijfopdr_volgnr
id,
so.mld_statusopdr_omschrijving,
(SELECT mld_kenmerkopdr_waarde
FROM mld_kenmerkopdr ko
WHERE ko.mld_kenmerk_key = 201 -- goedgekeurd door aanvrager
AND ko.mld_opdr_key = o.mld_opdr_key) goedgekeurd,
(SELECT mld_kenmerkopdr_waarde
FROM mld_kenmerkopdr ko
WHERE ko.mld_kenmerk_key = 183 -- aantal tikken
AND ko.mld_opdr_key = o.mld_opdr_key) aantaltikken,
(SELECT mld_kenmerkopdr_waarde
FROM mld_kenmerkopdr ko
WHERE ko.mld_kenmerk_key = 181 -- maand
AND ko.mld_opdr_key = o.mld_opdr_key) maand
FROM mld_opdr o,
mld_melding m,
prs_v_perslid_fullnames_all pf,
mld_stdmelding std,
mld_discipline d,
ins_srtdiscipline sd,
mld_statusopdr so
WHERE o.mld_typeopdr_key = 261 -- SVD
AND o.mld_statusopdr_key = so.mld_statusopdr_key
AND m.mld_melding_key = o.mld_melding_key
AND m.prs_perslid_key = pf.prs_perslid_key
AND m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = sd.ins_srtdiscipline_key;
-- View om de beschikbaarheid van de koffieautomaten inzichtelijke te krijgen. De meetperiode is 2 maanden.
-- De tijd dat het apparaat in storing is wordt vergelijken met de beschikbaarheid
-- Hiermee wordt rekening gehouden met indult en overlappende meldingen. Ook overlap met andere maanden.
-- Er wordt geen rekening gehouden met respijt dat gegeven wordt op een melding omdat je dan bij meldingen die
-- een maandgrens overschrijden niet weet in welke periode de respijt valt.
CREATE OR REPLACE VIEW pghe_v_rap_beschikb_koffie1
AS
SELECT mnth_begin mnth_begin,
mnth_einde-1 mnth_einde,
alg_ruimte_nr,
beschikbaar,
storing,
ROUND ((beschikbaar - COALESCE (storing, 0)) * 100 / beschikbaar, 2) beschikbaarheid
FROM ( SELECT mnth_begin,
mnth_einde,
alg_ruimte_key,
SUM (FAC.datumtijdnaaruitvoertijd (m_begin_cor, m_einde_cor, 'U', 8, 18, 1).tijdsduur) storing,
FAC.datumtijdnaaruitvoertijd (mnth_begin, mnth_einde, 'U', 8, 18, 1).tijdsduur beschikbaar
FROM (WITH
months
AS
(SELECT *
FROM ( SELECT TRUNC (ADD_MONTHS (SYSDATE, (-1 * LEVEL) + 1), 'MM') month
FROM DUAL
CONNECT BY LEVEL <= 4),
(SELECT alg_ruimte_key
FROM ins_v_deel_gegevens
WHERE ins_srtdeel_key = 1))
SELECT mnth_begin,
mnth_einde,
m_start,
m_begin,
m_einde,
DECODE (SIGN (m_begin - mnth_begin),
-1, mnth_begin,
m_begin) m_begin_cor,
DECODE (SIGN (m_einde - mnth_einde),
1, mnth_einde,
m_einde) m_einde_cor,
alg_ruimte_key
FROM (SELECT months.month mnth_begin,
ADD_MONTHS (months.month, 2) mnth_einde,
m.mld_alg_onroerendgoed_keys,
alg_ruimte_key,
m_start,
m_begin,
m_einde
FROM months
LEFT JOIN
( SELECT m_start,
MIN (mld_melding_datum) m_begin,
MAX (afgemeld) m_einde,
mld_alg_onroerendgoed_keys --,
FROM (SELECT pchx_mon.get_first_melding (mld_melding_key, 1) m_start,
mld_melding_datum,
COALESCE (fac.gettrackingdate ('MLDAFM', mld_melding_key), SYSDATE) afgemeld,
mld_alg_onroerendgoed_keys
FROM mld_melding
WHERE mld_stdmelding_key = 91 -- beschikbaarheid warme dranken
AND mld_melding_indult = 0)
GROUP BY m_start, mld_alg_onroerendgoed_keys) m
ON months.month < m_einde AND ADD_MONTHS (months.month, 2) > m_begin
AND months.alg_ruimte_key =
m.mld_alg_onroerendgoed_keys))
GROUP BY mnth_begin, mnth_einde, alg_ruimte_key) mg,
alg_ruimte r
WHERE r.alg_ruimte_key = mg.alg_ruimte_key
ORDER BY alg_ruimte_nr, mnth_begin;
------ payload end ------
SET DEFINE OFF