FMHN#88583 Aansluiting Zurichtoren op Facilitor

svn path=/Customer/; revision=69176
This commit is contained in:
Sander Schepers
2025-05-28 09:23:03 +00:00
parent 35bd96b872
commit 6ea455f074
2 changed files with 372 additions and 0 deletions

View File

@@ -0,0 +1,186 @@
--
-- $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

View File

@@ -0,0 +1,186 @@
--
-- $Id$
--
-- Customer specific once-script FMHN#88583_RES.sql.
DEFINE thisfile = 'FMHN#88583_RES_TEST.sql'
DEFINE dbuser = '^FMHN_TEST'
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