FCLT#84767 Overstap Aareon naar Zendesk en benodigde API-koppelingen
svn path=/Customer/trunk/; revision=67754
This commit is contained in:
130
WELK/welk.sql
130
WELK/welk.sql
@@ -1807,7 +1807,7 @@ END;
|
||||
/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
CREATE OR REPLACE PROCEDURE welk_export_valuemation (
|
||||
p_applname IN VARCHAR2,
|
||||
p_applrun IN VARCHAR2,
|
||||
@@ -1949,6 +1949,134 @@ EXCEPTION
|
||||
|| ')');
|
||||
END;
|
||||
/
|
||||
*/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE welk_update_zendesk
|
||||
AS
|
||||
v_errorhint VARCHAR2 (100);
|
||||
|
||||
--Bij een recente wijziging (toevoegen notitie / bijlage) moet Aareon een update krijgen via notificatie (ORDNOL)
|
||||
CURSOR sendagain IS
|
||||
SELECT DISTINCT (mld_opdr_key),
|
||||
prs_perslid_email,
|
||||
prs_perslid_key,
|
||||
prs_bedrijfadres_url,
|
||||
prs_bedrijfadres_key --Zelfde opdracht niet 2 maal
|
||||
FROM (SELECT DISTINCT (opdr.mld_opdr_key),
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_key,
|
||||
ba.prs_bedrijfadres_url,
|
||||
ba.prs_bedrijfadres_key --, opdr.mld_melding_key, opdr.mld_opdr_externsyncdate
|
||||
FROM mld_opdr opdr,
|
||||
mld_opdr_note note,
|
||||
prs_perslid p,
|
||||
prs_bedrijf b,
|
||||
prs_bedrijfadres ba
|
||||
WHERE note.mld_opdr_key = opdr.mld_opdr_key
|
||||
AND opdr.prs_perslid_key = p.prs_perslid_key(+)
|
||||
AND opdr.mld_typeopdr_key = 341 --Aareon
|
||||
-- AND note.prs_perslid_key <> 4 --Facilitor
|
||||
AND opdr.mld_uitvoerende_keys = b.prs_bedrijf_key(+)
|
||||
AND ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND mld_statusopdr_key IN (5, 8) -- Toegekend, geaccepteerd
|
||||
AND ba.prs_bedrijfadres_type = 'N'
|
||||
AND note.mld_opdr_note_aanmaak >
|
||||
(SELECT MAX (t.fac_tracking_datum)
|
||||
FROM fac_tracking t, fac_srtnotificatie sn
|
||||
WHERE sn.fac_srtnotificatie_key =
|
||||
t.fac_srtnotificatie_key
|
||||
AND sn.fac_srtnotificatie_code = 'ORDSNT')
|
||||
AND note.mld_opdr_note_aanmaak >
|
||||
opdr.mld_opdr_externsyncdate
|
||||
UNION ALL
|
||||
SELECT DISTINCT (opdr.mld_opdr_key),
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_key,
|
||||
ba.prs_bedrijfadres_url,
|
||||
ba.prs_bedrijfadres_key
|
||||
FROM mld_opdr opdr,
|
||||
fac_bijlagen att,
|
||||
prs_perslid p,
|
||||
prs_bedrijf b,
|
||||
prs_bedrijfadres ba
|
||||
WHERE opdr.mld_opdr_key = att.fac_bijlagen_refkey
|
||||
AND opdr.prs_perslid_key = p.prs_perslid_key(+)
|
||||
AND att.fac_bijlagen_module = 'MLD'
|
||||
AND opdr.mld_uitvoerende_keys = b.prs_bedrijf_key(+)
|
||||
AND ba.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND opdr.mld_typeopdr_key = 341 --Aareon
|
||||
AND opdr.mld_statusopdr_key IN (5, 8) -- Toegekend, geaccepteerd
|
||||
AND ba.prs_bedrijfadres_type = 'N'
|
||||
AND fac_bijlagen_kenmerk_key = 409 -- Opdrachtkenmerk Bijlagen bij opdrachttype Aareon
|
||||
AND att.fac_bijlagen_aanmaak >
|
||||
(SELECT MAX (t.fac_tracking_datum)
|
||||
FROM fac_tracking t, fac_srtnotificatie sn
|
||||
WHERE sn.fac_srtnotificatie_key =
|
||||
t.fac_srtnotificatie_key
|
||||
AND sn.fac_srtnotificatie_code = 'ORDSNT')
|
||||
AND att.fac_bijlagen_aanmaak >
|
||||
opdr.mld_opdr_externsyncdate);
|
||||
BEGIN
|
||||
v_errorhint := 'init';
|
||||
|
||||
FOR rec IN sendagain
|
||||
LOOP
|
||||
BEGIN
|
||||
v_errorhint :=
|
||||
'Opdracht opnieuw klaar zetten voor verzenden '
|
||||
|| rec.mld_opdr_key;
|
||||
|
||||
-- Eerst zetten we de opdracht opnieuw klaar om te verzenden
|
||||
INSERT INTO fac_notificatie (fac_srtnotificatie_key,
|
||||
fac_notificatie_status,
|
||||
fac_notificatie_refkey,
|
||||
fac_notificatie_prioriteit,
|
||||
fac_notificatie_datum,
|
||||
fac_notificatie_lang,
|
||||
fac_notificatie_sender_email,
|
||||
prs_perslid_key_sender,
|
||||
fac_notificatie_systeemadres,
|
||||
prs_bedrijfadres_key)
|
||||
VALUES ( (SELECT sn.fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie sn
|
||||
WHERE sn.fac_srtnotificatie_code = 'ORDNOL'),
|
||||
0,
|
||||
rec.mld_opdr_key,
|
||||
2,
|
||||
SYSDATE,
|
||||
'NL',
|
||||
rec.prs_perslid_email,
|
||||
rec.prs_perslid_key,
|
||||
rec.prs_bedrijfadres_key,
|
||||
rec.prs_bedrijfadres_url);
|
||||
|
||||
--We updaten de syncdatum zodat de wijziging eenmalig wordt verstuurd.
|
||||
|
||||
UPDATE mld_opdr
|
||||
SET mld_opdr_externsyncdate = SYSDATE
|
||||
WHERE mld_opdr_key = rec.mld_opdr_key;
|
||||
END;
|
||||
END LOOP;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
fac.writelog (
|
||||
'WELK_UPDATE_ZENDESK',
|
||||
'E',
|
||||
'Update sturen naar Zendesk' || '[' || v_errorhint || ']',
|
||||
'OTHERS (error '
|
||||
|| SQLCODE
|
||||
|| '/'
|
||||
|| SUBSTR (SQLERRM, 1, 100)
|
||||
|| ')');
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PROCEDURE welk_pre_putorders
|
||||
AS
|
||||
BEGIN
|
||||
welk_update_zendesk;
|
||||
END;
|
||||
|
||||
CREATE OR REPLACE VIEW welk_v_mldopdr
|
||||
(
|
||||
|
||||
Reference in New Issue
Block a user