LPNL#90079 Locatierestrictie bezoekersgegevens naar systeemadres werkt niet
svn path=/Database/trunk/; revision=70410
This commit is contained in:
@@ -13,6 +13,13 @@ CREATE OR REPLACE PACKAGE bez AS
|
||||
FUNCTION afssprintf (ps IN VARCHAR2 , p_afspraak_key IN NUMBER) RETURN VARCHAR2 ;
|
||||
FUNCTION bzksprintf (ps IN VARCHAR2 , p_bezoekers_key IN NUMBER) RETURN VARCHAR2 ;
|
||||
PROCEDURE remove (p_afspraak_key IN NUMBER);
|
||||
|
||||
PROCEDURE notifyafspraakbedrijven (p_afspraak_key NUMBER,
|
||||
ptrackingkey NUMBER,
|
||||
pnotidelay NUMBER DEFAULT NULL);
|
||||
PROCEDURE notifybezoekerbedrijven (p_bezoekers_key NUMBER,
|
||||
ptrackingkey NUMBER,
|
||||
pnotidelay NUMBER DEFAULT NULL);
|
||||
END bez;
|
||||
/
|
||||
|
||||
@@ -583,6 +590,66 @@ CREATE OR REPLACE PACKAGE BODY bez AS
|
||||
fac.remove_tracking('afspraak', p_afspraak_key);
|
||||
END;
|
||||
|
||||
-- Alleen generieke bedrijven
|
||||
PROCEDURE notifyafspraakbedrijven (p_afspraak_key NUMBER,
|
||||
ptrackingkey NUMBER,
|
||||
pnotidelay NUMBER DEFAULT NULL)
|
||||
IS
|
||||
BEGIN
|
||||
FOR bedrijfrec IN (SELECT b.prs_bedrijf_key,
|
||||
'G' bedrijfadres_type,
|
||||
a.alg_locatie_key,
|
||||
a.bez_afspraak_key
|
||||
FROM prs_bedrijf b,
|
||||
bez_afspraak a
|
||||
WHERE EXISTS
|
||||
(SELECT 1
|
||||
FROM prs_bedrijfadres ba
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND ba.prs_bedrijfadres_startdatum <= SYSDATE
|
||||
AND ba.prs_bedrijfadres_type = 'G'))
|
||||
LOOP
|
||||
fac.notifybedrijf (pbedrijf_key => bedrijfrec.prs_bedrijf_key,
|
||||
pbedrijfadres_type => bedrijfrec.bedrijfadres_type,
|
||||
prefkey => p_afspraak_key,
|
||||
ptrackingkey => ptrackingkey,
|
||||
preference => TO_CHAR(bedrijfrec.bez_afspraak_key),
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pnotidelay => pnotidelay);
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
-- Alleen generieke bedrijven
|
||||
PROCEDURE notifybezoekerbedrijven (p_bezoekers_key NUMBER,
|
||||
ptrackingkey NUMBER,
|
||||
pnotidelay NUMBER DEFAULT NULL)
|
||||
IS
|
||||
BEGIN
|
||||
FOR bedrijfrec IN (SELECT b.prs_bedrijf_key,
|
||||
'G' bedrijfadres_type,
|
||||
a.alg_locatie_key,
|
||||
a.bez_afspraak_key
|
||||
FROM prs_bedrijf b,
|
||||
bez_afspraak a,
|
||||
bez_bezoekers bb
|
||||
WHERE bb.bez_afspraak_key = a.bez_afspraak_key
|
||||
AND EXISTS
|
||||
(SELECT 1
|
||||
FROM prs_bedrijfadres ba
|
||||
WHERE ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND ba.prs_bedrijfadres_startdatum <= SYSDATE
|
||||
AND ba.prs_bedrijfadres_type = 'G'))
|
||||
LOOP
|
||||
fac.notifybedrijf (pbedrijf_key => bedrijfrec.prs_bedrijf_key,
|
||||
pbedrijfadres_type => bedrijfrec.bedrijfadres_type,
|
||||
prefkey => p_bezoekers_key,
|
||||
ptrackingkey => ptrackingkey,
|
||||
preference => TO_CHAR(bedrijfrec.bez_afspraak_key),
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pnotidelay => pnotidelay);
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
END bez;
|
||||
/
|
||||
|
||||
|
||||
@@ -4971,6 +4971,12 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
WHEN lxmlnode = 'contract'
|
||||
THEN
|
||||
cnt.notifycontractbedrijven(l_refkey, ptrackingkey, pnotidelay);
|
||||
WHEN lxmlnode = 'afspraak'
|
||||
THEN
|
||||
bez.notifyafspraakbedrijven(l_refkey, ptrackingkey, pnotidelay);
|
||||
WHEN lxmlnode = 'bezoeker'
|
||||
THEN
|
||||
bez.notifybezoekerbedrijven(l_refkey, ptrackingkey, pnotidelay);
|
||||
ELSE
|
||||
fac.notifygeneriekbedrijven(l_refkey, ptrackingkey, pnotidelay);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user