CSUN#27068 Mailadressen van ArboUnie toestaan

svn path=/Customer/trunk/; revision=18483
This commit is contained in:
Peter Koerhuis
2013-07-17 08:29:29 +00:00
parent 7eb14172d0
commit f403887743

View File

@@ -330,23 +330,37 @@ AS
mldnum VARCHAR2(4000);
srtdisc VARCHAR2(4000);
cnt NUMBER(10);
v_flag_on_fenote NUMBER(10);
v_flag_on_bonote NUMBER(10);
v_from VARCHAR2(4000);
BEGIN
errormsg := '(0x143)';
-- Verwijder de Bounce Address Tag Validation
IF pfrom LIKE 'prvs=%'
THEN
v_from := SUBSTR(pfrom, INSTR(pfrom, '=', -1)+1);
ELSE
v_from := pfrom;
END IF;
-- DBMS_OUTPUT.PUT_LINE('v_from: '||v_from);
-- Valideer de sender in pfrom: kennen we deze?
SELECT MIN (prs_perslid_key), MIN (d.prs_kostenplaats_key)
INTO sender, kostenplaats
FROM prs_perslid p, prs_afdeling d
WHERE p.prs_afdeling_key = d.prs_afdeling_key
AND prs_perslid_verwijder IS NULL
AND (UPPER (prs_perslid_email) = UPPER (pfrom)
AND (UPPER (prs_perslid_email) = UPPER(v_from)
OR EXISTS
(SELECT *
FROM prs_kenmerklink kl
WHERE prs_kenmerk_key = 1020
AND prs_link_key = p.prs_perslid_key
AND UPPER (kl.prs_kenmerklink_waarde) =
UPPER (pfrom)));
UPPER (v_from)));
CASE
WHEN UPPER (pto) LIKE 'SERVICEDESK@%'
@@ -360,9 +374,9 @@ BEGIN
mldnum := REGEXP_SUBSTR(psubject, subject_regexp, 1, 1, 'i'); -- MA12345
srtdisc := REGEXP_SUBSTR(mldnum, '[[:alpha:]]', 1, 1, 'i'); -- MA
mldkey := fac.safe_to_number(substr(mldnum, length(srtdisc) + 1));
DBMS_OUTPUT.PUT_LINE('mldnum: ' || mldnum);
DBMS_OUTPUT.PUT_LINE('srtdisc: ' || srtdisc);
DBMS_OUTPUT.PUT_LINE('mldkey: ' || mldkey);
-- DBMS_OUTPUT.PUT_LINE('mldnum: ' || mldnum);
-- DBMS_OUTPUT.PUT_LINE('srtdisc: ' || srtdisc);
-- DBMS_OUTPUT.PUT_LINE('mldkey: ' || mldkey);
-- We eisen
-- - Goed meldingnummer
-- - Goede srtdiscipline
@@ -380,19 +394,57 @@ BEGIN
-- prefix letter
--AND isd.ins_srtdiscipline_prefix = srtdisc
AND mm.prs_perslid_key_voor = sender;
DBMS_OUTPUT.PUT_LINE('mld_stdmelding_key: ' || TO_CHAR(stdmelding));
-- DBMS_OUTPUT.PUT_LINE('mld_stdmelding_key: ' || TO_CHAR(stdmelding));
IF (stdmelding IS NOT NULL) THEN -- Bestaande melding
INSERT INTO mld_melding_note (mld_melding_key,
mld_melding_note_omschrijving,
prs_perslid_key,
mld_melding_note_flag)
VALUES(mldkey, pbody, sender, 1); -- 1 is zichtbaar FE want zelf ingevoerd.
VALUES (mldkey,
SUBSTR (
psubject || CHR (13) || CHR (10)
|| REPLACE (
SUBSTR(pbody, 1, 4000 - (LENGTH(psubject)+2)),
CHR (13) || CHR (10) || CHR (13) || CHR (10),
CHR (13) || CHR (10)),
1,
4000), -- verwijder onnodige witregels
sender,
1); -- 1 is zichtbaar FE want zelf ingevoerd.
-- Default tracking is even goed genoeg
fac.trackaction('MLDNOT', mldkey, sender, NULL, '#Notitie toegevoegd vanuit e-mail'); -- # voorkomt notificatie
-- suggested extensions:
-- Vlaggetjes zetten zoals mld_edit_note.asp dat doet?
DBMS_OUTPUT.PUT_LINE('Notitie toegevoegd.');
-- DBMS_OUTPUT.PUT_LINE('Notitie toegevoegd.');
-- Vlaggetjes zetten zoals mld_edit_note.asp dat doet
BEGIN
SELECT fac_setting_pvalue
INTO v_flag_on_fenote
FROM fac_setting
WHERE fac_setting_name = 'mld_flag_on_fenote';
SELECT fac_setting_pvalue
INTO v_flag_on_bonote
FROM fac_setting
WHERE fac_setting_name = 'mld_flag_on_bonote';
IF v_flag_on_fenote <> 0 AND v_flag_on_fenote IS NOT NULL
THEN
UPDATE mld_melding
SET mld_melding_flag = v_flag_on_fenote
WHERE mld_melding_key = mldkey
AND( (mld_melding_flag = v_flag_on_bonote)
OR (mld_melding_flag = 0 OR mld_melding_flag IS NULL)
);
-- DBMS_OUTPUT.PUT_LINE('Flag: ' || v_flag_on_fenote || ' gezet.');
END IF;
EXCEPTION WHEN OTHERS
THEN
-- DBMS_OUTPUT.PUT_LINE('Niet gelukt om flag ' || v_flag_on_fenote || ' te zetten.');
END;
ELSE
-- suggested extensions:
-- check for MLDUSE-write autorisations
@@ -431,7 +483,7 @@ BEGIN
3)
RETURNING mld_melding_key
INTO mldkey;
DBMS_OUTPUT.PUT_LINE('Melding toegevoegd: ' || mldkey);
-- DBMS_OUTPUT.PUT_LINE('Melding toegevoegd: ' || mldkey);
errormsg := '(0x165)';
mld.setmeldingstatus (mldkey, 2, sender);
END;
@@ -484,7 +536,7 @@ BEGIN
errormsg := '(0x153)';
IF kkey IS NOT NULL
THEN
DBMS_OUTPUT.PUT_LINE('Bijlagen kenmerk: ' || kkey);
-- DBMS_OUTPUT.PUT_LINE('Bijlagen kenmerk: ' || kkey);
errormsg := '(0x157)';
INSERT INTO fac_result (fac_result_sessionid,
fac_result_naam,
@@ -505,7 +557,7 @@ BEGIN
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.PUT_LINE('Mail niet geaccepteerd: ' || 'OTHERS (error ' || SQLCODE || '/' || SUBSTR (SQLERRM, 1, 100) || ')');
-- DBMS_OUTPUT.PUT_LINE('Mail niet geaccepteerd: ' || 'OTHERS (error ' || SQLCODE || '/' || SUBSTR (SQLERRM, 1, 100) || ')');
INSERT INTO fac_result (fac_result_sessionid,
fac_result_naam,
fac_result_waarde)
@@ -1777,7 +1829,7 @@ END;
/
---- CSUN#25915: Portaal specials...
---- Drie Grafieken, scope op afdelingnivo1 (BU):
---- Drie Grafieken, scope op afdelingnivo1 (BU):
-- 1. openstaande meldingen per vakgroep.
-- 2. meldingen per maand.
-- 3. gemiddelde uitvoertijd per maand.