PCHX#82765 -- Opzetten dashboards voor PCH

svn path=/Customer/trunk/; revision=64531
This commit is contained in:
Arthur Egberink
2024-05-06 09:24:36 +00:00
parent a33add0626
commit cfb8be6073

View File

@@ -2888,6 +2888,111 @@ AS
AND p.prs_afdeling_key = a.prs_afdeling_key
AND a.prs_bedrijf_key = b.prs_bedrijf_key;
-- Rapportage om te controleren welke rechten er aangepast zijn die te maken hebben met goedkeuring (FIA en GOE rechten)
-- En het wijzigen van profielen en budgethouders.
CREATE OR REPLACE VIEW pchx_v_rap_audit_trail
AS
SELECT *
FROM (SELECT a.fac_audit_key,
fac_audit_tabelnaam,
'Aanpassing rechten van groep' uitleg,
fac_audit_actie,
fac_audit_datum,
pf.prs_perslid_naam_full,
f.fac_functie_omschrijving,
(SELECT fac_groep_omschrijving
FROM fac_groep g, fac_audit a1
WHERE COALESCE (fac.safe_to_number (a1.fac_audit_waarde_oud),
fac.safe_to_number (a1.fac_audit_waarde_nieuw)) =
g.fac_groep_key
AND a.fac_audit_tabelkey = a1.fac_audit_tabelkey
AND a.fac_audit_datum = a1.fac_audit_datum
AND fac_audit_veldnaam = 'fac_groep_key')
|| ' - '
|| (SELECT ins_discipline_omschrijving
FROM ins_tab_discipline d, fac_audit a1
WHERE COALESCE (fac.safe_to_number (a1.fac_audit_waarde_oud),
fac.safe_to_number (a1.fac_audit_waarde_nieuw)) =
d.ins_discipline_key
AND a.fac_audit_tabelkey = a1.fac_audit_tabelkey
AND a.fac_audit_datum = a1.fac_audit_datum
AND fac_audit_veldnaam = 'ins_discipline_key') oms
FROM fac_audit a, fac_functie f, prs_v_perslid_fullnames pf
WHERE fac_audit_tabelnaam = 'fac_groeprechten'
AND (a.fac_audit_waarde_oud = fac_functie_key OR a.fac_audit_waarde_nieuw = fac_functie_key)
AND f.fac_functie_code IN ('WEB_FINBOF', 'WEB_ORDGOE', 'WEB_CNTGOE')
AND a.prs_perslid_key = pf.prs_perslid_key
UNION ALL
SELECT a.fac_audit_key,
fac_audit_tabelnaam,
'Personen toevoegen aan auth groep',
fac_audit_actie,
fac_audit_datum,
pf.prs_perslid_naam_full,
g.fac_groep_omschrijving,
(SELECT p.prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all p, fac_audit a1
WHERE COALESCE (fac.safe_to_number (a1.fac_audit_waarde_oud),
fac.safe_to_number (a1.fac_audit_waarde_nieuw)) =
p.prs_perslid_key
AND a.fac_audit_tabelkey = a1.fac_audit_tabelkey
AND a.fac_audit_datum = a1.fac_audit_datum
AND fac_audit_veldnaam = 'prs_perslid_key')
|| ' - '
|| (SELECT ins_discipline_omschrijving
FROM ins_tab_discipline d, fac_audit a1
WHERE COALESCE (fac.safe_to_number (a1.fac_audit_waarde_oud),
fac.safe_to_number (a1.fac_audit_waarde_nieuw)) =
d.ins_discipline_key
AND a.fac_audit_tabelkey = a1.fac_audit_tabelkey
AND a.fac_audit_datum = a1.fac_audit_datum
AND fac_audit_veldnaam = 'ins_discipline_key') oms
FROM fac_audit a, fac_groep g, prs_v_perslid_fullnames_all pf
WHERE fac_audit_tabelnaam = 'fac_gebruikersgroep'
AND fac_audit_veldnaam = 'fac_groep_key'
AND (a.fac_audit_waarde_oud = fac_groep_key OR a.fac_audit_waarde_nieuw = fac_groep_key)
AND a.prs_perslid_key = pf.prs_perslid_key
AND EXISTS
(SELECT 1
FROM fac_groeprechten gr, fac_functie f
WHERE gr.fac_groep_key = g.fac_groep_key
AND gr.fac_functie_key = f.fac_functie_key
AND f.fac_functie_code IN ('WEB_FINBOF', 'WEB_ORDGOE', 'WEB_CNTGOE'))
UNION ALL
SELECT a.fac_audit_key,
fac_audit_tabelnaam,
'Wijzigen limiet van een profiel',
fac_audit_actie,
fac_audit_datum,
pf.prs_perslid_naam_full,
pr.fac_profiel_omschrijving,
a.fac_audit_waarde_oud || ' --> ' || a.fac_audit_waarde_nieuw oms
FROM fac_audit a, fac_profiel pr, prs_v_perslid_fullnames_all pf
WHERE fac_audit_tabelnaam = 'fac_profiel'
AND fac_audit_veldnaam = 'fac_profiel_limiet'
AND fac_audit_tabelkey = pr.fac_profiel_key
AND a.prs_perslid_key = pf.prs_perslid_key
UNION ALL
SELECT a.fac_audit_key,
fac_audit_tabelnaam,
'Wijzigen budgethouder',
fac_audit_actie,
fac_audit_datum,
pf.prs_perslid_naam_full,
k.prs_kostenplaats_omschrijving,
(SELECT p.prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all p
WHERE p.prs_perslid_key = a.fac_audit_waarde_oud)
|| ' --> '
|| (SELECT p.prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all p
WHERE p.prs_perslid_key = a.fac_audit_waarde_nieuw) oms
FROM fac_audit a, prs_kostenplaats k, prs_v_perslid_fullnames_all pf
WHERE fac_audit_tabelnaam = 'prs_kostenplaats'
AND fac_audit_veldnaam = 'prs_perslid_key'
AND fac_audit_tabelkey = k.prs_kostenplaats_key
AND a.prs_perslid_key = pf.prs_perslid_key)
WHERE fac_audit_datum > SYSDATE - 200;
-- Organisastie brede view voor het tonen van het aantal meldingen per dag met een tijdspanne van een week
CREATE OR REPLACE VIEW pchx_aant_per_dag
@@ -5248,33 +5353,143 @@ AS
CREATE OR REPLACE VIEW pchx_v_mld_mldref
(
MELDING_KEY,
MELDING_NUMMER
melding_key,
melding_nummer
)
AS
SELECT m.mld_melding_key,
srt.INS_SRTDISCIPLINE_PREFIX
srt.ins_srtdiscipline_prefix
|| m.mld_melding_key
|| ' - '
|| sm.MLD_STDMELDING_OMSCHRIJVING
|| sm.mld_stdmelding_omschrijving
FROM mld_melding m, ins_srtdiscipline srt, mld_stdmelding sm, mld_discipline d
WHERE m.MLD_STDMELDING_KEY = sm.MLD_STDMELDING_KEY AND
sm.MLD_INS_DISCIPLINE_KEY = d.INS_DISCIPLINE_KEY
AND d.INS_SRTDISCIPLINE_KEY = srt.INS_SRTDISCIPLINE_KEY;
where m.mld_stdmelding_key = sm.mld_stdmelding_key AND
sm.mld_ins_discipline_key = d.ins_discipline_key
AND d.ins_srtdiscipline_key = srt.ins_srtdiscipline_key;
CREATE OR REPLACE VIEW pchx_v_cntr_cntrref
(
CONTRACT_KEY,
CONTRACT_NUMMER,
VERWIJDER_DATUM
contract_key,
contract_nummer,
verwijder_datum
)
AS
SELECT cnt.cnt_contract_key,
cnt.cnt_contract_nummer_intern || case when cnt.cnt_contract_versie IS NULL OR cnt.cnt_contract_versie = ''THEN '' ELSE '.'||cnt.cnt_contract_versie END || ' - ' || cdisc.INS_DISCIPLINE_OMSCHRIJVING ,
cnt.CNT_CONTRACT_VERWIJDER
cnt.cnt_contract_verwijder
FROM cnt_contract cnt, cnt_discipline cdisc
WHERE cnt.INS_DISCIPLINE_KEY = cdisc.INS_DISCIPLINE_KEY;
WHERE cnt.ins_discipline_key = cdisc.ins_discipline_key;
-- Rapportages tbv Dashboards
CREATE OR REPLACE VIEW pchx_v_dashb_factuur
AS
SELECT f.fin_factuur_KEY,
k.prs_kostenplaats_nr,
k.prs_kostenplaats_omschrijving,
k.prs_perslid_key,
f.fin_factuur_statuses_key,
l.alg_locatie_key fclt_3d_locatie_key,
l.alg_locatie_omschrijving melding_locatie
FROM fin_factuur f,
prs_kostenplaats k,
alg_locatie l,
(SELECT DISTINCT f.fin_factuur_key, aog.alg_locatie_key
FROM fin_factuur f,
cnt_contract_plaats cp,
(SELECT alg_locatie_key, alg_onroerendgoed_keys, alg_type FROM alg_v_allonroerendgoed
UNION ALL
SELECT alg_locatie_key, alg_locatie_key, 'L' FROM alg_locatie) aog
WHERE f.cnt_contract_key = cp.cnt_contract_key
AND cp.cnt_alg_plaats_code = aog.alg_type
AND cp.cnt_alg_plaats_key = aog.alg_onroerendgoed_keys
UNION ALL
SELECT fin_factuur_key, a.alg_locatie_key
FROM fin_factuur f, bes_bestelopdr bo, mld_adres a
WHERE f.bes_bestelopdr_key = bo.bes_bestelopdr_key AND bo.mld_adres_key_lev = a.mld_adres_key
UNION ALL
SELECT f.fin_factuur_key, m.mld_alg_locatie_key
FROM fin_factuur f, mld_opdr o, mld_melding m
WHERE f.mld_opdr_key = o.mld_opdr_key AND o.mld_melding_key = m.mld_melding_key) fl
WHERE fin.getfactuurkostenplaats (f.fin_factuur_key) = k.prs_kostenplaats_key
AND fl.alg_locatie_key = l.alg_locatie_key
AND f.fin_factuur_verwijder IS NULL
AND f.fin_factuur_key = fl.fin_factuur_key;
CREATE OR REPLACE VIEW pchx_v_dashb_openmld_kwisp
AS
SELECT m.mld_melding_key,
alg_locatie_key fctl_3d_locatie_key,
alg_locatie_omschrijving melding_locatie,
sd.ins_srtdiscipline_omschrijving soortmelding,
sd.ins_srtdiscipline_key soortmelding_key,
s.mld_statuses_omschrijving,
m.mld_melding_datum
FROM mld_melding m,
mld_stdmelding std,
mld_discipline d,
ins_srtdiscipline sd,
alg_locatie l,
mld_statuses s
WHERE 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
AND m.mld_alg_locatie_key = l.alg_locatie_key(+)
AND m.mld_melding_status = s.mld_statuses_key;
CREATE OR REPLACE VIEW pchx_v_dashb_openbes
AS
SELECT u.catalogus,
u.bestelling_key,
u.status,
u.fclt_3d_locatie_key,
u.fclt_3d_discipline_key,
l.alg_locatie_omschrijving melding_locatie
FROM bes_v_udr_bestelling u, alg_locatie l
WHERE u.fclt_3d_locatie_key = l.alg_locatie_key
GROUP BY u.catalogus,
u.bestelling_key,
u.status,
u.fclt_3d_locatie_key,
l.alg_locatie_omschrijving,
u.fclt_3d_discipline_key;
CREATE OR REPLACE VIEW pchx_v_dashb_contract_rap
AS
SELECT DISTINCT c.cnt_contract_key,
aog.alg_locatie_key fclt_3d_locatie_key,
l.alg_locatie_omschrijving melding_locatie,
DECODE (cnt.cnt_contract_status (c.cnt_contract_looptijd_van,
cnt.cnt_getrappeldatum (c.cnt_contract_key),
cnt.cnt_getopzegdatum (c.cnt_contract_key),
c.cnt_contract_looptijd_tot),
0, lcl.l ('lcl_cnt_future'),
1, lcl.l ('lcl_cnt_topical'),
2, lcl.l ('lcl_cnt_warn'),
3, lcl.l ('lcl_cnt_cancel'),
4, lcl.l ('lcl_cnt_past')) fase_actief,
DECODE (
c.cnt_contract_status,
0, DECODE (fac.getsetting ('cnt_contract_approval'),
1, lcl.l ('lcl_cnt_active_approval'),
lcl.l ('lcl_cnt_active')),
1, lcl.l ('lcl_cnt_inactive'),
2, lcl.l ('lcl_cnt_new'),
3, lcl.l ('lcl_cnt_forapproval')) cnt_contract_status
FROM cnt_contract c,
cnt_contract_plaats cp,
alg_locatie l,
(SELECT alg_locatie_key, alg_onroerendgoed_keys, alg_type FROM alg_v_allonroerendgoed
UNION ALL
SELECT alg_locatie_key, alg_locatie_key, 'L' FROM alg_locatie) aog
WHERE cp.cnt_alg_plaats_code = aog.alg_type
AND cp.cnt_alg_plaats_key = aog.alg_onroerendgoed_keys
AND cp.cnt_contract_key = c.cnt_contract_key
AND aog.alg_locatie_key = l.alg_locatie_key;
CREATE OR REPLACE VIEW pchx_v_locaties
AS
SELECT alg_locatie_key, alg_locatie_code, alg_locatie_omschrijving FROM alg_v_aanweziglocatie;
------ payload end ------