-- Customer specific once-script UWVA#33167. -- $Id$ SET ECHO ON SPOOL xuwva#33167.lst SET DEFINE OFF SET SERVEROUTPUT ON size 1000000; -- Zoekt voor alle res_ruimtes met standaard-bez_actie "Oproepen" de bezoekersafspraken met een -- ophaal-actie of geen actie. Voor die afspraken wordt de bez_actie op "Ophalen" gezet. -- (Merk op dat dit gebeurt voor alle oproep-res_ruimtes, ongeacht de locatie) DECLARE oracle_err_num NUMBER; oracle_err_mes VARCHAR2 (255); v_aanduiding VARCHAR2 (255); v_errormsg VARCHAR2 (1024); v_errorhint VARCHAR2 (1024); CURSOR c IS SELECT ac.bez_actie_omschrijving actie_oproep ,ac.bez_actie_key ,rr.res_ruimte_nr ruimte ,rrr.res_rsv_ruimte_key ,rrr.res_reservering_key||'/'||rrr.res_rsv_ruimte_volgnr deelres ,rrr.res_rsv_ruimte_van van ,a.bez_afspraak_key ,a.bez_actie_key actie_oud FROM bez_actie ac ,res_ruimte rr ,res_ruimte_opstelling ro ,res_rsv_ruimte rrr ,bez_afspraak a WHERE BITAND(ac.bez_actie_flags, 1) = 1 AND rr.bez_actie_key = ac.bez_actie_key AND ro.res_ruimte_key = rr.res_ruimte_key AND rrr.res_ruimte_opstel_key = ro.res_ruimte_opstel_key AND a.res_rsv_ruimte_key = rrr.res_rsv_ruimte_key AND a.bez_afspraak_datum > TRUNC(SYSDATE) AND ( a.bez_actie_key != ac.bez_actie_key OR a.bez_actie_key IS NULL); BEGIN FOR r IN c LOOP BEGIN v_aanduiding := 'Afspraak '||r.bez_afspraak_key ||' bij res '||r.deelres ||' ('||r.res_rsv_ruimte_key ||') in "'||r.ruimte ||'" op '||TO_CHAR(r.van, 'dd-mm-yyyy hh24:mi'); v_errorhint := 'Update bez_actie bij bez_afspraak'; UPDATE bez_afspraak SET bez_actie_key = r.bez_actie_key WHERE bez_afspraak_key = r.bez_afspraak_key; DBMS_OUTPUT.PUT_LINE (v_aanduiding); EXCEPTION WHEN OTHERS THEN oracle_err_num := SQLCODE; oracle_err_mes := SUBSTR (SQLERRM, 1, 200); v_errorhint := v_errormsg; v_errormsg := v_aanduiding || '(ORACLE error ' || oracle_err_num || '/' || oracle_err_mes || ')'; DBMS_OUTPUT.PUT_LINE ('Error: '||v_errormsg||'; Hint: '||v_errorhint); END; END LOOP; END; / BEGIN adm.systrackscriptId('$Id$'); END; / COMMIT; SPOOL OFF