Files
Customer/onces/BAMG/BAMG#67179.sql
Arthur Egberink 9a605878f1 BAMG#67179 -- Royal BAM Group N.V. Migratie en kostensoorten
svn path=/Customer/; revision=53506
2021-10-27 16:02:55 +00:00

840 lines
43 KiB
SQL
Raw Blame History

-- $Id$
--
-- Migratie van meldingen en reserveringen vanuit MCS.
DEFINE thisfile = 'BAMG#67179.SQL'
DEFINE dbuser = '^BAMG'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
WHENEVER SQLERROR EXIT;
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
WHENEVER SQLERROR CONTINUE;
SPOOL &fcltlogfile
SET DEFINE OFF
------ payload begin ------
BEGIN
adm.trydrop ('TABLE bamg_imp_res');
adm.trydrop ('TABLE bamg_imp_mld');
END;
/
CREATE TABLE bamg_imp_res
(
ReservationID VARCHAR2 (1000), -- res_rsv_ruimte_opmerking
EventDate VARCHAR2 (1000), -- res_rsv_ruimte_van
StartTime VARCHAR2 (1000), -- res_rsv_ruimte_van
StopTime VARCHAR2 (1000), -- res_rsv_ruimte_tot
Description VARCHAR2 (1000), -- res_rsv_ruimte_omschrijving
ReservableRoom VARCHAR2 (1000), -- res_ruimte_nr
RoomPurpose VARCHAR2 (1000), -- res_activiteitomschrijving
Responsible VARCHAR2 (1000), -- res_rsv_ruimte_host_key
Contact VARCHAR2 (1000), -- res_rsv_ruimte_contact_key
NumberofInvitees VARCHAR2 (1000), -- res_rsv_ruimte_bezoekers
CostCenter VARCHAR2 (1000) -- prs_kostenplaats_nr
);
CREATE TABLE bamg_imp_mld
(
CallID VARCHAR2 (1000), -- mld_melding_externnr
Status VARCHAR2 (1000), -- mld_melding_status
Reference VARCHAR2 (1000), -- mld_melding_onderwerp
DateTimeReceived VARCHAR2 (1000), -- mld_melding_datum
Caller VARCHAR2 (1000), -- mld_melding.prs_perslid_key
CallerArea VARCHAR2 (1000), -- mld_melding_omschrijving
CallerLocation VARCHAR2 (1000), -- mld_melding_omschrijving
CallerBuilding VARCHAR2 (1000), -- mld_melding_omschrijving
AssignedTo VARCHAR2 (1000), -- mld_stdmelding_key
Description VARCHAR2 (4000), -- mld_melding_omschrijving
DueDate VARCHAR2 (1000) -- mld_melding_einddatum
);
-- Tijdelijke procedures om reserveringen uit MCS in te lezen
CREATE OR REPLACE PROCEDURE bamg_import_res (p_import_key IN NUMBER)
AS
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);
-- De importvelden:
v_ReservationID VARCHAR2 (1000); -- res_rsv_ruimte_opmerking
v_EventDate VARCHAR2 (1000); -- res_rsv_ruimte_van
v_StartTime VARCHAR2 (1000); -- res_rsv_ruimte_van
v_StopTime VARCHAR2 (1000); -- res_rsv_ruimte_tot
v_Description VARCHAR2 (1000); -- res_rsv_ruimte_omschrijving
v_ReservableRoom VARCHAR2 (1000); -- res_ruimte_nr
v_RoomPurpose VARCHAR2 (1000); -- res_activiteitomschrijving
v_Responsible VARCHAR2 (1000); -- res_rsv_ruimte_host_key
v_Contact VARCHAR2 (1000); -- res_rsv_ruimte_contact_key
v_NumberofInvitees VARCHAR2 (1000); -- res_rsv_ruimte_bezoekers
v_CostCenter VARCHAR2 (1000); -- prs_kostenplaats_nr
v_dummy VARCHAR2(1000);
v_ruimte_opstel_key NUMBER;
v_res_ruimte_nr VARCHAR2(200);
v_res_ruimte_key NUMBER;
CURSOR c
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
-- Eerst de importtabel leegmaken
DELETE bamg_imp_res;
FOR rec IN c
LOOP
BEGIN
v_errormsg := 'Fout FETCH te importeren rij';
v_newline := rec.fac_imp_file_line;
v_errormsg := 'Fout opvragen te importeren rij';
v_aanduiding := '';
-- Lees alle veldwaarden
fac.imp_getfield (v_newline, c_fielddelimitor, v_ReservationID);
fac.imp_getfield (v_newline, c_fielddelimitor, v_EventDate);
fac.imp_getfield (v_newline, c_fielddelimitor, v_StartTime);
fac.imp_getfield (v_newline, c_fielddelimitor, v_StopTime);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Description);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_ReservableRoom);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_RoomPurpose);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Responsible);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Contact);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_NumberofInvitees);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_CostCenter);
v_aanduiding := v_ReservationID || '|' || v_ReservableRoom || '|' || v_EventDate || '|' || v_StartTime;
v_errorhint := 'Omzetten res_ruimte: ' || v_ReservableRoom;
SELECT CASE v_ReservableRoom
WHEN 'AMS11 - Vergaderzaal 0.8' THEN ''
WHEN 'AMS13 - Eet/Werkcaf<61>' THEN 'AMS13 - Presentatieruimte Eet/Werkcafe'
WHEN 'AMS13 - Vergaderruimte 0.1 begane grond' THEN 'AMS13 - Vergaderzaal 0.1'
--WHEN '' THEN 'AMS13 - Vergaderzaal 1.01 De Uitkijk'
--WHEN '' THEN 'AMS13 - Vergaderzaal 1.03 Aquarium'
WHEN 'AMS13 - Vergaderruimte 2.01' THEN 'AMS13 - Vergaderzaal 2.01'
WHEN 'AMS13 - Vergaderruimte 2.02' THEN 'AMS13 - Vergaderzaal 2.02'
WHEN 'AMS13 - Vergaderruimte 2.03' THEN 'AMS13 - Vergaderzaal 2.03'
WHEN 'AMS13 - Vergaderruimte 2.04' THEN 'AMS13 - Vergaderzaal 2.04'
WHEN 'AMS18 - Afrikahaven' THEN 'AMS18 - Afrikahaven'
WHEN 'AMS18 - Coenhaven' THEN 'AMS18 - Coenhaven'
WHEN 'AMS18 - Houthaven' THEN 'AMS18 - Houthaven'
WHEN 'AMS18 - Mercuriushaven' THEN 'AMS18 - Mercuriushaven'
WHEN 'APE15 - Vergaderzaal Grift 0.01' THEN 'APE15 - Vergaderzaal Grift 0.01'
WHEN 'APE15 - Vergaderzaal Grift 0.02' THEN 'APE15 - Vergaderzaal Grift 0.02'
WHEN 'APE15 - Vergaderzaal Grift 0.03' THEN 'APE15 - Vergaderzaal Grift 0.03'
--WHEN '' THEN 'APE15 - Vergaderzaal Grift 0.04'
--WHEN '' THEN 'APE15 - Vergaderzaal Heide 1.01'
--WHEN '' THEN 'APE15 - Vergaderzaal Heide 1.02'
--WHEN '' THEN 'APE15 - Vergaderzaal Heide 1.04'
--WHEN '' THEN 'APE15 - Vergaderzaal Kroondomein 2.01'
WHEN 'APE15 - Vergaderzaal Kroondomein 2.02' THEN 'APE15 - Vergaderzaal Kroondomein 2.02'
WHEN 'APE15 - Vergaderzaal Kroondomein 3' THEN 'APE15 - Vergaderzaal Kroondomein 3'
--WHEN '' THEN 'BLE10 - Vergaderzaal 0.1'
--WHEN '' THEN 'BLE10 - Vergaderzaal 0.2'
WHEN 'BRE14 - Bedrijfsrestaurant achterzijde' THEN 'BRE14 - Bedrijfsrestaurant achterzijde'
WHEN 'BRE14 - Begijnhof' THEN 'BRE14 - Begijnhof'
WHEN 'BRE14 - De Parel' THEN 'BRE14 - De Parel'
WHEN 'BRE14 - Grote Kerk' THEN 'BRE14 - Grote Kerk'
WHEN 'BRE14 - Grote Markt' THEN 'BRE14 - Grote Markt'
WHEN 'BRE14 - Havermarkt' THEN 'BRE14 - Havermarkt'
--WHEN '' THEN 'BRE14 - Havermarkt'
WHEN 'BRE14 - Valkenberg' THEN 'BRE14 - Valkenberg'
--WHEN '' THEN 'BUN18 - A - Vergaderzaal 0.01'
--WHEN '' THEN 'BUN18 - A - Vergaderzaal Kolfruimte / be'
WHEN '' THEN 'BUN18 - B - Vergaderzaal B 2.12'
WHEN 'BUN18 - B - Vergaderzaal B 225' THEN 'BUN18 - B - Vergaderzaal B.2.25'
WHEN 'BUN18 - B - Berlijn' THEN 'BUN18 - B - Vergaderzaal Berlijn'
--WHEN '' THEN 'BUN18 - B - Vergaderzaal Boardroom'
WHEN 'BUN18 - B - Brussel' THEN 'BUN18 - B - Vergaderzaal Brussel'
WHEN 'BUN18 - B - Camberley' THEN 'BUN18 - B - Vergaderzaal Camberley'
WHEN 'BUN18 - B - Combinatie Frankfurt ' || CHR(38) || ' Berlijn' THEN 'BUN18 - B - Vergaderzaal Combinatie Fran'
WHEN 'BUN18 - B - Dubai' THEN 'BUN18 - B - Vergaderzaal Dubai'
WHEN 'BUN18 - B - Frankfurt' THEN 'BUN18 - B - Vergaderzaal Frankfurt'
WHEN 'BUN18 - B - Glasgow' THEN 'BUN18 - B - Vergaderzaal Glasgow'
WHEN 'BUN18 - B - Hemel Hempstead' THEN 'BUN18 - B - Vergaderzaal Hemel Hempstead'
WHEN 'BUN18 - B - Jakarta (eet-/werkcaf<61>)' THEN 'BUN18 - B - Vergaderzaal Jakarta'
WHEN 'BUN18 - B - Kildare' THEN 'BUN18 - B - Vergaderzaal Kildare'
WHEN 'BUN18 - B - Singapore (eet-/werkcaf<61>)' THEN 'BUN18 - B - Vergaderzaal Singapore'
WHEN 'BUN18 - B - Stuttgart' THEN 'BUN18 - B - Vergaderzaal Stuttgart'
WHEN 'BUN18 - C - Vergaderzaal C0.03' THEN 'BUN18 - C - Vergaderzaal C0.03'
--WHEN '' THEN 'BUN18 - B - Vergaderzaal B1.01'
--WHEN '' THEN 'BUN18 - B - Vergaderzaal B1.02'
--WHEN '' THEN 'BUN18 - B - Vergaderzaal B1.03'
--WHEN '' THEN 'BUN18 - C - Vergaderzaal C0.04'
WHEN 'BUN18 - C - Vergaderzaal C0.07' THEN 'BUN18 - C - Vergaderzaal C0.07'
WHEN 'BUN18 - C - Vergaderzaal C0.11' THEN 'BUN18 - C - Vergaderzaal C0.11'
--WHEN '' THEN 'BUN18 - C - Vergaderzaal C0.13'
WHEN 'BUN18 - C - Vergaderzaal DIR C 1.27' THEN 'BUN18 - C - Vergaderzaal C1.27'
--WHEN '' THEN 'BUN18 - C - Vergaderzaal C1.27'
WHEN 'BUN18 - F - Vergaderzaal F 0.07' THEN 'BUN18 - F - Vergaderzaal F 0.07'
--WHEN '' THEN 'BUN18 - F - Vergaderzaal F 0.08'
WHEN 'BUN18 - F - Vergaderzaal F 0.09' THEN 'BUN18 - F - Vergaderzaal F 0.09'
WHEN 'BUN18 - F - Vergaderzaal F 0.10' THEN 'BUN18 - F - Vergaderzaal F 0.10'
WHEN 'BUN18 - F - Vergaderzaal F 0.12' THEN 'BUN18 - F - Vergaderzaal F 0.12'
WHEN 'BUN18 - F - Vergaderzaal F 0.13' THEN 'BUN18 - F - Vergaderzaal F 0.13'
WHEN 'BUN18 - A - Vergaderzaal A 101' THEN 'BUN18 - A - Vergaderzaal A1.01'
WHEN 'BUN18 - A - Vergaderzaal A 146' THEN 'BUN18 - A - Vergaderzaal A1.46'
WHEN 'BUN18 - F - Vergaderzaal F 2.11' THEN ''
WHEN 'BUN18 - G - Combinatie vergaderzaal 003/004' THEN ''
WHEN 'CUL10 - Dokters/kolfkamer' THEN 'CUL10 - Dokterskamer/kolfkamer'
WHEN 'CUL10 - Kantine' THEN 'CUL10 - Kantine'
WHEN 'CUL10-8 - Vergaderzaal Amstel (2C100)' THEN 'CUL10 - Vergaderzaal Amstel'
WHEN 'CUL10-6 - Vergaderzaal Eem (1I100)' THEN 'CUL10 - Vergaderzaal Eem'
WHEN 'CUL10-3 - Vergaderzaal Lek (0G020)' THEN 'CUL10 - Vergaderzaal Lek'
WHEN 'CUL10-5 - Vergaderzaal Linge (1E010)' THEN 'CUL10 - Vergaderzaal Linge'
WHEN 'CUL10-2 - Vergaderzaal Maas (0E090)' THEN 'CUL10 - Vergaderzaal Maas'
WHEN 'CUL10-7 - Vergaderzaal Schelde (1M061)' THEN 'CUL10 - Vergaderzaal Schelde'
WHEN 'CUL10-9 - Vergaderzaal Vecht (0G060)' THEN 'CUL10 - Vergaderzaal Vecht'
WHEN 'CUL10-1 - Vergaderzaal Waal (0A080)' THEN 'CUL10 - Vergaderzaal Waal'
--WHEN '' THEN 'DBO10 - Presentatieruimte 0.2'
WHEN 'DBO10 - Vergaderzaal 0.1' THEN 'DBO10 - Vergaderzaal 0.1'
WHEN 'DBO10 - Vergaderzaal 1.01' THEN 'DBO10 - Vergaderzaal 1.01'
--WHEN '' THEN 'DBO10 - Vergaderzaal 1.02'
WHEN 'DBO10 - Vergaderzaal 1.10' THEN 'DBO10 - Vergaderzaal 1.10'
WHEN 'DBO10 - Vergaderzaal 1.11' THEN 'DBO10 - Vergaderzaal 1.11'
--WHEN '' THEN 'DBO10 - Vergaderzaal 2.06'
WHEN 'Kleine vergaderzaal; 1e etage' THEN 'DHA12 - Vergaderzaal 1e etage'
--WHEN '' THEN 'DHA12 - Vergaderzaal 2e etage'
WHEN 'DHA12 - Vergaderzaal K.08 (opleidingslokaal)' THEN 'DHA12 - Vergaderzaal K.08'
WHEN 'DOR10 - Energiehuis' THEN 'DOR10 - Vergaderzaal Energiehuis'
WHEN 'DOR10 - Groothoofdspoort' THEN 'DOR10 - Vergaderzaal Groothoofdspoort'
WHEN 'DOR10 - Voorstraathaven' THEN 'DOR10 - Vergaderzaal Voorstraathaven'
--WHEN '' THEN 'DRA10 - Vergaderzaal 0.16'
--WHEN '' THEN 'DRA10 - Vergaderzaal 1.16'
WHEN 'EIN16- Vergaderzaal 0.09' THEN 'EIN16 - Vergaderzaal 0.09'
WHEN 'EIN16- Vergaderzaal 0.10' THEN 'EIN16 - Vergaderzaal 0.10'
WHEN 'EIN16- Vergaderzaal 0.11' THEN 'EIN16 - Vergaderzaal 0.11'
WHEN 'EIN16- Vergaderzaal 0.13' THEN 'EIN16 - Vergaderzaal 0.13'
WHEN 'EIN16- Vergaderzaal 1.14' THEN 'EIN16 - Vergaderzaal 1.14'
WHEN 'EIN16-Projectkamer 0.32' THEN 'EIN16 - Vergaderzaal 0.32'
--WHEN '' THEN 'EIN16 - Vergaderzaal 1.12'
WHEN 'Vergaderzaal 1.14' THEN 'EIN16 - Vergaderzaal 1.14'
WHEN 'EIN16- Vergaderzaal 1.15' THEN 'EIN16 - Vergaderzaal 1.15'
WHEN 'Gouda Restaurant' THEN 'GOU10 - Presentatieruimte Gouda Restaura'
WHEN 'Vergaderzaal 2.56' THEN 'GOU10 - Vergaderzaal 2.56'
WHEN 'Vergaderzaal 2.58' THEN 'GOU10 - Vergaderzaal 2.58'
WHEN 'Vergaderzaal 2.59' THEN 'GOU10 - Vergaderzaal 2.59'
WHEN 'Vergaderzaal 2.60' THEN 'GOU10 - Vergaderzaal 2.60'
WHEN 'Vergaderzaal 2.61' THEN 'GOU10 - Vergaderzaal 2.61'
WHEN 'Vergaderzaal 2.63' THEN 'GOU10 - Vergaderzaal 2.63'
WHEN 'Vergaderzaal 2.65' THEN 'GOU10 - Vergaderzaal 2.65'
WHEN 'Vergaderzaal 3.57' THEN 'GOU10 - Vergaderzaal 3.57'
WHEN 'Vergaderzaal 4.02' THEN 'GOU10 - Vergaderzaal 4.02'
WHEN 'Vergaderzaal 5.04.' THEN 'GOU10 - Vergaderzaal 5.04.'
WHEN 'Vergaderzaal 5.55' THEN 'GOU10 - Vergaderzaal 5.55'
WHEN 'Vergaderzaal 6.56' THEN 'GOU10 - Vergaderzaal 6.56'
--WHEN '' THEN 'GOU10 - Vergaderzaal 8.55'
--WHEN '' THEN 'GOU10 - Vergaderzaal BIM-ruimte 1.55'
WHEN 'Vergaderzaal ' || chr(39) || 'de Keet' || chr(39) THEN 'GOU10 - Vergaderzaal ' || chr(39) || 'de Keet' || chr(39)
WHEN 'BIM-ruimte 1.55' THEN 'GOU10 - Vergaderzaal BIM-ruimte 1.55'
WHEN 'Gouda Restaurant' THEN 'GOU10 - Presentatieruimte Gouda Restaurant'
WHEN 'Tender-strategieruimte 8.55' THEN 'GOU10 - Vergaderzaal 8.55'
WHEN 'HEL11 - Vergaderzaal 1' THEN 'HEL11 - Vergaderzaal 1'
--WHEN '' THEN 'LEL10 - Vergaderzaal De Innovatie'
WHEN 'LEL10 - De Klantwaarde (1.05)' THEN 'LEL10 - Vergaderzaal De Klantwaarde'
WHEN 'LEL10 - De Toekomst (1.07)' THEN 'LEL10 - Vergaderzaal De Toekomst'
WHEN 'LEL10 - De Verbetering (1.02)' THEN 'LEL10 - Vergaderzaal De Verbetering'
WHEN 'LEL10 - De Verzilvering (1.08)' THEN 'LEL10 - Vergaderzaal De Verzilvering'
--WHEN '' THEN 'LEL10 - Vergaderzaal De Wijsheid'
WHEN 'LEL10 - Het Heden' THEN 'LEL10 - Vergaderzaal Het Heden'
WHEN 'LEL10 - Het Verleden (2.01)' THEN 'LEL10 - Vergaderzaal Het Verleden'
WHEN 'NIE20 - Bedrijfsrestaurant' THEN 'NIE20 - Presentatie Nieuwegein Restauran'
--WHEN '' THEN 'NIE20 - Vergaderzaal 11'
--WHEN '' THEN 'NIE20 - Vergaderzaal 12'
--WHEN '' THEN 'NIE20 - Vergaderzaal 13'
--WHEN '' THEN 'NIE20 - Vergaderzaal 14'
--WHEN '' THEN 'NIE20 - Vergaderzaal 15'
--WHEN '' THEN 'NIE20 - Vergaderzaal 16'
--WHEN '' THEN 'NIE20 - Vergaderzaal 2'
--WHEN '' THEN 'NIE20 - Vergaderzaal 22'
--WHEN '' THEN 'NIE20 - Vergaderzaal 23'
--WHEN '' THEN 'NIE20 - Vergaderzaal 24'
--WHEN '' THEN 'NIE20 - Vergaderzaal 25'
--WHEN '' THEN 'NIE20 - Vergaderzaal 26'
WHEN 'NIE20 - Vergaderkamer 3' THEN 'NIE20 - Vergaderzaal 3'
WHEN 'NIE20 - Vergaderkamer 4' THEN 'NIE20 - Vergaderzaal 4'
--WHEN '' THEN 'NIE20 - Vergaderzaal 5'
WHEN 'NIE20 - Vergaderkamer 6' THEN 'NIE20 - Vergaderzaal 6'
WHEN 'NIE20 - Vergaderkamer 7' THEN 'NIE20 - Vergaderzaal 7'
--WHEN '' THEN 'NIE20 - Vergaderzaal projectruimte 10'
--WHEN '' THEN 'NIE20 - Vergaderzaal projectruimte 20'
WHEN 'NIE30 - Vergaderzaal 4' THEN 'NIE20 - Vergaderzaal 4'
WHEN 'NIE31 - Ruimte 0.01' THEN 'NIE31 - Vergaderzaal 0.01'
WHEN 'NIE31 - Ruimte 0.02' THEN 'NIE31 - Vergaderzaal 0.02'
WHEN 'NIE31 - Ruimte 0.03' THEN 'NIE31 - Vergaderzaal 0.03'
--WHEN '' THEN 'NIE31 - Vergaderzaal 3.18'
WHEN 'NIE31 Vergaderzaal 7.02' THEN 'NIE31 - Vergaderzaal 7.02'
--WHEN '' THEN 'NIE31 - Vergaderzaal De Brainstormruimte'
WHEN 'NIE31 - De Brainstormruimte' THEN 'NIE31 - Vergaderzaal De Brainstormruimte'
--WHEN '' THEN 'NIE30 - Vergaderzaal 6'
WHEN 'ROT11 - Eet-/werkcaf<61>' THEN 'ROT11 - Presentatieruimte Eet-/werkcaf<61>'
--WHEN '' THEN 'ROT11 - Vergaderzaal Burcht van Leiden'
WHEN 'ROT11 - De Euromast' THEN 'ROT11 - Vergaderzaal De Euromast'
WHEN 'ROT11 - De Kuip' THEN 'ROT11 - Vergaderzaal De Kuip'
--WHEN '' THEN 'ROT11 - Vergaderzaal Eerste kamer'
WHEN 'ROT11 - Maeslantkering ' THEN 'ROT11 - Vergaderzaal Maeslantkering'
WHEN 'ROT11 - Nieuwe Kerk' THEN 'ROT11 - Vergaderzaal Nieuwe Kerk'
WHEN 'ROT11 - Ridderzaal' THEN 'ROT11 - Vergaderzaal Ridderzaal'
WHEN 'ROT11 - Staten Generaal' THEN 'ROT11 - Vergaderzaal Staten Generaal'
WHEN 'ROT11 - Tweede Kamer' THEN 'ROT11 - Vergaderzaal Tweede Kamer'
--WHEN '' THEN 'ULE10 - Vergaderzaal 0.10'
--WHEN '' THEN 'ULE10 - Vergaderzaal 1.02'
WHEN 'ULE10 - Zaal Mestreech (alleen mdw Ulestraten)' THEN 'ULE10 - Vergaderzaal Mestreech'
WHEN 'ULE10 - Zaal Ulestraote (alleen mdw Ulestraten)' THEN 'ULE10 - Vergaderzaal Ulestraote'
--WHEN '' THEN 'ULE10 - Vergaderzaal Zitterd'
--WHEN '' THEN 'ULE10 - Vergaderzaal Z<>stere'
WHEN 'UTR14 - Vergaderzaal 0.2' THEN 'UTR14 - Vergaderzaal 0.2'
WHEN 'UTR14 - Vergaderzaal 0.3' THEN 'UTR14 - Vergaderzaal 0.3'
WHEN 'UTR14 - Vergaderzaal 0.4' THEN 'UTR14 - Vergaderzaal 0.4'
WHEN 'UTR14 - Vergaderzaal 0.5' THEN 'UTR14 - Vergaderzaal 0.5'
WHEN 'UTR14 - Vergaderzaal 0.6' THEN 'UTR14 - Vergaderzaal 0.6'
WHEN 'UTR14 - Vergaderzaal 0.7 (bibliotheek)' THEN 'UTR14 - Vergaderzaal 0.7'
WHEN 'UTR14 - Vergaderzaal 0.8 in restaurant (klein)' THEN 'UTR14 - Vergaderzaal 0.8'
WHEN 'UTR14 - Vergaderzaal 0.9 in restaurant (groot)' THEN 'UTR14 - Vergaderzaal 0.9'
WHEN 'UTR14 - Vergaderzaal Boardroom' THEN 'UTR14 - Vergaderzaal Boardroom'
WHEN 'Warroom' THEN 'UTR14 - Vergaderzaal WAR-room'
WHEN 'UTR15 - Vergaderzaal Create' THEN 'UTR15 - Vergaderzaal Create'
WHEN 'UTR15 - Vergaderzaal Home' THEN 'UTR15 - Vergaderzaal Home'
--WHEN '' THEN 'UTR15 - Vergaderzaal Inspire'
WHEN 'UTR15 - Vergaderzaal Learn' THEN 'UTR15 - Vergaderzaal Learn'
WHEN 'UTR15 - Vergaderzaal Studio' || chr(39) || 's' THEN 'UTR15 - Vergaderzaal Studio' || chr(39) || 's'
WHEN 'ZWA10 - Vergaderruimte 1 ' THEN 'ZWA10 - Vergaderzaal 1'
WHEN 'ZWA10 - Vergaderruimte 2 ' THEN 'ZWA10 - Vergaderzaal 2'
WHEN 'ZWA10 - F- Begane grond' THEN 'ZWA10 - Vergaderzaal F- Begane grond'
WHEN 'ZWA10 - Vergaderruimte PB1' THEN 'ZWA10 - Vergaderzaal PB1'
--WHEN '' THEN 'ZWA10 - Vergaderzaal PB2'
ELSE ''
END
INTO v_res_ruimte_nr
FROM DUAL;
v_errorhint := 'Opzoeken res_ruimte: ' || v_ReservableRoom || ' - ' || v_res_ruimte_nr;
SELECT res_ruimte_key
INTO v_res_ruimte_key
FROM res_ruimte
WHERE res_ruimte_verwijder IS NULL
AND res_ruimte_nr = v_res_ruimte_nr;
v_errorhint := 'Opzoeken opstelling: ' || v_res_ruimte_nr;
SELECT res_ruimte_opstel_key
INTO v_ruimte_opstel_key
FROM res_ruimte_opstelling
WHERE res_ruimte_opstel_verwijder IS NULL
AND res_ruimte_key = v_res_ruimte_key;
INSERT INTO bamg_imp_res ( ReservationID,
EventDate,
StartTime,
StopTime,
Description,
ReservableRoom,
RoomPurpose,
Responsible,
Contact,
NumberofInvitees,
CostCenter)
VALUES (v_ReservationID,
v_EventDate,
v_StartTime,
v_StopTime,
v_Description,
v_ruimte_opstel_key,
v_RoomPurpose,
v_Responsible,
v_Contact,
v_NumberofInvitees,
v_CostCenter);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END;
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END bamg_import_res;
/
CREATE OR REPLACE PROCEDURE bamg_update_res (p_import_key IN NUMBER)
AS
CURSOR c IS
SELECT *
FROM bamg_imp_res
WHERE TO_DATE (EventDate, 'dd-mm-yyyy') > SYSDATE
AND EventDate NOT LIKE 'EventDate';
v_ruimte_opstel_key NUMBER;
v_perslid_key_host NUMBER;
v_perslid_key_contact NUMBER;
v_res_ruimte_nr VARCHAR2(200);
v_res_ruimte_key NUMBER;
v_rsv_ruimte_key NUMBER;
v_reservering_key NUMBER;
v_opmerking VARCHAR2(200);
v_aanduiding VARCHAR2 (100);
v_errorhint VARCHAR2 (1000);
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
BEGIN
BEGIN
FOR rec IN c
LOOP
BEGIN
v_opmerking := NULL;
v_aanduiding := rec.ReservationID || '-' || rec.ReservableRoom || '-' || rec.EventDate;
v_errorhint := 'Opzoeken reserveerbare ruimte: ' || rec.ReservableRoom;
v_errormsg := 'Fout bij opzoeken host: ' || rec.Responsible;
SELECT MAX(prs_perslid_key)
INTO v_perslid_key_host
FROM prs_perslid
WHERE prs_perslid_verwijder IS NULL
AND prs_perslid_nr = rec.Responsible;
IF v_perslid_key_host IS NULL
THEN
v_perslid_key_host := 3; -- Facilitor
fac.imp_writelog (p_import_key,
'W',
v_errormsg,
'');
END IF;
v_errormsg := 'Fout bij opzoeken contact: ' || rec.Contact;
SELECT MAX(prs_perslid_key)
INTO v_perslid_key_contact
FROM prs_perslid
WHERE prs_perslid_verwijder IS NULL
AND prs_perslid_nr = rec.Contact;
IF v_perslid_key_contact IS NULL
THEN
v_perslid_key_contact := 3; -- Facilitor
fac.imp_writelog (p_import_key,
'W',
v_errormsg,
'');
END IF;
INSERT INTO res_reservering (res_reservering_verwijder)
VALUES (NULL)
RETURNING res_reservering_key
INTO v_reservering_key;
v_errormsg := 'Fout toevoegen rsv_ruimte.';
INSERT INTO res_rsv_ruimte (res_reservering_key,
res_rsv_ruimte_volgnr,
res_rsv_ruimte_opmerking,
res_rsv_ruimte_omschrijving,
prs_kostenplaats_key,
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)
VALUES (v_reservering_key,
1,
'MCS nummer: ' || rec.ReservationID || CHR(10) || rec.description,
'MCS nummer: ' || rec.ReservationID,
NULL,
v_perslid_key_contact,
v_perslid_key_host,
rec.ReservableRoom,
10, -- vergadering
TO_DATE (rec.EventDate || ' ' || rec.StartTime, 'DD-MM-YYYY HH24:MI'),
TO_DATE (rec.EventDate || ' ' || rec.StopTime, 'DD-MM-YYYY HH24:MI'),
rec.NumberofInvitees,
2,
2)
RETURNING res_rsv_ruimte_key
INTO v_rsv_ruimte_key;
FAC.trackaction ('RESNEW',
v_rsv_ruimte_key,
3,
SYSDATE,
'Aangemaakt door conversie uit MCS');
RES.set_ruimte_dirty (v_rsv_ruimte_key);
fac.imp_writelog (p_import_key,
'I',
'Reservering is aangemaakt: ' || v_rsv_ruimte_key,
v_aanduiding);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint);
END;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint);
END;
END;
/
-- Tijdelijke procedures om meldingen uit MCS in te lezen
CREATE OR REPLACE PROCEDURE bamg_import_mld (p_import_key IN NUMBER)
AS
c_fielddelimitor VARCHAR2 (1) := ';';
v_newline VARCHAR2 (4000); -- Input line
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_aanduiding VARCHAR2 (500);
-- De importvelden:
v_CallID VARCHAR2 (1000); -- mld_melding_externnr
v_Status VARCHAR2 (1000); -- mld_melding_status
v_Reference VARCHAR2 (1000); -- mld_melding_onderwerp
v_DateTimeReceived VARCHAR2 (1000); -- mld_melding_datum
v_Caller VARCHAR2 (1000); -- mld_melding.prs_perslid_key
v_CallerArea VARCHAR2 (1000); -- mld_melding_omschrijving
v_CallerLocation VARCHAR2 (1000); -- mld_melding_omschrijving
v_CallerBuilding VARCHAR2 (1000); -- mld_melding_omschrijving
v_AssignedTo VARCHAR2 (1000); -- mld_stdmelding_key
v_Description VARCHAR2 (4000); -- mld_melding_omschrijving
v_DueDate VARCHAR2 (1000); -- mld_melding_einddatum
v_dummy VARCHAR2(1000);
CURSOR c
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
-- Eerst de importtabel leegmaken
DELETE bamg_imp_mld;
FOR rec IN c
LOOP
BEGIN
v_errormsg := 'Fout FETCH te importeren rij';
v_newline := rec.fac_imp_file_line;
v_errormsg := 'Fout opvragen te importeren rij';
v_aanduiding := '';
-- Lees alle veldwaarden
fac.imp_getfield (v_newline, c_fielddelimitor, v_CallID);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Status);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Reference);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_DateTimeReceived);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Caller);
fac.imp_getfield (v_newline, c_fielddelimitor, v_CallerArea); -- 10
fac.imp_getfield (v_newline, c_fielddelimitor, v_CallerLocation);
fac.imp_getfield (v_newline, c_fielddelimitor, v_CallerBuilding);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_AssignedTo);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_Description);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy); -- 20
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_dummy);
fac.imp_getfield (v_newline, c_fielddelimitor, v_DueDate);
v_aanduiding := v_CallID;
INSERT INTO bamg_imp_mld ( CallID,
Status,
Reference,
DateTimeReceived,
Caller,
CallerArea,
CallerLocation,
CallerBuilding,
AssignedTo,
Description,
DueDate)
VALUES (v_CallID,
v_Status,
v_Reference,
v_DateTimeReceived,
v_Caller,
v_CallerArea,
v_CallerLocation,
v_CallerBuilding,
v_AssignedTo,
v_Description,
v_DueDate);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_aanduiding);
END;
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END bamg_import_mld;
/
CREATE OR REPLACE PROCEDURE bamg_update_mld (p_import_key IN NUMBER)
AS
CURSOR c IS SELECT * FROM bamg_imp_mld;
v_perslid_key NUMBER;
v_mld_key NUMBER;
v_aanduiding VARCHAR2 (100);
v_errorhint VARCHAR2 (1000);
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
BEGIN
DELETE mld_opdr;
DELETE mld_melding;
-- Verwijder de tracking
DELETE fac_tracking t
WHERE EXISTS
(SELECT 1
FROM fac_srtnotificatie sn
WHERE sn.fac_srtnotificatie_key = t.fac_srtnotificatie_key
AND ( fac_srtnotificatie_xmlnode = 'melding'
OR fac_srtnotificatie_xmlnode = 'opdracht'));
FOR rec IN c
LOOP
BEGIN
v_errormsg := 'Fout bij opzoeken caller: ' || rec.Caller;
SELECT max(prs_perslid_key)
INTO v_perslid_key
FROM prs_perslid
WHERE prs_perslid_verwijder IS NULL
AND prs_perslid_nr = rec.Caller;
IF v_perslid_key IS NULL
THEN
v_perslid_key := 3; -- Facilitor
fac.imp_writelog (p_import_key,
'W',
v_errormsg,
'');
END IF;
v_errormsg := 'Fout bij toevoegen melding: ' || rec.CallID || '-' || v_perslid_key;
INSERT INTO mld_melding (mld_melding_module,
mld_melding_externnr,
mld_meldbron_key,
mld_melding_datum,
mld_melding_onderwerp,
mld_melding_omschrijving,
mld_stdmelding_key,
mld_ins_discipline_key,
prs_perslid_key,
prs_perslid_key_voor,
mld_melding_einddatum,
mld_melding_status,
mld_melding_spoed)
VALUES (
'MLD',
rec.CallID,
6, -- system
fac.safe_to_date (rec.DateTimeReceived,
'DD-MM-YYYY HH24:MI'),
rec.Reference,
'Plaats: '
|| rec.CallerArea
|| CHR (10)
|| 'Locatie: '
|| rec.CallerLocation
|| CHR (10)
|| 'Gebouw: '
|| rec.CallerBuilding
|| CHR (10)
|| 'Omschrijving: '
|| rec.Description,
DECODE (rec.AssignedTo, 'BouwerijSD1', 142, 141),
DECODE (rec.AssignedTo, 'BouwerijSD1', 141, 142),
v_perslid_key,
v_perslid_key,
fac.safe_to_date (rec.DueDate, 'DD-MM-YYYY HH24:MI'),
DECODE (rec.Status, 'Nieuw', 2, 4),
3)
RETURNING mld_melding_key
INTO v_mld_key;
fac.trackaction ('MLDNEW',
v_mld_key,
3,
SYSDATE,
'Melding gemigreerd');
IF rec.Status <> 'Nieuw'
THEN
fac.trackaction ('MLDACP',
v_mld_key,
3,
SYSDATE,
'Melding is geaccepteerd');
END IF;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint || '-' || v_aanduiding);
END;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
'OTHERS (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
v_aanduiding || v_errormsg,
v_errorhint);
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