KFSG#70358 -- aanpassing kfsg_exchange tbv Graph koppeling

svn path=/Customer/trunk/; revision=54443
This commit is contained in:
Norbert Wassink
2022-01-07 12:52:29 +00:00
parent 6b3596dde6
commit b70a0ba3e1

View File

@@ -1,8 +1,8 @@
--
-- $Id$
--
-- Script containing customer specific db-configuration for KFSG.
DEFINE thisfile = 'KFSG_EXCHANGE.SQL'
-- Script containing customer specific db-configuration for KFSG
DEFINE thisfile = 'kfsg_EXCHANGE_GRAPH.SQL'
DEFINE dbuser = '^KFSG'
SET ECHO ON
@@ -16,20 +16,6 @@ SET DEFINE OFF
------ payload begin ------
-- Soorten ruimtes:
-- OF: office floor room; geen catering, geen bezoek
-- MC: meeting center room; wel catering, wel bezoek
-- EXCO: management ruimte; wel catering, wel bezoek
-- Soorten deelnemers (zie ook AKZA#55440, door splitsing AN/Nouryon ook Nouryon mailadressen toevoegen als interne medewerkers):
-- AMS-mw: medewerkers locatie Amsterdam; zijn NOOIT een bezoeker
-- e-mail @akzonobel.com, standplaats AMB
-- e-mail @@nouryon.com, standplaats AMB
-- AN-mw/ Nouryon: medewerkers overige AkzoNobel-locaties; zijn bezoeker, maar mogen geen parkeerplaats
-- e-mail @akzonobel.com, overige standplaatsen
-- e-mail @@nouryon.com, overige standplaatsen
-- Gast: extern persoon; bezoeker met parkeerplaats
-- alle andere e-mailadressen
-- modifiers:
-- ADD: appointment is niew, dus ook een nieuwe reservering
@@ -37,14 +23,14 @@ SET DEFINE OFF
-- UPD: appointment is gewijzigd en kan daarmee effectief ook een ADD of DEL zijn
-- ***************************************************************************
-- KFSG#57950: Bovenstaande nog even laten staan. Voor Schiphol geldt:
-- - koppeling gerealiseerd voor alleen catalogus Vergaderruimtes Outlook-
-- koppeling (key=1341) op locatie/gebouw SHG (key=41/48) en activiteit
-- Vergadering (key=10).
-- - Schiphol-genodigden in Genodigden-kenmerk (key=181).
-- - eventuele andere genodigden bijwerken als afspraak/bezoeker.
-- Bovenstaande nog even laten staan. Voor YKPN is de koppeling gerealiseerd voor:
-- Catalogus Ruimtes te reserveren vanuit Exchange (key=1801)
-- Activiteit Meeting vanuit Exchange (key=110).
-- KPN eigen genodigden in Genodigden-kenmerk (key=261).
-- Eventuele andere genodigden (externen) bijwerken als afspraak/bezoeker.
-- ***************************************************************************
--------------------------------------------------------------------------------------------------
------------------------------- PACKAGE ----------------------------------------------------------
--------------------------------------------------------------------------------------------------
@@ -90,19 +76,10 @@ END;
CREATE OR REPLACE PACKAGE BODY kfsg_exchange
AS
-- Zorg dat de bezoekers bij de deelreservering matchen met de genodigden bij de appointment
-- - host niet toevoegen als bezoeker
-- - AMB-en SSCA-medewerkers met een badgenummer alleen in een genodigdenlijst
-- Host zelf niet toevoegen als bezoeker
-- Afspraak aanmaken of verwijderen indien nodig
-- Bezoekers aanmaken, bijwerken of verwijderen zoals nodig
-- Als vergaderruimte op kantoorverdieping (OF-ruimte), dan geen bezoekers (alleen genodigdenlijst),
-- noch voorzieningen
-- - OF = res_disc 1485 "Vergaderruimtes nw A'dam"
-- - EXCO = res_disc 1505 "Vergaderzalen 9de PA's"
-- - MC = res_disc 1445 "Vergaderzalen NW Amsterdam"
-- TODO: nu worden voor appointments met meerdere zalen waarschijnlijk de attendees bij iedere
-- deelreservering toegevoegd.
-- KFSG#57950: Voor Schiphol geldt (voor enige locatie/catalogus/activiteit) alleen externen als
-- bezoeker (en eigen medewerkers in Genodigden-kenmerk?).
-- Voor YKPN geldt alleen externen als bezoeker, eigen medewerkers in Genodigden-kenmerk
PROCEDURE setBezoekers(p_import_key IN NUMBER,
p_appt_id IN VARCHAR2,
p_recur_id IN VARCHAR2,
@@ -110,7 +87,7 @@ AS
IS
v_debug BOOLEAN := TRUE;
v_count NUMBER (10);
c_km_key_genodigden NUMBER (10) := 181;
c_km_key_genodigden NUMBER (10) := 261;
v_genodigden VARCHAR2 (4000);
v_afspraak_key NUMBER (10);
@@ -127,33 +104,36 @@ AS
IS
-- Niet meer in de import
SELECT a.res_rsv_ruimte_key,
kw.bez_kenmerkwaarde_waarde bez_email,
--kw.bez_kenmerkwaarde_waarde bez_email,
b.bez_bezoekers_email bez_email,
b.*
FROM bez_afspraak a,
bez_bezoekers b,
bez_kenmerkwaarde kw
bez_bezoekers b
-- bez_kenmerkwaarde kw
WHERE a.res_rsv_ruimte_key = p_rsv_ruimte_key
AND b.bez_afspraak_key = a.bez_afspraak_key
AND kw.bez_bezoekers_key = b.bez_bezoekers_key
AND kw.bez_kenmerk_key = 1120 -- E-mailadres Exchange
AND kw.bez_kenmerkwaarde_verwijder IS NULL
-- AND kw.bez_bezoekers_key = b.bez_bezoekers_key
-- AND kw.bez_kenmerk_key = 1300 -- E-mailadres Exchange
-- AND kw.bez_kenmerkwaarde_verwijder IS NULL
AND NOT EXISTS (SELECT 1
FROM kfsg_imp_exchange
WHERE UPPER(att_mail) = UPPER(kw.bez_kenmerkwaarde_waarde) )
-- WHERE UPPER(att_mail) = UPPER(kw.bez_kenmerkwaarde_waarde) )
WHERE UPPER(att_mail) = UPPER(b.bez_bezoekers_email) )
UNION ALL
-- Naam al aanwezig in lijst van genodigden
SELECT a.res_rsv_ruimte_key,
kw.bez_kenmerkwaarde_waarde bez_email,
-- kw.bez_kenmerkwaarde_waarde bez_email,
b.bez_bezoekers_email bez_email,
b.*
FROM bez_afspraak a,
bez_bezoekers b,
bez_kenmerkwaarde kw,
-- bez_kenmerkwaarde kw,
res_kenmerkwaarde rkw
WHERE a.res_rsv_ruimte_key = p_rsv_ruimte_key
AND b.bez_afspraak_key = a.bez_afspraak_key
AND kw.bez_bezoekers_key = b.bez_bezoekers_key
AND kw.bez_kenmerk_key = 1120 -- E-mailadres Exchange
AND kw.bez_kenmerkwaarde_verwijder IS NULL
-- AND kw.bez_bezoekers_key = b.bez_bezoekers_key
-- AND kw.bez_kenmerk_key = 1300 -- E-mailadres Exchange
-- AND kw.bez_kenmerkwaarde_verwijder IS NULL
AND rkw.res_kenmerk_key = c_km_key_genodigden
AND rkw.res_kenmerkwaarde_verwijder IS NULL
AND rkw.res_rsv_ruimte_key = a.res_rsv_ruimte_key
@@ -161,24 +141,26 @@ AS
UNION ALL
-- Mailadres bekend als extern ID van ruimte
SELECT a.res_rsv_ruimte_key,
kw.bez_kenmerkwaarde_waarde bez_email,
-- kw.bez_kenmerkwaarde_waarde bez_email,
b.bez_bezoekers_email bez_email,
b.*
FROM bez_afspraak a,
bez_bezoekers b,
bez_kenmerkwaarde kw
bez_bezoekers b
-- bez_kenmerkwaarde kw
WHERE a.res_rsv_ruimte_key = p_rsv_ruimte_key
AND b.bez_afspraak_key = a.bez_afspraak_key
AND kw.bez_bezoekers_key = b.bez_bezoekers_key
AND kw.bez_kenmerk_key = 1120 -- E-mailadres Exchange
AND kw.bez_kenmerkwaarde_verwijder IS NULL
-- AND kw.bez_bezoekers_key = b.bez_bezoekers_key
-- AND kw.bez_kenmerk_key = 1300 -- E-mailadres Exchange
-- AND kw.bez_kenmerkwaarde_verwijder IS NULL
AND EXISTS (SELECT 1
FROM res_ruimte
WHERE UPPER(res_ruimte_extern_id) = UPPER(kw.bez_kenmerkwaarde_waarde));
-- WHERE UPPER(res_ruimte_extern_id) = UPPER(kw.bez_kenmerkwaarde_waarde));
WHERE UPPER(res_ruimte_extern_id) = UPPER(b.bez_bezoekers_email));
-- Voor iedere persoon kijken of dit een bekende AN-medewerker is en op welke locatie
-- Voor iedere persoon kijken of dit een bekende YKPN medewerker is en op welke locatie
-- Als mailadres deelnemer == mailadres organizer, dan negeren
-- Group by, zodat we voor mensen op AMB/SSCA (en AHO) alleen die werkplek overhouden (overige locaties leveren NULL)
-- AKZA#38968: ook badgenummer ophalen
-- Group by ivm werkplekken
CURSOR c_attendees
IS
SELECT att_mail,
@@ -217,8 +199,7 @@ AS
alg_ruimte r,
alg_verdieping v,
alg_gebouw g,
(SELECT * FROM alg_locatie
WHERE alg_locatie_key = 41) l -- SHG - Schipholgebouw
alg_locatie l
WHERE p.prs_perslid_verwijder IS NULL
AND p.prs_perslid_email IS NOT NULL
--AND kl.prs_link_key(+) = p.prs_perslid_key
@@ -234,15 +215,17 @@ AS
ON UPPER(p.prs_perslid_email) = UPPER(att_mail)
LEFT OUTER JOIN (
SELECT b.bez_bezoekers_key,
kw.bez_kenmerkwaarde_waarde email
b.bez_bezoekers_email email
-- kw.bez_kenmerkwaarde_waarde email
FROM bez_afspraak a,
bez_bezoekers b,
bez_kenmerkwaarde kw
bez_bezoekers b
-- bez_kenmerkwaarde kw
WHERE a.res_rsv_ruimte_key = p_rsv_ruimte_key
AND b.bez_afspraak_key = a.bez_afspraak_key
AND kw.bez_bezoekers_key = b.bez_bezoekers_key
AND kw.bez_kenmerk_key = 1120 -- E-mailadres Exchange
AND kw.bez_kenmerkwaarde_verwijder IS NULL) b
-- AND kw.bez_bezoekers_key = b.bez_bezoekers_key
-- AND kw.bez_kenmerk_key = 1300 -- E-mailadres Exchange
-- AND kw.bez_kenmerkwaarde_verwijder IS NULL
) b
ON UPPER(b.email) = UPPER(att_mail)
GROUP BY att_mail,
att_name,
@@ -290,8 +273,8 @@ AS
fac.imp_writelog (p_import_key, 'D',
p_rsv_ruimte_key, 'Bezoeker '||rec.bez_email||' verwijderen');
END IF;
DELETE bez_kenmerkwaarde
WHERE bez_bezoekers_key = rec.bez_bezoekers_key;
-- DELETE bez_kenmerkwaarde
-- WHERE bez_bezoekers_key = rec.bez_bezoekers_key;
DELETE bez_bezoekers
WHERE bez_bezoekers_key = rec.bez_bezoekers_key;
@@ -299,7 +282,7 @@ AS
FOR rec IN c_attendees
LOOP
-- Bepalen om wat voor soort ruimte het gaat (OF vs MC/EXCO)
-- Bepalen om wat voor soort ruimte het gaat
IF (v_discipline_key IS NULL)
THEN
SELECT r.res_discipline_key
@@ -316,20 +299,15 @@ AS
END IF;
END IF;
-- AMB- of SSCA-medewerker: alleen in tekstveld zetten
-- YKPN medewerker: alleen in tekstveld zetten
-- (Zowel bij create als update hele string weer opbouwen)
-- Voor OF-ruimtes (res_disc 1485) behandelen we iedereen als AMB-/SSCA-medewerker
-- AKZA#38968: badgenummer is voortaan vereist om genodigde te zijn
-- AKZA#40274: bepaling van bezoekers/deelnemers voor ruimtes uit disc 1485 op dezelfde wijze als andere ruimtes / op verzoek van Andr<64> weer ongedaan gemaakt
-- KFSG#57950: Bovenstaande nog even laten staan. Voor Schiphol geldt dat medewerkers (@schiphol in e-mail adres) in Genodigden-veld komen.
-- TODO: Of Genodigden-veld helemaal weg???
--IF (rec.alg_locatie_key IS NOT NULL AND rec.badgenr IS NOT NULL)
IF (rec.alg_locatie_key IS NOT NULL AND INSTR (UPPER (rec.att_mail), '@SCHIPHOL.NL') > 0)
-- Voor YKPN geldt dat medewerkers (@kpn.com in e-mail adres) in Genodigden-veld komen.
-- Of dit klopt later bespreken
IF (rec.alg_locatie_key IS NOT NULL AND INSTR (UPPER (rec.att_mail), '@KPN.COM') > 0)
THEN
v_genodigden := v_genodigden || rec.att_name || CHR(13);
-- Overige AN-medewerkers en gasten aanmelden als bezoeker (of registratie bijwerken)
-- Overige genodigen aanmelden als bezoeker (of registratie bijwerken)
ELSE
-- Er zijn niet-AMB-/SSCA-medewerker attendees, zorgen dat er een afspraak is
IF (v_afspraak_key IS NULL)
THEN
v_afspraak_key := getAfspraak(p_rsv_ruimte_key, 1);
@@ -371,7 +349,6 @@ AS
END IF;
-- Opruiming: afspraken zonder bezoekers (kan gebeuren als er alleen nog interne deelnemers zijn,
-- of de meeting is verplaatst naar een OF-ruimte)
DELETE bez_afspraak a
WHERE res_rsv_ruimte_key = p_rsv_ruimte_key
AND NOT EXISTS (SELECT 1 FROM bez_bezoekers WHERE bez_afspraak_key = a.bez_afspraak_key);
@@ -484,12 +461,18 @@ AS
BEGIN
v_bez_flags := 0;
-- AN-medewerkers op overige locaties:
-- VOOR YKPN NOG NAVRAGEN, voorlopig parkeerplaatsen achterwege laten. Flags:
-- +1 uit eigen locatie,
-- +2 uit andere locatie,
-- +4 komt niet fysiek,
-- +8 komt niet aan balie,
-- +16 geen parkeerplaats
-- AN-medewerkers vanuit overige locaties:
-- aanmelden als bezoeker (met perslid_key, als bekend), zonder (mogelijkheid tot) parkeerplaats
-- flags (AKZA#34209)
-- 2: andere locatie
-- 16: geen parkeerplaats mogelijk
IF (UPPER(p_att_mail) LIKE '%@SCHIPHOL.NL')
IF (UPPER(p_att_mail) LIKE '%@KPN.COM')
THEN
IF (v_debug) THEN
fac.imp_writelog (p_import_key, 'D',
@@ -497,14 +480,14 @@ AS
END IF;
v_bez_flags := 2 + 16;
-- Gasten: aanmelden als gewone bezoeker (zonder perslid_key), met parkeerplaats
-- flags = 0
-- Gasten: aanmelden als gewone bezoeker (zonder perslid_key), voorlopig even zonder parkeerplaats
-- flags dus even op 16 ipv 0
ELSE
IF (v_debug) THEN
fac.imp_writelog (p_import_key, 'D',
p_afspraak_key, 'Gast '||p_att_name|| ' ('||p_att_mail||')');
END IF;
v_bez_flags := 0;
v_bez_flags := 16;
END IF;
-- Bestaat bezoeker al bij deelreservering? Dan alleen basisgegevens bijwerken
@@ -520,6 +503,8 @@ AS
-- Als deze bezoeker een parkeerplaats heeft, probeer dan een nieuwe te claimen
-- alg_gebouw "SHG" 48
-- Maar even op inactief voor YKPN
/*
IF ( bez.hasparking(p_bezoekers_key) = 1)
THEN
DELETE FROM res_rsv_deel
@@ -530,6 +515,7 @@ AS
END IF;
-- TODO: track?
END IF;
*/
-- Nieuwe bezoeker: toevoegen, plus parkeerplaats en mailadres
ELSE
@@ -538,25 +524,31 @@ AS
prs_perslid_key,
bez_afspraak_naam,
bez_afspraak_bedrijf,
bez_bezoekers_flags)
bez_bezoekers_flags,
bez_bezoekers_email)
VALUES (
p_afspraak_key,
p_perslid_key,
SUBSTR(p_att_name, 1, 30),
SUBSTR(p_afdeling_naam, 1, 60),
v_bez_flags)
v_bez_flags,
p_att_mail)
RETURNING bez_bezoekers_key INTO v_bezoekers_key;
-- Voor nieuwe gasten een parkeerplek claimen
-- alg_gebouw "SHG" 48
-- Voor YKPN maar even op inactief
/*
IF ( BITAND(v_bez_flags, 16) = 0)
THEN
bez.claim_parking(v_bezoekers_key, 48);
END IF;
*/
-- Mailadres opslaan
-- bez_kenmerk E-mail 1120
upsertkenmerk_bez(1120, v_bezoekers_key, p_att_mail);
-- bez_kenmerk E-mail 1300
-- upsertkenmerk_bez(1300, v_bezoekers_key, p_att_mail);
END IF;
-- TODO: tracking; liefst geen aparte regel per bezoeker
@@ -867,7 +859,7 @@ IS
v_seq_nr VARCHAR2 (100);
d_starttime DATE;
d_endtime DATE;
n_seq_nr NUMBER(10);
n_seq_nr NUMBER(13);
CURSOR c
IS
@@ -885,7 +877,7 @@ BEGIN
WHERE i.fac_import_key = p_import_key
AND r.res_ruimte_verwijder IS NULL
AND r.res_ruimte_extern_id IS NOT NULL
AND UPPER(i.fac_import_filenaam) LIKE 'CALITEM_'||UPPER(r.res_ruimte_extern_id)||'_%.XML';
AND UPPER(i.fac_import_filenaam) LIKE '%'||UPPER(r.res_ruimte_extern_id)||'%';
fac.imp_writelog (p_import_key, 'S',
'Start inlezen importbestand in importtabel',
@@ -913,7 +905,7 @@ BEGIN
v_errorhint := 'Fout bij opvragen te importeren rij';
-- Lees alle veldwaarden
--AKZA#36457: room ID wordt voortaan opgehaald uit de bestandsnaam van de import
-- AKZA#36457: room ID wordt voortaan opgehaald uit de bestandsnaam van de import
v_room_id := v_ruimte_id;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 1, v_subject);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 2, v_starttime);
@@ -1145,7 +1137,7 @@ IS
v_ongeldig NUMBER (1);
v_debug BOOLEAN := TRUE;
c_activiteit_key NUMBER (10) := 10; -- Vergadering
c_activiteit_key NUMBER (10) := 10; -- Vergadering
v_reservering_key NUMBER (10);
v_rsv_ruimte_volgnr res_rsv_ruimte.res_rsv_ruimte_volgnr%TYPE;
v_ruimte_opstel_key NUMBER (10);
@@ -1984,17 +1976,12 @@ BEGIN
AND ro.res_ruimte_opstel_key = rr.res_ruimte_opstel_key
AND r.res_ruimte_key = ro.res_ruimte_key;
-- Altijd tracken, maar alleen notificeren als niet discipline 1485
-- AKZA#40274 ook notificeren als discipline = 1485 Mail Andr<64> 6-7: voorlopig terugdraaien
-- KFSG#57950: Bovenstaande nog even laten staan. Voor Schiphol
-- geldt altijd tracken <20>n notificeren!
-- Altijd tracken <20>n notificeren!
v_errorhint := 'Tracking NEW';
v_code := 'RESNEW';
--IF (v_discipline_key = 1341)
--THEN
-- v_code := '#RESNEW';
--END IF;
fac.trackaction (v_code, v_rsv_ruimte_key, NULL, SYSDATE, 'Uw reservering '||TO_CHAR(v_reservering_key)||'/'||TO_CHAR(v_rsv_ruimte_volgnr)||' is geregistreerd');
fac.trackaction (v_code, v_rsv_ruimte_key, NULL, SYSDATE, 'Booking confirmation meeting room, booking ref.: '||v_reservering_key||'/'||v_rsv_ruimte_volgnr);
-- Is er iets dirty?
res.set_ruimte_dirty(v_rsv_ruimte_key);
@@ -2050,6 +2037,26 @@ EXCEPTION
END kfsg_update_exchange;
/
CREATE OR REPLACE PROCEDURE kfsg_import_exchsync (
p_import_key IN NUMBER
)
IS
BEGIN
kfsg_import_exchange(p_import_key);
END;
/
CREATE OR REPLACE PROCEDURE kfsg_update_exchsync (
p_import_key IN NUMBER
)
IS
BEGIN
kfsg_update_exchange(p_import_key);
END;
/
CREATE OR REPLACE PROCEDURE kfsg_import_exchfull (
p_import_key IN NUMBER
)
@@ -2123,110 +2130,7 @@ BEGIN
END LOOP;
END;
/
/*
-- MS-Exchange sync-import: onthoudt de laatste syncstate van een reserveerbare ruimte
-- met betekenis: tot die markering ben ik bij.
-- (tijdelijke) versie met een CLOB voor de syncstate, omdat die in de praktijk langer
-- dan 4000 karakters blijkt te kunnen zijn. De XSL-stylesheet knipt de syncstate uit
-- de XML op in stukken van max 4000 karakters -- deze import plakt die weer aan elkaar.
CREATE OR REPLACE PROCEDURE kfsg_import_exchsync (p_import_key IN NUMBER)
AS
v_newline fac_imp_file.fac_imp_file_line%TYPE; -- Input line
v_fielddelimitor VARCHAR2 (1);
v_errormsg VARCHAR2 (200);
oracle_err_mes VARCHAR2 (200);
header_is_valid NUMBER;
--
v_res_ruimte_key res_ruimte.res_ruimte_key%TYPE;
v_syncstate VARCHAR2 (4000);
v_len NUMBER;
CURSOR c1
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
rec1 c1%ROWTYPE;
BEGIN
v_fielddelimitor := ';';
header_is_valid := 0;
v_len := 0;
-- De res_ruimte_key waar we het over hebben zit in de refkey van de import
SELECT fac_import_refkey
INTO v_res_ruimte_key
FROM fac_import
WHERE fac_import_key = p_import_key;
-- Syncstate leegmaken, zodat we 'n append kunnen doen.
UPDATE res_ruimte
SET res_ruimte_syncstate = NULL
WHERE res_ruimte_key = v_res_ruimte_key
AND res_ruimte_extern_id IS NOT NULL;
FOR rec1 IN c1 LOOP
BEGIN
v_newline := rec1.fac_imp_file_line;
fac.imp_getfield (v_newline, v_fielddelimitor, v_syncstate);
IF header_is_valid = 0
THEN
IF UPPER (TRIM (v_syncstate)) LIKE '%SYNCSTATE%'
THEN
header_is_valid := 1;
--DBMS_OUTPUT.put_line ('goeie header');
END IF;
ELSE
v_errormsg := 'Fout bij update van syncstate';
--DBMS_OUTPUT.put_line ('echte data');
-- Stylesheet knipt syncstates langer dan 4000 karakters op in meerdere delen
-- Hier weer aan elkaar plakken.
UPDATE res_ruimte
SET res_ruimte_syncstate = res_ruimte_syncstate || TRIM(v_syncstate)
WHERE res_ruimte_key = v_res_ruimte_key
AND res_ruimte_extern_id IS NOT NULL;
END IF;
END;
END LOOP;
-- Lange syncstate? (>4000) Dat even loggen.
v_errormsg := 'Fout bij bepalen lengte syncstate';
SELECT LENGTH(res_ruimte_syncstate)
INTO v_len
FROM res_ruimte
WHERE res_ruimte_key = v_res_ruimte_key
AND res_ruimte_extern_id IS NOT NULL;
IF (v_len > 4000)
THEN
fac.imp_writelog (p_import_key,
'I',
'Lange syncstate, ' || v_len || ' karakters',
'res_ruimte_key: ' || v_res_ruimte_key);
END IF;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_mes := SUBSTR (SQLERRM, 1, 1000);
v_errormsg := oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
'res_ruimte_key: ' || v_res_ruimte_key);
END;
/
CREATE OR REPLACE PROCEDURE kfsg_update_exchsync (p_import_key IN NUMBER)
AS
BEGIN
NULL;
END;
/
*/
--------------------------------------------------------------------------------------------------
------------------------------- RAPPORTAGE-VIEWS -------------------------------------------------
@@ -2253,7 +2157,7 @@ AS
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-mailsadressen in de Exchange-import, die niet in FACILITOR voorkomen
-- AKZA#33693: Overzicht van alle e-mailadressen in de Exchange-import, die niet in FACILITOR voorkomen
CREATE OR REPLACE VIEW kfsg_v_rap_exchange_missing
AS
SELECT DISTINCT i.organizer
@@ -2367,9 +2271,8 @@ CREATE OR REPLACE VIEW kfsg_v_noti_exchange_check
)
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!
FROM fac_gebruikersgroep
WHERE fac_groep_key = 2) -- _Admin
SELECT r.code,
r.sender,
r.receiver,