SKHF#87200 -- Nieuwe meldingstroom INVESTERING met begroting en budgetbewaking - Oplevering rapportage

svn path=/Customer/trunk/; revision=68305
This commit is contained in:
Jos Migo
2025-03-06 14:53:43 +00:00
parent bb14d4d7aa
commit c168abf733

View File

@@ -696,6 +696,355 @@ SELECT mld_uitvoerende_key,
FROM skhf_v_rap_opdrachten
ORDER BY geplande_aanvang_b ;
-- Investeringsbegrotingen - ticket SKHF#87200
CREATE OR REPLACE VIEW skhf_v_meldingen_inv
AS
SELECT m.mld_melding_key,
sm.mld_stdmelding_omschrijving,
sm.mld_stdmelding_key,
p.prs_perslid_naam_friendly
aanvrager,
l.alg_locatie_omschrijving
locatie,
l.alg_locatie_adres
locatie_adres,
CASE WHEN m4.mld_melding_key IS NOT NULL AND m1.status <> 'Afgemeld' THEN '4. Uitvoering'
WHEN m4.mld_melding_key IS NOT NULL AND m1.status = 'Afgemeld' THEN '4. Uitvoering - Afgerond'
WHEN m4.mld_melding_key IS NULL AND m3.mld_melding_key IS NOT NULL AND m1.status = 'Afgemeld' THEN '3. Afgekeurd'
WHEN m4.mld_melding_key IS NULL AND m3.mld_melding_key IS NOT NULL AND m1.status <> 'Afgemeld' THEN '3. Ter beoordeling'
WHEN m4.mld_melding_key IS NULL AND m3.mld_melding_key IS NULL AND m2.mld_melding_key IS NOT NULL THEN '2. Inventarisatie'
ELSE '<?>'
END
workflow_status,
'nog vullen'
kostenplaats,
-- status en standaard mld-velden in workflow per stap
m1.mld_melding_key
stap1_melding,
m1.mld_melding_datum
melding_datum_1,
m1.status
status_1,
m1.mld_melding_einddatum
melding_einddatum_1,
m1.mld_melding_opmerking
afhandelingstekst_1,
m2.mld_melding_key
stap2_melding,
m2.mld_melding_datum
melding_datum_2,
m2.status
status_2,
m2.mld_melding_einddatum
melding_einddatum_2,
m2.mld_melding_opmerking
afhandelingstekst_2,
m3.mld_melding_key
stap3_melding,
m3.mld_melding_datum
melding_datum_3,
m3.status
status_3,
m3.mld_melding_einddatum
melding_einddatum_3,
m3.mld_melding_opmerking
afhandelingstekst_3,
m4.mld_melding_key
stap4_melding,
m4.mld_melding_datum
melding_datum_4,
m4.status
status_4,
m4.mld_melding_einddatum
melding_einddatum_4,
m4.mld_melding_opmerking
afhandelingstekst_4,
-- alle kenmerkvelden - BLOK INTAKE EN INVENTARISATIE
COALESCE (m4.uitvoeringsjaar,
m3.uitvoeringsjaar,
m2.uitvoeringsjaar,
m1.uitvoeringsjaar)
uitvoeringsjaar,
COALESCE (m4.investeringsbegroting_srt,
m3.investeringsbegroting_srt,
m2.investeringsbegroting_srt,
m1.investeringsbegroting_srt)
investeringsbegroting_srt,
COALESCE (m4.investeringsbegroting_srt_afw,
m3.investeringsbegroting_srt_afw,
m2.investeringsbegroting_srt_afw,
m1.investeringsbegroting_srt_afw)
investeringsbegroting_srt_afw,
COALESCE (m4.uitvoerings_oms,
m3.uitvoerings_oms,
m2.uitvoerings_oms,
m1.uitvoerings_oms)
uitvoerings_oms,
COALESCE (m4.bedrag_begroot,
m3.bedrag_begroot,
m2.bedrag_begroot,
m1.bedrag_begroot)
bedrag_begroot,
COALESCE (m4.prioriteit,
m3.prioriteit,
m2.prioriteit,
m1.prioriteit)
prioriteit,
-- alle kenmerkvelden - BLOK BEOORDELING
COALESCE (m4.akkoord,
m3.akkoord,
m2.akkoord,
m1.akkoord)
akkoord,
COALESCE (m4.toelichting_nietakkoord,
m3.toelichting_nietakkoord,
m2.toelichting_nietakkoord,
m1.toelichting_nietakkoord)
toelichting_nietakkoord,
COALESCE (m4.uitvoerings_oms_definitief,
m3.uitvoerings_oms_definitief,
m2.uitvoerings_oms_definitief,
m1.uitvoerings_oms_definitief)
uitvoerings_oms_definitief,
COALESCE (m4.bedrag_begroot_definitief,
m3.bedrag_begroot_definitief,
m2.bedrag_begroot_definitief,
m1.bedrag_begroot_definitief)
bedrag_begroot_definitief,
-- alle kenmerkvelden - BLOK UITVOERING - OFFERTE
m4.offerte_start
offerte_start,
m4.offerte_selectie
offerte_selectie,
m4.offerte_bedrag
offerte_bedrag,
m4.offerte_toelichting
offerte_toelichting,
-- alle kenmerkvelden - BLOK UITVOERING - REALISATIE
m4.plandatum_gereed
plandatum_gereed,
m4.opdrachten_toelichting
opdrachten_toelichting,
-- Opdrachten_totaal
( SELECT COUNT (*)
FROM mld_opdr
WHERE mld_melding_key = m4.mld_melding_key
GROUP BY mld_melding_key)
opdracht_aantal,
( SELECT SUM (mld_opdr_kosten)
FROM mld_opdr
WHERE mld_melding_key = m4.mld_melding_key
GROUP BY mld_melding_key)
opdracht_kosten_totaal,
( SELECT SUM (mld_opdr_kosten)
FROM mld_opdr
WHERE mld_melding_key = m4.mld_melding_key
AND mld_statusopdr_key IN (3, 4, 5, 8,10)
GROUP BY mld_melding_key)
opdracht_kosten_lopend,
( SELECT SUM (mld_opdr_kosten)
FROM mld_opdr
WHERE mld_melding_key = m4.mld_melding_key
AND mld_statusopdr_key IN (6)
GROUP BY mld_melding_key)
opdracht_kosten_afgemeld, -- technisch voltooid
( SELECT SUM (mld_opdr_kosten)
FROM mld_opdr
WHERE mld_melding_key = m4.mld_melding_key
AND mld_statusopdr_key IN (7, 9)
GROUP BY mld_melding_key)
opdracht_kosten_voltooid -- factuur ontvangen
FROM mld_melding m,
mld_stdmelding sm,
prs_v_perslid_fullnames_all p,
alg_locatie l,
(SELECT m.mld_melding_start_key,
m.mld_workflowstep_key,
m.mld_melding_key,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_melding_opmerking,
(SELECT s.mld_statuses_omschrijving
FROM mld_statuses s
WHERE s.mld_statuses_key = m.mld_melding_status)
status,
-- blok intake
flx.getflex ('MLD', 341, m.mld_melding_key)
uitvoeringsjaar,
flx.getdomeinwaarde (
201,
(flx.getflex ('MLD', 301, m.mld_melding_key)))
investeringsbegroting_srt,
flx.getflex ('MLD', 324, m.mld_melding_key)
investeringsbegroting_srt_afw,
flx.getflex ('MLD', 481, m.mld_melding_key)
uitvoerings_oms,
flx.getflex ('MLD', 561, m.mld_melding_key)
bedrag_begroot,
flx.getdomeinwaarde (
221,
(flx.getflex ('MLD', 501, m.mld_melding_key)))
prioriteit,
-- blok beoordeling
flx.getdomeinwaarde (
241,
(flx.getflex ('MLD', 541, m.mld_melding_key)))
akkoord,
flx.getflex ('MLD', 641, m.mld_melding_key)
toelichting_nietakkoord,
flx.getflex ('MLD', 521, m.mld_melding_key)
uitvoerings_oms_definitief,
flx.getflex ('MLD', 562, m.mld_melding_key)
bedrag_begroot_definitief
FROM mld_melding m
WHERE m.mld_stdmelding_key = 301 -- start-melding
) m1,
(SELECT m.mld_melding_start_key,
m.mld_workflowstep_key,
m.mld_melding_key,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_melding_opmerking,
(SELECT s.mld_statuses_omschrijving
FROM mld_statuses s
WHERE s.mld_statuses_key = m.mld_melding_status)
status,
-- blok intake
flx.getflex ('MLD', 341, m.mld_melding_key)
uitvoeringsjaar,
flx.getdomeinwaarde (
201,
(flx.getflex ('MLD', 301, m.mld_melding_key)))
investeringsbegroting_srt,
flx.getflex ('MLD', 324, m.mld_melding_key)
investeringsbegroting_srt_afw,
flx.getflex ('MLD', 481, m.mld_melding_key)
uitvoerings_oms,
flx.getflex ('MLD', 561, m.mld_melding_key)
bedrag_begroot,
flx.getdomeinwaarde (
221,
(flx.getflex ('MLD', 501, m.mld_melding_key)))
prioriteit,
-- blok beoordeling
flx.getdomeinwaarde (
241,
(flx.getflex ('MLD', 541, m.mld_melding_key)))
akkoord,
flx.getflex ('MLD', 641, m.mld_melding_key)
toelichting_nietakkoord,
flx.getflex ('MLD', 521, m.mld_melding_key)
uitvoerings_oms_definitief,
flx.getflex ('MLD', 562, m.mld_melding_key)
bedrag_begroot_definitief
FROM mld_melding m
WHERE m.mld_stdmelding_key = 302 -- melding complementeren
) m2,
(SELECT m.mld_melding_start_key,
m.mld_workflowstep_key,
m.mld_melding_key,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_melding_opmerking,
(SELECT s.mld_statuses_omschrijving
FROM mld_statuses s
WHERE s.mld_statuses_key = m.mld_melding_status)
status,
-- blok intake
flx.getflex ('MLD', 341, m.mld_melding_key)
uitvoeringsjaar,
flx.getdomeinwaarde (
201,
(flx.getflex ('MLD', 301, m.mld_melding_key)))
investeringsbegroting_srt,
flx.getflex ('MLD', 324, m.mld_melding_key)
investeringsbegroting_srt_afw,
flx.getflex ('MLD', 481, m.mld_melding_key)
uitvoerings_oms,
flx.getflex ('MLD', 561, m.mld_melding_key)
bedrag_begroot,
flx.getdomeinwaarde (
221,
(flx.getflex ('MLD', 501, m.mld_melding_key)))
prioriteit,
-- blok beoordeling
flx.getdomeinwaarde (
241,
(flx.getflex ('MLD', 541, m.mld_melding_key)))
akkoord,
flx.getflex ('MLD', 641, m.mld_melding_key)
toelichting_nietakkoord,
flx.getflex ('MLD', 521, m.mld_melding_key)
uitvoerings_oms_definitief,
flx.getflex ('MLD', 562, m.mld_melding_key)
bedrag_begroot_definitief
FROM mld_melding m
WHERE m.mld_stdmelding_key = 303 -- beoordeling investering
) m3,
(SELECT m.mld_melding_start_key,
m.mld_workflowstep_key,
m.mld_melding_key,
m.mld_melding_datum,
m.mld_melding_einddatum,
m.mld_melding_opmerking,
(SELECT s.mld_statuses_omschrijving
FROM mld_statuses s
WHERE s.mld_statuses_key = m.mld_melding_status)
status,
-- blok intake
flx.getflex ('MLD', 341, m.mld_melding_key)
uitvoeringsjaar,
flx.getdomeinwaarde (
201,
(flx.getflex ('MLD', 301, m.mld_melding_key)))
investeringsbegroting_srt,
flx.getflex ('MLD', 324, m.mld_melding_key)
investeringsbegroting_srt_afw,
flx.getflex ('MLD', 481, m.mld_melding_key)
uitvoerings_oms,
flx.getflex ('MLD', 561, m.mld_melding_key)
bedrag_begroot,
flx.getdomeinwaarde (
221,
(flx.getflex ('MLD', 501, m.mld_melding_key)))
prioriteit,
-- blok beoordeling
flx.getdomeinwaarde (
241,
(flx.getflex ('MLD', 541, m.mld_melding_key)))
akkoord,
flx.getflex ('MLD', 641, m.mld_melding_key)
toelichting_nietakkoord,
flx.getflex ('MLD', 521, m.mld_melding_key)
uitvoerings_oms_definitief,
flx.getflex ('MLD', 562, m.mld_melding_key)
bedrag_begroot_definitief,
-- blok uitvoering
flx.getflex ('MLD', 361, m.mld_melding_key)
offerte_start,
flx.getflex ('MLD', 401, m.mld_melding_key)
offerte_selectie,
flx.getflex ('MLD', 403, m.mld_melding_key)
offerte_bedrag,
flx.getflex ('MLD', 381, m.mld_melding_key)
offerte_toelichting,
flx.getflex ('MLD', 461, m.mld_melding_key)
plandatum_gereed,
flx.getflex ('MLD', 441, m.mld_melding_key)
opdrachten_toelichting
FROM mld_melding m
WHERE m.mld_stdmelding_key = 304 -- uitvoering investering
) m4
WHERE m.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_stdmelding_key = 301 -- trajectmelding
AND m.prs_perslid_key = p.prs_perslid_key
AND m.mld_alg_locatie_key = l.alg_locatie_key
AND m.mld_melding_start_key = m1.mld_melding_start_key -- kenmerkvelden intitieel gevuld in trajectmelding
AND m.mld_melding_start_key = m2.mld_melding_start_key(+)
AND m.mld_melding_start_key = m3.mld_melding_start_key(+)
AND m.mld_melding_start_key = m4.mld_melding_start_key(+)
;
-------------------------------
--- DAILY SKHF ---------------
-------------------------------