diff --git a/VEST/vest.sql b/VEST/vest.sql index 76ee8eb2e..29abd3864 100644 --- a/VEST/vest.sql +++ b/VEST/vest.sql @@ -1347,6 +1347,111 @@ AS 'Klik hier om het assortiment te bekijken van Health2Work en een bestelling te doen.' FROM prs_perslid; +-- Views voor Exchange koppeling +-- AKZA#33693: Voor de Exchange-import worden boekers gematcht op e-mailadres. Dan zijn dubbele mailadressen +-- ongewenst. Controlerapportage (lowercase mailadres, want dat sorteert beter in de resultset). +CREATE OR REPLACE VIEW vest_v_rap_dubbele_emails +AS + SELECT DISTINCT LOWER (p.prs_perslid_email) email_lower, + pf.prs_perslid_naam_full naam, + p.prs_perslid_key, + p.prs_perslid_oslogin login, + TRUNC (p.prs_perslid_aanmaak) aangemaakt, + DECODE (i.organizer, NULL, NULL, 'Ja') in_import + FROM prs_v_aanwezigperslid p, + prs_v_perslid_fullnames pf, + (SELECT * FROM vest_imp_exchange WHERE gelukt IS NULL) i + WHERE p.prs_perslid_key = pf.prs_perslid_key + AND EXISTS + (SELECT 1 + FROM prs_v_aanwezigperslid + WHERE prs_perslid_key != p.prs_perslid_key + AND UPPER (prs_perslid_email) = UPPER (p.prs_perslid_email)) + AND UPPER (p.prs_perslid_email) = UPPER (i.organizer(+)) + ORDER BY LOWER (p.prs_perslid_email), TRUNC (p.prs_perslid_aanmaak); + +-- AKZA#33693: Overzicht van alle e-mailadressen in de Exchange-import, die niet in FACILITOR voorkomen +CREATE OR REPLACE VIEW vest_v_rap_exchange_missing +AS + SELECT DISTINCT i.organizer + FROM (SELECT * FROM vest_imp_exchange WHERE gelukt IS NULL) i + WHERE NOT EXISTS + (SELECT 1 + FROM prs_v_aanwezigperslid + WHERE UPPER (prs_perslid_email) = UPPER (i.organizer)); + +-- AKZA#38233: Overzicht van incorrect geconfigureerde ruimtes +CREATE OR REPLACE VIEW vest_v_rap_exch_ruimte_opstel +AS + SELECT r.res_ruimte_nr fclt_f_ruimte, + r.res_ruimte_extern_id fclt_f_extern_id, + r.res_ruimte_vervaldatum vervaldatum, + d.ins_discipline_omschrijving catalogus, + NULL schoonmaaktijd + FROM res_ruimte r, res_discipline d + WHERE r.res_ruimte_verwijder IS NULL + AND r.res_ruimte_extern_id IS NOT NULL + AND r.res_discipline_key = d.ins_discipline_key + AND vest_exchange.getOpstelling (r.res_ruimte_extern_id) IS NULL + UNION ALL + SELECT r.res_ruimte_nr, + r.res_ruimte_extern_id, + r.res_ruimte_vervaldatum, + d.ins_discipline_omschrijving, + dp.res_disc_params_preposttime + FROM res_ruimte r, res_discipline d, res_disc_params dp + WHERE r.res_ruimte_verwijder IS NULL + AND r.res_ruimte_extern_id IS NOT NULL + AND r.res_discipline_key = d.ins_discipline_key + AND d.ins_discipline_key = dp.res_ins_discipline_key + AND dp.res_disc_params_preposttime != 0; + +-- AKZA#38968: notificeren als check-rapportages over e-mailadressen en reserveerbare ruimtes resultaten bevatten +-- usrrap_key 724 dubbele mailadressen +-- usrrap_key 725 ontbrekende mailadressen +-- usrrap_key 904 incorrect geconfigureerde ruimtes +CREATE OR REPLACE VIEW vest_v_noti_exchange_check +( + code, + sender, + receiver, + text, + key, + xkey +) +AS + WITH recv AS (SELECT 'PRSINF' code, NULL sender, prs_perslid_key receiver + FROM fac_gebruikersgroep + --WHERE fac_groep_key = 2 AND prs_perslid_key != 3) -- _Admin en niet _FACILITOR! + WHERE fac_groep_key = 2) -- _Admin en ook _FACILITOR! + SELECT r.code, + r.sender, + r.receiver, + COUNT ( * ) || ' dubbele e-mailadressen in FACILITOR' text, + NULL key, + NULL xkey + FROM vest_v_rap_dubbele_emails, recv r + WHERE in_import IS NOT NULL + GROUP BY r.code, r.sender, r.receiver + UNION ALL + SELECT r.code, + r.sender, + r.receiver, + COUNT ( * ) || ' ontbrekende e-mailadressen in FACILITOR Exchange import' text, + NULL key, + NULL xkey + FROM vest_v_rap_exchange_missing, recv r + GROUP BY r.code, r.sender, r.receiver + UNION ALL + SELECT r.code, + r.sender, + r.receiver, + COUNT ( * ) || ' incorrect geconfigureerde ruimtes voor FACILITOR Exchange import' text, + NULL key, + NULL xkey + FROM vest_v_rap_exch_ruimte_opstel, recv r + GROUP BY r.code, r.sender, r.receiver; + ------ payload end ------ SET DEFINE OFF