CSUN#30375 -- E-mail import ABN AMRO
svn path=/Customer/trunk/; revision=22644
This commit is contained in:
222
CSUN/CSUN.sql
222
CSUN/CSUN.sql
@@ -319,33 +319,55 @@ END;
|
||||
/
|
||||
|
||||
|
||||
CREATE OR REPLACE FUNCTION csun_get_html_valuepair (
|
||||
p_text IN VARCHAR2,
|
||||
p_start IN VARCHAR2,
|
||||
p_eind IN VARCHAR2)
|
||||
CREATE OR REPLACE FUNCTION csun_get_html_valuepair (p_text IN VARCHAR2,
|
||||
p_start IN VARCHAR2,
|
||||
p_eind IN VARCHAR2)
|
||||
RETURN VARCHAR2
|
||||
AS
|
||||
v_pos NUMBER;
|
||||
v_pos_begin NUMBER;
|
||||
v_pos_eind NUMBER;
|
||||
BEGIN
|
||||
RETURN p_start || ': '
|
||||
|| SUBSTR (
|
||||
p_text,
|
||||
INSTR (
|
||||
p_text,
|
||||
CHR (10) || CHR (13) || p_start || CHR (10) || CHR (13))
|
||||
+ LENGTH (p_start)
|
||||
+ 4,
|
||||
INSTR (
|
||||
p_text,
|
||||
CHR (10) || CHR (13) || p_eind || CHR (10) || CHR (13))
|
||||
- (INSTR (
|
||||
p_text,
|
||||
CHR (10) || CHR (13) || p_start || CHR (10) || CHR (13))
|
||||
+ LENGTH (p_start)
|
||||
+ 4));
|
||||
-- controleer of de begintag aanwezig is. Zo nee, dan hebben we niets te tonen.
|
||||
v_pos := INSTR (p_text, p_start);
|
||||
|
||||
--dbms_output.put_line('v_pos start:' || v_pos);
|
||||
IF v_pos = 0
|
||||
THEN
|
||||
RETURN NULL;
|
||||
END IF;
|
||||
|
||||
|
||||
v_pos_begin :=
|
||||
INSTR (p_text, CHR (10) || CHR (13) || p_start || CHR (10) || CHR (13))
|
||||
+ LENGTH (p_start)
|
||||
+ 4;
|
||||
--dbms_output.put_line('v_pos_begin:' || v_pos_begin);
|
||||
|
||||
-- controleer of de eindtag aanwezig is. Zo nee, dan gaan we opzoek naar de volgende.
|
||||
v_pos := INSTR (p_text, p_eind);
|
||||
|
||||
--dbms_output.put_line('v_pos eind:' || v_pos);
|
||||
IF v_pos = 0
|
||||
THEN
|
||||
v_pos_eind :=
|
||||
INSTR (p_text,
|
||||
CHR (10) || CHR (13),
|
||||
v_pos_begin,
|
||||
1);
|
||||
ELSE
|
||||
v_pos_eind :=
|
||||
INSTR (p_text,
|
||||
CHR (10) || CHR (13) || p_eind || CHR (10) || CHR (13));
|
||||
END IF;
|
||||
|
||||
-- dbms_output.put_line('v_pos_eind:' || v_pos_eind);
|
||||
RETURN p_start
|
||||
|| ': '
|
||||
|| SUBSTR (p_text, v_pos_begin, v_pos_eind - v_pos_begin);
|
||||
END;
|
||||
/
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE csun_processemail (pfrom IN VARCHAR2,
|
||||
pto IN VARCHAR2,
|
||||
psubject IN VARCHAR2,
|
||||
@@ -402,76 +424,98 @@ BEGIN
|
||||
THEN
|
||||
errormsg := '(0x145)';
|
||||
|
||||
-- bij abnamro gaan we de html body nog even opschonen
|
||||
IF sender = 23
|
||||
THEN
|
||||
-- pas de omschrijving van de melding aan. Verwijder onnodige html ballast.
|
||||
v_pos := INSTR (pbody, '--> Werkbon');
|
||||
|
||||
IF v_pos > 0
|
||||
BEGIN
|
||||
-- bij abnamro gaan we de html body nog even opschonen
|
||||
IF sender = 23
|
||||
THEN
|
||||
v_body :=
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Planonnr.',
|
||||
'Omschrijving')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Omschrijving',
|
||||
'Toelichting')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Toelichting',
|
||||
'Apparaatnummer')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Apparaatnummer',
|
||||
'Locatie')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'Gebouw', 'Adres')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Adres',
|
||||
'Postcode ' || CHR (38) || 'amp; plaats')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Postcode ' || CHR (38) || 'amp; plaats',
|
||||
'Ruimte')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'Ruimte', 'Melder')
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Melder',
|
||||
'Contactgegevens'),
|
||||
'Melder' || CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Contactgegevens',
|
||||
'Telefoonnummer extern'),
|
||||
CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Telefoonnummer extern',
|
||||
'E-mail'),
|
||||
CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'E-mail', 'Melddatum')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'Melddatum', 'Urgentie')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Urgentie',
|
||||
'ABN AMRO Bank N.V.Facility Desk020 - 6288060facility.desk@nl.abnamro.com')
|
||||
|| CHR (10)
|
||||
|| 'Origineel voor testdoeleinden:' || CHR(10)
|
||||
|| pbody;
|
||||
-- pas de omschrijving van de melding aan. Verwijder onnodige html ballast.
|
||||
v_pos := INSTR (pbody, '--> Werkbon');
|
||||
|
||||
IF v_pos > 0
|
||||
THEN
|
||||
v_body :=
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Planonnr.',
|
||||
'Omschrijving')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Omschrijving',
|
||||
'Toelichting')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Toelichting',
|
||||
'Apparaatnummer')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Apparaatnummer',
|
||||
'Locatie')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'Gebouw', 'Adres')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Adres',
|
||||
'Postcode ' || CHR (38) || 'amp; plaats')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Postcode ' || CHR (38) || 'amp; plaats',
|
||||
'Ruimte')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody, 'Ruimte', 'Melder')
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Melder',
|
||||
'Contactgegevens'),
|
||||
'Melder' || CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Contactgegevens',
|
||||
'Telefoonnummer extern'),
|
||||
CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| REPLACE (
|
||||
csun_get_html_valuepair (pbody,
|
||||
'Telefoonnummer extern',
|
||||
'E-mail'),
|
||||
CHR (10) || CHR (13))
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'E-mail',
|
||||
'Melddatum')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (pbody,
|
||||
'Melddatum',
|
||||
'Urgentie')
|
||||
|| CHR (10)
|
||||
|| csun_get_html_valuepair (
|
||||
pbody,
|
||||
'Urgentie',
|
||||
'ABN AMRO Bank N.V.Facility Desk020 - 6288060facility.desk@nl.abnamro.com');
|
||||
-- || CHR (10)
|
||||
-- || 'Origineel voor testdoeleinden:' || CHR(10)
|
||||
-- || pbody;
|
||||
END IF;
|
||||
END IF;
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
fac.writelog (
|
||||
'PROCESSEMAIL',
|
||||
'W',
|
||||
'Mail kon niet geformateerd worden afzender:'
|
||||
|| pfrom
|
||||
|| '['
|
||||
|| errormsg
|
||||
|| ']',
|
||||
'OTHERS (error '
|
||||
|| SQLCODE
|
||||
|| '/'
|
||||
|| SUBSTR (SQLERRM, 1, 100)
|
||||
|| ')');
|
||||
END;
|
||||
|
||||
-- append (as a note?) to an existing melding if #key is found in the subject
|
||||
-- Alternatief was: scannen van fac_srtnotificatie_oms maar dat voelt ook niet echt lekker
|
||||
|
||||
Reference in New Issue
Block a user