-- -- $Id$ -- -- Customer specific once-script FMHN#88583_RES.sql. DEFINE thisfile = 'FMHN#88583_RES.sql' DEFINE dbuser = '^FMHN' SET ECHO ON SET DEFINE ON COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT; COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT; WHENEVER SQLERROR CONTINUE; SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL; SPOOL &fcltlogfile WHENEVER SQLERROR EXIT; SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL; WHENEVER SQLERROR CONTINUE; PROMPT &fcltcusterr SET DEFINE OFF ------ payload begin ------ -- FMHN#88583: Migratie van bezoekersregistratie, reserveringen en catering voor nieuw pand Zurichtoren; -- Hoofdbewoner is ACM. DECLARE c_fielddelimitor VARCHAR2 (1) := ';'; v_newline VARCHAR2 (1000); -- Input line v_errormsg VARCHAR2 (1000); v_errorhint VARCHAR2 (1000); oracle_err_num NUMBER; oracle_err_mes VARCHAR2 (200); v_aanduiding VARCHAR2 (500); v_reservering_key NUMBER; v_res_rsv_ruimte_key NUMBER; v_ruimte_opstel_key NUMBER; CURSOR zaalres IS SELECT csv.fac_import_key, csv.fac_imp_csv_col01 AS ResnrTD, csv.fac_imp_csv_col02 AS ruimte, (SELECT ro.res_ruimte_opstel_key FROM res_ruimte rr, RES_V_ALG_RUIMTE_GEGEVENS rag, res_ruimte_opstelling ro WHERE rag.res_ruimte_key = rr.res_ruimte_key AND rag.alg_locatie_key = 1 AND ro.res_ruimte_key = rr.res_ruimte_key AND ro.res_ruimte_opstel_default = 1 AND rr.res_ruimte_friendlyname = csv.fac_imp_csv_col02) opstel_key, SUBSTR (csv.fac_imp_csv_col03, 1, 60) AS omschrijving, COALESCE (fac.safe_to_date (csv.fac_imp_csv_col04, 'YYYY-MM-DD HH24:MI'),fac.safe_to_date (csv.fac_imp_csv_col04, 'DD-MM-YYYY HH24:MI')) AS van, COALESCE (fac.safe_to_date (csv.fac_imp_csv_col05, 'YYYY-MM-DD HH24:MI'),fac.safe_to_date (csv.fac_imp_csv_col05, 'DD-MM-YYYY HH24:MI')) AS tot, csv.fac_imp_csv_col10 AS status, COALESCE (aanv.prs_perslid_key, 3) AS key_aanvrager, csv.fac_imp_csv_col07 AS email_aanvrager, COALESCE (HOST.prs_perslid_key, aanv.prs_perslid_key, 3) AS key_host, csv.fac_imp_csv_col09 AS email_host, (SELECT MAX (prs_kostenplaats_key) FROM prs_afdeling WHERE prs_afdeling_key = COALESCE (HOST.prs_afdeling_key, aanv.prs_afdeling_key, NULL)) AS kostenplaats_key, DECODE (fac.safe_to_number (csv.fac_imp_csv_col12), 0, 1, fac.safe_to_number (csv.fac_imp_csv_col12)) AS deelnemers, SUBSTR (csv.fac_imp_csv_col13, 1, 2000) AS aantekeningen FROM fac_imp_csv csv LEFT JOIN prs_v_perslid_gegevens aanv ON LOWER (aanv.prs_perslid_email) = LOWER (csv.fac_imp_csv_col07) LEFT JOIN prs_v_perslid_gegevens HOST ON LOWER (HOST.prs_perslid_email) = LOWER (csv.fac_imp_csv_col09) WHERE LOWER (csv.fac_imp_csv_col01) <> 'reserveringsnummer' -- AND csv.fac_imp_csv_col01 = 'H2504 234' ORDER BY csv.fac_imp_csv_key; BEGIN FOR rec IN zaalres LOOP BEGIN v_aanduiding := rec.ResnrTD; INSERT INTO res_reservering (res_reservering_verwijder) VALUES (NULL) RETURNING res_reservering_key INTO v_reservering_key; v_aanduiding := rec.ResnrTD || '-' || v_reservering_key || '/1'; v_errormsg := 'Fout toevoegen rsv_ruimte'; INSERT INTO res_rsv_ruimte (res_reservering_key, res_rsv_ruimte_volgnr, res_rsv_ruimte_kosten_klant, prs_kostenplaats_key, res_rsv_ruimte_omschrijving, res_rsv_ruimte_opmerking, res_rsv_ruimte_contact_key, res_rsv_ruimte_host_key, res_ruimte_opstel_key, res_activiteit_key, res_rsv_ruimte_van, res_rsv_ruimte_tot, res_rsv_ruimte_bezoekers, res_status_fo_key, res_status_bo_key, res_rsv_ruimte_flag) VALUES (v_reservering_key, 1, 1, rec.kostenplaats_key, rec.omschrijving, SUBSTR (rec.aantekeningen, 1, 2000), rec.key_aanvrager, rec.key_host, rec.opstel_key, 10, -- vergadering rec.van, rec.tot, rec.deelnemers, 2, 2, 0) RETURNING res_rsv_ruimte_key INTO v_res_rsv_ruimte_key; FAC.trackaction ('#RESNEW', v_res_rsv_ruimte_key, 3, SYSDATE, 'Aangemaakt door conversie, aangevraagd door: ' || rec.email_aanvrager); RES.set_ruimte_dirty (v_res_rsv_ruimte_key); INSERT INTO res_kenmerkwaarde (res_rsv_ruimte_key, res_kenmerk_key, res_kenmerkreservering_waarde) VALUES (v_res_rsv_ruimte_key, 23 -- Kenmerk referentienummer , rec.ResnrTD); -- -- INSERT INTO res_kenmerkwaarde (res_rsv_ruimte_key, -- res_kenmerk_key, -- res_kenmerkreservering_waarde) -- VALUES (v_res_rsv_ruimte_key, -- 68, -- Kenmerk toelichting bij activiteit Vergadering -- SUBSTR (rec.aantekeningen, 1, 2000)); fac.imp_writelog ( rec.fac_import_key, 'I', 'Reservering is aangemaakt: ' || v_res_rsv_ruimte_key, v_aanduiding); END; END LOOP; END; / ------ payload end ------ SET DEFINE OFF BEGIN adm.systrackscriptId ('$Id$', 1); END; / COMMIT; SET ECHO OFF SPOOL OFF SET DEFINE ON PROMPT Logfile of this upgrade is: &fcltlogfile