WEHK#57307 -- Processmail en CUST notificaties
svn path=/Customer/trunk/; revision=43136
This commit is contained in:
137
WEHK/WEHK.sql
137
WEHK/WEHK.sql
@@ -1272,6 +1272,97 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE wehk_processemail (pfrom IN VARCHAR2,
|
||||
pto IN VARCHAR2,
|
||||
psubject IN VARCHAR2,
|
||||
pbody IN VARCHAR2,
|
||||
psessionid IN VARCHAR2,
|
||||
pemailkey IN NUMBER)
|
||||
AS
|
||||
v_sender prs_perslid.prs_perslid_key%TYPE;
|
||||
v_melding_key mld_melding.mld_melding_key%TYPE;
|
||||
v_stdmelding_key mld_stdmelding.mld_stdmelding_key%TYPE;
|
||||
v_mld_kenmerk_key mld_kenmerk.mld_kenmerk_key%TYPE;
|
||||
v_mld_kenmerkmelding_waarde mld_kenmerkmelding.mld_kenmerkmelding_waarde%TYPE;
|
||||
errormsg fac_result.fac_result_waarde%TYPE;
|
||||
subject_regexp fac_setting.fac_setting_default%TYPE;
|
||||
v_count NUMBER;
|
||||
v_error NUMBER;
|
||||
v_errormsg VARCHAR2 (100);
|
||||
v_from VARCHAR2 (4000);
|
||||
v_body VARCHAR2 (4000);
|
||||
BEGIN
|
||||
errormsg := 'Geen geldige reply';
|
||||
v_error := 0;
|
||||
v_errormsg := '';
|
||||
|
||||
-- Check of dit een reply is op CUST07 waar de sender coversheet@wehk.facilitor.nl is.
|
||||
CASE
|
||||
WHEN UPPER (pto) LIKE '%COVERSHEET@%'
|
||||
THEN
|
||||
errormsg := 'Geen coversheet email gevonden.';
|
||||
|
||||
v_body := pbody;
|
||||
errormsg := 'Geen geldige reply gevonden, dit moet JA of NEE zijn.';
|
||||
|
||||
subject_regexp := '[[:digit:]]{1,}';
|
||||
v_melding_key := REGEXP_SUBSTR (psubject,
|
||||
subject_regexp,
|
||||
1,
|
||||
1,
|
||||
'i');
|
||||
SELECT mld_stdmelding_key
|
||||
INTO v_stdmelding_key
|
||||
FROM mld_melding
|
||||
WHERE mld_melding_key = v_melding_key;
|
||||
|
||||
SELECT mld_kenmerk_key
|
||||
INTO v_mld_kenmerk_key
|
||||
FROM mld_kenmerk
|
||||
WHERE mld_stdmelding_key = v_stdmelding_key
|
||||
AND mld_srtkenmerk_key IN (1831, 1832, 1833, 1834, 1835);
|
||||
|
||||
CASE WHEN UPPER (v_body) LIKE 'JA%'
|
||||
THEN
|
||||
v_mld_kenmerkmelding_waarde := 41;
|
||||
WHEN UPPER (v_body) LIKE 'NEE%'
|
||||
THEN
|
||||
v_mld_kenmerkmelding_waarde := 42;
|
||||
END CASE;
|
||||
|
||||
INSERT INTO mld_kenmerkmelding
|
||||
(mld_melding_key,
|
||||
mld_kenmerk_key,
|
||||
mld_kenmerkmelding_waarde)
|
||||
VALUES (v_melding_key,
|
||||
v_mld_kenmerk_key, -- email
|
||||
v_mld_kenmerkmelding_waarde)
|
||||
RETURNING mld_melding_key
|
||||
INTO v_melding_key;
|
||||
|
||||
UPDATE mld_melding
|
||||
SET mld_melding_status = 5
|
||||
WHERE mld_melding_key = v_melding_key;
|
||||
|
||||
errormsg := '(0x165)';
|
||||
mld.setmeldingstatus (v_melding_key, 2, v_sender);
|
||||
END CASE;
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (psessionid,
|
||||
'maillog',
|
||||
'Database fout - Neem contact op met uw systeembeheerder ' || errormsg);
|
||||
|
||||
fac.writelog ('PROCESSEMAIL',
|
||||
'E',
|
||||
'Mail kon niet ingelezen worden afzender:' || pfrom || '[' || errormsg || ']',
|
||||
'OTHERS (error ' || SQLCODE || '/' || SUBSTR (SQLERRM, 1, 100) || ')');
|
||||
END;
|
||||
/
|
||||
|
||||
/* Formatted on 2008/07/31 14:25 (Formatter Plus v4.8.7) */
|
||||
CREATE OR REPLACE VIEW wehk_v_rap_ruimteoverzicht (fclt_f_locatie,
|
||||
fclt_f_gebouw,
|
||||
@@ -3591,11 +3682,28 @@ AS
|
||||
NULL,
|
||||
'contracten@wehkamp.nl',
|
||||
NULL
|
||||
FROM mld_melding m
|
||||
FROM mld_melding m,
|
||||
fac_tracking t
|
||||
WHERE m.mld_stdmelding_key = 1641
|
||||
AND m.mld_melding_status = 2;
|
||||
AND m.mld_melding_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key =
|
||||
(SELECT fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code = 'MLDNEW')
|
||||
AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun
|
||||
- fac_notificatie_job_interval
|
||||
/ 24
|
||||
FROM fac_notificatie_job
|
||||
WHERE fac_notificatie_job_view =
|
||||
'WEHK_V_NOTI_OPVOERENCONTRACT')
|
||||
AND (SELECT fac_notificatie_job_nextrun
|
||||
FROM fac_notificatie_job
|
||||
WHERE fac_notificatie_job_view =
|
||||
'WEHK_V_NOTI_OPVOERENCONTRACT');
|
||||
|
||||
|
||||
-- Melding naar de in de coversheet melding geselecteerde goedkeurder.
|
||||
-- Flag 8 instellen voor XSENDER!
|
||||
CREATE OR REPLACE VIEW WEHK_V_NOTI_GOEDKEURDER
|
||||
(
|
||||
CODE,
|
||||
@@ -3604,6 +3712,7 @@ CREATE OR REPLACE VIEW WEHK_V_NOTI_GOEDKEURDER
|
||||
TEXT,
|
||||
KEY,
|
||||
XKEY,
|
||||
XSENDER,
|
||||
XEMAIL,
|
||||
XMOBILE
|
||||
)
|
||||
@@ -3611,20 +3720,34 @@ AS
|
||||
SELECT 'CUST07',
|
||||
NULL,
|
||||
mkm.mld_kenmerkmelding_waarde,
|
||||
( 'Er staat een coversheet voor u klaar ter goedkeuring ('
|
||||
'Er staat een coversheet voor u klaar ter goedkeuring ('
|
||||
|| 'i /'
|
||||
|| m.mld_melding_key)
|
||||
|| m.mld_melding_key
|
||||
|| ')',
|
||||
m.mld_melding_key,
|
||||
NULL,
|
||||
'coversheet@wehk.facilitor.nl',
|
||||
NULL,
|
||||
NULL
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk, fac_tracking t
|
||||
WHERE m.mld_stdmelding_key IN (1621, 1622, 1623, 1624, 1625) -- een van de goedkeuringsmeldingen
|
||||
AND m.mld_melding_status IN (2, 3) -- nieuwe en te accepteren
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mkm.mld_melding_key = m.mld_melding_key
|
||||
AND mk.mld_srtkenmerk_key = 1847;
|
||||
AND mk.mld_srtkenmerk_key = 1847
|
||||
AND t.fac_srtnotificatie_key =
|
||||
(SELECT fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code = 'MLDNEW')
|
||||
AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun
|
||||
- fac_notificatie_job_interval
|
||||
/ 24
|
||||
FROM fac_notificatie_job
|
||||
WHERE fac_notificatie_job_view =
|
||||
'WEHK_V_NOTI_GOEDKEURDER')
|
||||
AND (SELECT fac_notificatie_job_nextrun
|
||||
FROM fac_notificatie_job
|
||||
WHERE fac_notificatie_job_view =
|
||||
'WEHK_V_NOTI_GOEDKEURDER');
|
||||
|
||||
|
||||
------ payload end ------
|
||||
|
||||
Reference in New Issue
Block a user