PNBR#64859: Extern nummer in meldingen bij uitgegeven melding
svn path=/Customer/trunk/; revision=48970
This commit is contained in:
@@ -7719,28 +7719,51 @@ AS
|
||||
|
||||
-- Dit haalt het externnummer op uit de opdrachtomschrijving indien externnr bij de melding nog leeg is
|
||||
-- De syncstate moet gezet worden om te bepalen wat wanneer gesynchroniseerd is
|
||||
-- Na het aanmaken van de opdrachte zetten we de sync state gelijk aan de order date
|
||||
-- Na het aanmaken van de opdracht zetten we de sync state gelijk aan de order date
|
||||
CURSOR externnr IS
|
||||
SELECT DISTINCT
|
||||
m.mld_melding_key,
|
||||
o.mld_opdr_key,
|
||||
o.mld_opdr_externnr AS externnr,
|
||||
km.mld_kenmerk_key,
|
||||
fac.safe_to_number (
|
||||
TO_CHAR (o.mld_opdr_datumbegin, 'yyyymmddhh24miss')) AS sync_date_new
|
||||
FROM mld_melding m,
|
||||
mld_opdr o,
|
||||
mld_stdmelding sm,
|
||||
mld_kenmerk km,
|
||||
mld_srtkenmerk sk
|
||||
WHERE m.mld_melding_key = o.mld_melding_key
|
||||
AND sm.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND o.mld_opdr_externnr IS NOT NULL
|
||||
AND km.mld_stdmelding_key = sm.mld_ins_discipline_key
|
||||
AND sk.mld_srtkenmerk_key = km.mld_srtkenmerk_key
|
||||
AND UPPER (sk.mld_srtkenmerk_omschrijving) = 'SYNC_OGD'
|
||||
AND sm.mld_ins_discipline_key IN (4141, 4162) -- Enkel voor de vakgroepen die met Topdesk gekoppeld worden.
|
||||
AND m.mld_melding_externnr IS NULL;
|
||||
SELECT DISTINCT
|
||||
m.mld_melding_key,
|
||||
o.mld_opdr_key,
|
||||
o.mld_statusopdr_key,
|
||||
MAX (o.mld_opdr_datumbegin),
|
||||
o.mld_opdr_externnr
|
||||
AS externnr,
|
||||
SUBSTR (o.mld_opdr_omschrijving,
|
||||
INSTR (o.mld_opdr_omschrijving, 'TOPdesk nr:') + 12)
|
||||
topdesknr,
|
||||
km.mld_kenmerk_key,
|
||||
fac.safe_to_number (
|
||||
TO_CHAR (o.mld_opdr_datumbegin, 'yyyymmddhh24miss'))
|
||||
AS sync_date_new
|
||||
FROM mld_melding m,
|
||||
mld_opdr o,
|
||||
mld_stdmelding sm,
|
||||
mld_kenmerk km,
|
||||
mld_srtkenmerk sk
|
||||
WHERE m.mld_melding_key = o.mld_melding_key
|
||||
AND sm.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND o.mld_opdr_externnr IS NOT NULL
|
||||
AND km.mld_stdmelding_key = sm.mld_ins_discipline_key
|
||||
AND sk.mld_srtkenmerk_key = km.mld_srtkenmerk_key
|
||||
AND UPPER (sk.mld_srtkenmerk_omschrijving) = 'SYNC_OGD'
|
||||
AND sm.mld_ins_discipline_key IN (4141, 4162) -- Enkel voor de vakgroepen die met Topdesk gekoppeld worden.
|
||||
AND o.mld_statusopdr_key NOT IN (1,
|
||||
2,
|
||||
6,
|
||||
7)
|
||||
AND ( m.mld_melding_externnr IS NULL
|
||||
OR m.mld_melding_externnr <>
|
||||
SUBSTR (o.mld_opdr_omschrijving,
|
||||
INSTR (o.mld_opdr_omschrijving, 'TOPdesk nr:') + 12))
|
||||
GROUP BY m.mld_melding_key,
|
||||
o.mld_opdr_key,
|
||||
o.mld_statusopdr_key,
|
||||
o.mld_opdr_externnr,
|
||||
SUBSTR (o.mld_opdr_omschrijving,
|
||||
INSTR (o.mld_opdr_omschrijving, 'TOPdesk nr:') + 12),
|
||||
km.mld_kenmerk_key,
|
||||
fac.safe_to_number (
|
||||
TO_CHAR (o.mld_opdr_datumbegin, 'yyyymmddhh24miss'));
|
||||
|
||||
-- Onderstaande cursor verzamelt de meldingen die status 'Actie aanvrager' (actie code = 2) moeten krijgen
|
||||
-- Dit is wanneer OGD 60449 een notitie heeft aangemaakt
|
||||
@@ -7788,6 +7811,7 @@ AS
|
||||
AND skm.mld_srtkenmerk_key = 9083) syncdate
|
||||
WHERE sm.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND sm.mld_ins_discipline_key IN (4162, 1582) --- alleen vakgroepen OGD en ICT wijziging
|
||||
AND sm.mld_stdmelding_key <> 11121
|
||||
AND n.mld_melding_key = m.mld_melding_key
|
||||
AND o.mld_melding_key = m.mld_melding_key
|
||||
AND n.prs_perslid_key = 60449
|
||||
@@ -7795,6 +7819,7 @@ AS
|
||||
AND m.prs_perslid_key = pr.prs_perslid_key
|
||||
AND syncdate.mld_melding_key(+) = m.mld_melding_key
|
||||
AND km.mld_stdmelding_key = sm.mld_ins_discipline_key --- let op: kenmerk zit gekoppeld op discipline niveau
|
||||
AND m.mld_melding_status not in (1, 5, 6)
|
||||
AND km.mld_srtkenmerk_key = 9083
|
||||
AND ( fac.safe_to_number (
|
||||
TO_CHAR (mld_melding_note_aanmaak,
|
||||
@@ -7924,7 +7949,7 @@ BEGIN
|
||||
|| rec.mld_melding_key;
|
||||
|
||||
UPDATE mld_melding
|
||||
SET mld_melding_externnr = rec.externnr
|
||||
SET mld_melding_externnr = rec.topdesknr
|
||||
WHERE mld_melding_key = rec.mld_melding_key;
|
||||
|
||||
-- Vervolgens zetten we de sync state zodat we weten vanaf wanneer de sync van notities en bijlagen mag gaan lopen
|
||||
@@ -7953,18 +7978,21 @@ BEGIN
|
||||
FOR rec IN actie_cust
|
||||
LOOP
|
||||
BEGIN
|
||||
SELECT ko.mld_kenmerkopdr_waarde
|
||||
INTO v_status_ogd
|
||||
FROM mld_kenmerkopdr ko,
|
||||
mld_kenmerk k,
|
||||
mld_srtkenmerk sk,
|
||||
mld_opdr o
|
||||
WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
||||
AND o.mld_opdr_key = ko.mld_opdr_key
|
||||
AND sk.mld_srtkenmerk_key = 9081
|
||||
AND ko.mld_kenmerkopdr_verwijder IS NULL
|
||||
AND o.mld_melding_key = rec.mld_melding_key;
|
||||
SELECT COALESCE (mld_kenmerkopdr_waarde, 'Wacht op klant')
|
||||
INTO v_status_ogd
|
||||
FROM (SELECT o.mld_melding_key,
|
||||
o.mld_opdr_key,
|
||||
ko.mld_kenmerkopdr_waarde
|
||||
FROM mld_kenmerkopdr ko,
|
||||
mld_kenmerk k,
|
||||
mld_srtkenmerk sk,
|
||||
mld_opdr o
|
||||
WHERE ko.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
|
||||
AND o.mld_opdr_key = ko.mld_opdr_key
|
||||
AND sk.mld_srtkenmerk_key = 9081
|
||||
AND ko.mld_kenmerkopdr_verwijder IS NULL) status
|
||||
WHERE status.mld_melding_key(+) = rec.mld_melding_key;
|
||||
|
||||
IF rec.opdr_status = 1
|
||||
THEN
|
||||
|
||||
Reference in New Issue
Block a user