AAIT#76862 order by erbij zorgt voor een meer chronologische volgorde (niks gegarandeerd, wel verbetering)
FCLT#77012 opschonen exc_import tabel (alleen mislukte regels van deletes die al deleted zijn) en een early exit toegevoegd voor toe-te-voegen reserveringen die al bestaan met exact hetzelfde externnr. Dat kon voorkomen bij bijv. 2 snelle notificaties achter elkaar van hetzelfde event svn path=/Database/branches/DB44/; revision=59437
This commit is contained in:
@@ -296,8 +296,16 @@ AS
|
||||
|
||||
-- We willen mislukte regels uit eerdere imports bewaren, zodat we die nog eens kunnen proberen.
|
||||
-- Alle correct verwerkte importregels krijgen een vlag, dus die gooien we weg.
|
||||
-- Deletes die al deleted zijn, zijn schijnbaar al gelukt
|
||||
DELETE FROM exc_import
|
||||
WHERE gelukt IS NOT NULL;
|
||||
WHERE gelukt IS NOT NULL
|
||||
OR ( modifier = 'D'
|
||||
AND EXISTS
|
||||
(SELECT 1
|
||||
FROM res_rsv_ruimte
|
||||
WHERE res_rsv_ruimte_verwijder IS NOT NULL
|
||||
AND INSTR (res_rsv_ruimte_externnr,
|
||||
appt_id || '|' || recur_id) = 1));
|
||||
|
||||
-- We gaan uit van een geldig bestand, mogelijk verandert dat onderweg
|
||||
header_is_valid := 0;
|
||||
@@ -874,7 +882,8 @@ AS
|
||||
rr.res_ruimte_opstel_key
|
||||
AND r.res_ruimte_key = ro.res_ruimte_key
|
||||
AND r.res_ruimte_verwijder IS NULL
|
||||
AND r.res_ruimte_extern_id = i.room_id);
|
||||
AND r.res_ruimte_extern_id = i.room_id)
|
||||
ORDER BY 9;
|
||||
BEGIN
|
||||
SELECT BITAND (COALESCE (fac_setting_pvalue, fac_setting_default), 4)
|
||||
INTO sync_level
|
||||
@@ -1461,6 +1470,24 @@ AS
|
||||
CONTINUE;
|
||||
END IF;
|
||||
|
||||
v_errorhint := 'Last-minute duplicaat check';
|
||||
|
||||
SELECT COUNT (*)
|
||||
INTO v_count
|
||||
FROM res_rsv_ruimte
|
||||
WHERE res_rsv_ruimte_externnr IS NOT NULL
|
||||
AND INSTR(res_rsv_ruimte_externnr, rec.appt_id || '|' || rec.recur_id || '|') = 1
|
||||
AND res_rsv_ruimte_verwijder IS NULL;
|
||||
|
||||
IF (v_count > 0)
|
||||
THEN
|
||||
fac.imp_writelog (p_import_key,
|
||||
'E',
|
||||
v_aanduiding,
|
||||
'Deze exacte reservering is al bekend in Facilitor. Geen boeking.');
|
||||
CONTINUE;
|
||||
END IF;
|
||||
|
||||
-- Is dit een op zichzelf staande appointment, of onderdeel van een reeks (recurrence)?
|
||||
-- (obv recur_id, die samen met appt_id in res_rsv_ruimte_externnr staat)
|
||||
v_errorhint := 'Check recurrence';
|
||||
|
||||
Reference in New Issue
Block a user