Files
Customer/AA/AAAR/aaar.sql
Jos Migo 4e2e3060b4 AAAR#80370 -- Deviatieproces bij Arcadis inrichten
svn path=/Customer/trunk/; revision=63134
2024-01-10 13:03:17 +00:00

729 lines
31 KiB
SQL
Raw Blame History

--
-- $Id$
--
-- Script containing customer specific configuration sql statements for aaar: Arcadis Aqumen Facility Management
DEFINE thisfile = 'aaar.sql'
DEFINE dbuser = '^AAAR'
DEFINE custid = 'AAAR'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusttxt NEW_VALUE fcltcusttxt NOPRINT;
WHENEVER SQLERROR CONTINUE;
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;
SELECT adm.checkscriptcust('&dbuser') AS fcltcusttxt FROM DUAL;
WHENEVER SQLERROR CONTINUE;
---------------------------------------
PROMPT &fcltcusttxt
---------------------------------------
SET DEFINE OFF
------ payload begin ------
-- script om dagelijks terugkerende scripts aan te roepen.
CREATE OR REPLACE PROCEDURE aaar_select_daily_task (p_applname IN VARCHAR2, p_applrun IN VARCHAR2)
AS
BEGIN
aaxx_daily_task (p_applname, p_applrun);
END;
/
-- budgettracker overrules
CREATE OR REPLACE VIEW aaar_v_export_budget_tracker (RESULT, result_order) AS SELECT RESULT, result_order FROM aaxx_v_export_budget_tracker;
-- export overrules
-- exact - gaat direct naar aaxx
-- Leverancier overrulles
CREATE OR REPLACE PROCEDURE aaar_import_opdrstat_strukton (
p_import_key IN NUMBER
)
AS
BEGIN
aaxx_import_opdrstat_strukton (p_import_key);
END aaar_import_opdrstat_strukton;
/
CREATE OR REPLACE PROCEDURE aaar_update_opdrstat_strukton (
p_import_key IN NUMBER
)
AS
BEGIN
aaxx_update_opdrstat_strukton (p_import_key);
END aaar_update_opdrstat_strukton;
/
-- bundel catering
CREATE OR REPLACE VIEW aaar_v_catering_kpn_bld
(
res_rsv_artikel_key,
res_rsv_artikel_prijs,
res_rsv_artikel_levering,
prs_kostenplaats_key,
alg_gebouw_key,
alg_locatie_key
)
AS
SELECT res_rsv_artikel_key,
res_rsv_artikel_prijs,
res_rsv_artikel_levering,
rrr.prs_kostenplaats_key,
alg_gebouw_key,
alg_locatie_key
FROM res_rsv_ruimte rrr,
prs_kostenplaats k,
res_rsv_artikel rra,
alg_v_ruimte_gegevens rg,
(SELECT COALESCE (rrr1.alg_ruimte_key, r2a1.alg_ruimte_key)
alg_ruimte_key,
rrr1.res_rsv_ruimte_key
FROM res_v_rsv_ruimte_2_alg_ruimte r2a1, res_rsv_ruimte rrr1
WHERE rrr1.res_rsv_ruimte_key = r2a1.res_rsv_ruimte_key(+)) r2a
WHERE rrr.prs_kostenplaats_key = k.prs_kostenplaats_key(+)
AND rrr.res_rsv_ruimte_key = r2a.res_rsv_ruimte_key
AND rrr.res_rsv_ruimte_key = rra.res_rsv_ruimte_key
AND r2a.alg_ruimte_key = rg.alg_ruimte_key
AND rrr.res_rsv_ruimte_verwijder IS NULL
AND rra.res_rsv_artikel_verwijder IS NULL
AND rra.res_status_bo_key = 5;
CREATE OR REPLACE VIEW aaar_v_export_bundel_catering
(
result,
result_order
)
AS
SELECT res_rsv_artikel_key || ';' || res_rsv_artikel_prijs result,
res_rsv_artikel_key result_order
FROM aaar_v_catering_kpn_bld;
CREATE OR REPLACE PROCEDURE aaar_export_bundel_catering (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
p_filename IN VARCHAR2)
AS
CURSOR c_kpn_bld (lev_date DATE)
IS
SELECT prs_kostenplaats_key, alg_gebouw_key, alg_locatie_key, sum(res_rsv_artikel_prijs) prijs
FROM aaar_v_catering_kpn_bld
WHERE res_rsv_artikel_levering < lev_date
GROUP BY prs_kostenplaats_key, alg_gebouw_key, alg_locatie_key;
c_catmld_uitvoertijd mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(2, 'D');
v_errormsg VARCHAR (200);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_laatste_export DATE;
v_mld_melding_key NUMBER;
v_mld_opdr_key NUMBER;
v_prs_bedrijf_key NUMBER;
v_mld_opdr_bedrijfopdr_volgnr NUMBER;
v_aanvrager NUMBER;
v_mld_workorder_key NUMBER;
v_mld_stdmelding_key NUMBER;
v_prs_kostenplaats_key NUMBER;
v_date DATE;
v_month VARCHAR2(30);
v_count NUMBER;
BEGIN
-- Facilitor
v_aanvrager := 4;
-- stdmelding key voor recharge
v_mld_stdmelding_key := 901;
-- key van opdrachttype workorder
v_mld_workorder_key := 1;
-- key van bedrijf App<70>l
v_prs_bedrijf_key := 193;
-- dummy kostenplaats bij de melding
v_prs_kostenplaats_key := 41; -- AAFM
v_errormsg := 'Bepaal einddatum';
-- wat is de eerste dag van de huidige maand
v_date := TO_DATE (TO_CHAR (SYSDATE, 'yyyymm') || '01', 'yyyymmdd');
v_month := REPLACE(TO_CHAR (v_date-1, 'month-yyyy', 'NLS_DATE_LANGUAGE = ''dutch'''), ' ', '');
SELECT COUNT (mld_opdr_key)
INTO v_count
FROM mld_opdr
WHERE mld_opdr_omschrijving = 'Cateringreserveringen maand: ' || v_month;
IF v_count > 0
THEN
fac.writelog (
p_applname,
'E',
'Catering export is al eerder uitgevoerd.',
'Controleer opdrachten met omschrijving: '
|| 'Cateringreserveringen maand: ' || v_month);
ELSE
FOR rec IN c_kpn_bld (v_date)
LOOP
BEGIN
IF rec.prs_kostenplaats_key IS NOT NULL
THEN
-- controleer of ik een melding heb op dit gebouw
BEGIN
v_errormsg := 'Opzoeken catering melding';
SELECT mld_melding_key
INTO v_mld_melding_key
FROM mld_melding
WHERE mld_alg_locatie_key = rec.alg_locatie_key
AND mld_alg_onroerendgoed_keys = rec.alg_gebouw_key
AND mld_stdmelding_key = v_mld_stdmelding_key
AND prs_perslid_key = v_aanvrager
AND v_date BETWEEN mld_melding_datum
AND mld_melding_einddatum + 1;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
-- geen melding voor deze locatie gevonden. Dan maken we er maar een aan.
v_errormsg := 'Aanmaken catering melding';
BEGIN
INSERT INTO mld_melding (mld_melding_omschrijving,
prs_perslid_key,
prs_kostenplaats_key,
mld_stdmelding_key,
mld_alg_locatie_key,
mld_alg_onroerendgoed_keys,
mld_melding_einddatum,
mld_melding_datum,
mld_melding_t_uitvoertijd,
mld_meldbron_key,
mld_melding_module,
mld_melding_spoed)
VALUES ('Catering factuur boekingen',
v_aanvrager,
v_prs_kostenplaats_key,
v_mld_stdmelding_key,
rec.alg_locatie_key,
rec.alg_gebouw_key,
TO_DATE (TO_CHAR (v_date, 'YYYY') || '1231',
'YYYYMMDD'),
TO_DATE (TO_CHAR (v_date, 'YYYY') || '0101',
'YYYYMMDD'),
c_catmld_uitvoertijd,
5,
'MLD',
3)
RETURNING mld_melding_key
INTO v_mld_melding_key;
BEGIN
mld.setmeldingstatus (v_mld_melding_key, 2, v_aanvrager);
END;
BEGIN
mld.setmeldingstatus (v_mld_melding_key, 4, v_aanvrager);
END;
UPDATE mld_melding
SET mld_melding_behandelaar_key = v_aanvrager
WHERE mld_melding_key = v_mld_melding_key;
END;
END;
-- nu gaan we de opdracht aanmaken
BEGIN
v_mld_opdr_bedrijfopdr_volgnr :=
mld.bepaalopdrmeldingvolgnr (v_mld_melding_key);
v_errormsg :=
'Maak opdracht aan om factuur van cateraar te matchen';
-- maak opdracht aan om cateringfactuur van leverancier te matchen
INSERT INTO mld_opdr (mld_melding_key,
prs_kostenplaats_key,
mld_statusopdr_key,
mld_typeopdr_key,
prs_perslid_key,
mld_uitvoerende_keys,
mld_opdr_datumbegin,
mld_opdr_einddatum,
mld_opdr_module,
mld_opdr_omschrijving,
mld_opdr_materiaal,
mld_opdr_kosten,
mld_opdr_bedrijfopdr_volgnr)
VALUES ( v_mld_melding_key,
rec.prs_kostenplaats_key,
5, -- uitgegeven
v_mld_workorder_key,
v_aanvrager,
v_prs_bedrijf_key,
v_date - 1,
fac.datumtijdplusuitvoertijd (SYSDATE, 1, 'DAGEN'),
'MLD',
'Cateringreserveringen maand: ' || v_month,
rec.prijs,
rec.prijs,
v_mld_opdr_bedrijfopdr_volgnr)
RETURNING mld_opdr_key INTO v_mld_opdr_key;
INSERT INTO aaxx_bundel_catering_ref (mld_opdr_key, res_rsv_artikel_key, res_rsv_artikel_prijs, res_rsv_artikel_verwerkt)
SELECT v_mld_opdr_key, res_rsv_artikel_key, res_rsv_artikel_prijs, v_date
FROM aaar_v_catering_kpn_bld
WHERE res_rsv_artikel_levering < v_date
AND prs_kostenplaats_key = rec.prs_kostenplaats_key
AND alg_gebouw_key = rec.alg_gebouw_key;
UPDATE res_rsv_artikel rra
SET res_rsv_artikel_verwerkt = SYSDATE,
res_status_bo_key = 6
WHERE EXISTS
(SELECT mld_opdr_key
FROM aaxx_bundel_catering_ref bc
WHERE bc.mld_opdr_key = v_mld_opdr_key
AND bc.res_rsv_artikel_key = rra.res_rsv_artikel_key);
v_errormsg := 'Update melding status';
mld.updatemeldingstatus (v_mld_melding_key, 0, v_aanvrager); -- Facilitor
-- meld de opdracht af
MLD.setopdrachtstatus (v_mld_opdr_key, 6, v_aanvrager);
-- en zet de opdracht op afgerond zodat deze direct in het factuurvoorstel komt.
MLD.setopdrachtstatus (v_mld_opdr_key, 9, v_aanvrager);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := v_errormsg || ' ORACLE (error ' || oracle_err_num || '/' || oracle_err_mes || ')';
fac.writelog (p_applname, 'E', v_errormsg, '');
END;
ELSE
fac.writelog (p_applname, 'E', 'Een bedrag van: ' || rec.prijs || ' euro kan niet aan een kostenplaats gekoppeld worden!', '');
END IF;
END LOOP;
END LOOP;
END IF;
COMMIT;
END;
/
-- exact verkoop
CREATE OR REPLACE VIEW aaar_v_export_exact_verkoop (RESULT, result_order) AS SELECT RESULT, result_order FROM aaxx_v_export_exact_verkoop;
CREATE OR REPLACE PROCEDURE aaar_select_exact_verkoop (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2
)
AS
BEGIN
aaxx_select_exact_verkoop(p_applname, p_applrun, to_char(sysdate, 'yyyy'), 'CORE');
END;
/
CREATE OR REPLACE PROCEDURE aaar_export_exact_verkoop (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
p_filename IN VARCHAR2
)
AS
BEGIN
aaxx_export_exact_verkoop(p_applname, p_applrun, p_filedir, p_filename, to_char(sysdate, 'yyyy'), 'CORE');
END;
/
-- exact verkoop over het vorige jaar
CREATE OR REPLACE VIEW aaar_v_export_exact_verkoop_vj (RESULT, result_order) AS SELECT RESULT, result_order FROM aaxx_v_export_exact_verkoop;
CREATE OR REPLACE PROCEDURE aaar_select_exact_verkoop_vj (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2
)
AS
BEGIN
aaxx_select_exact_verkoop(p_applname, p_applrun, to_char(to_number(to_char(sysdate, 'yyyy'))-1), 'CORE');
END;
/
CREATE OR REPLACE PROCEDURE aaar_export_exact_verkoop_vj (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
p_filename IN VARCHAR2
)
AS
BEGIN
aaxx_export_exact_verkoop(p_applname, p_applrun, p_filedir, p_filename, to_char(to_number(to_char(sysdate, 'yyyy'))-1), 'CORE');
END;
/
-- exact projecturen (XML)
CREATE OR REPLACE VIEW aaar_v_export_exact_uren (result, result_order)
AS SELECT result, result_order FROM aaxx_v_export_exact_uren_xml;
CREATE OR REPLACE PROCEDURE aaar_select_exact_uren (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2
)
AS
BEGIN
aaxx_select_exact_uren_xml(p_applname, p_applrun, '');
END;
/
-- verwerk exact projecturen (XML)
CREATE OR REPLACE PROCEDURE aaar_export_verwerk_exact_uren (
p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
p_filename IN VARCHAR2
)
AS
BEGIN
aaxx_export_verwerk_exact_uren(p_applname, p_applrun, p_filedir, p_filename, '');
END;
/
--------------------------------
-- import contractorders
--------------------------------
CREATE OR REPLACE PROCEDURE aaar_import_contract (
p_import_key IN NUMBER
) IS
BEGIN
aaxx_import_contract (p_import_key);
END aaar_import_contract;
/
CREATE OR REPLACE PROCEDURE aaar_update_contract (p_import_key IN NUMBER)
AS
BEGIN
aaxx_update_contract (p_import_key);
END aaar_update_contract;
/
CREATE OR REPLACE PROCEDURE aaar_import_ruimte (p_import_key IN NUMBER)
AS
BEGIN
aaxx_import_ruimte(p_import_key);
END;
/
CREATE OR REPLACE PROCEDURE aaar_update_ruimte (p_import_key IN NUMBER)
AS
BEGIN
aaxx_update_ruimte(p_import_key);
END;
/
-- kenmerk key 1000: afspraak is prive (dus niet op infobord)
CREATE OR REPLACE VIEW aaar_v_rap_bezoekers
AS
SELECT * FROM aaxx_v_rap_infobord;
-- Deviatie bronview tbv AAAR#80370
--- Op basis van EXPO#79524
CREATE OR REPLACE VIEW aaar_v_rap_deviatie_goedkeur
(
mld_melding_key,
fclt_3d_user_key, -- prs_perslid_key van de goedkeurder (via rechten MLDBOF / MLDBO3 op desbetreffende vakgroep)
goedkeurder,
-- fclt_3d_afdeling_key,
fclt_3d_discipline_key, -- vakgroep_key
fclt_3d_locatie_key,
alg_locatie_omschrijving,
gebouw_key,
alg_gebouw_naam,
melding_nr, -- actie-meldingsnr met prefix
melding_start_key, -- meldingsnummer aanvraag
vakgroep, -- vakgroep_naam
mld_stdmelding_omschrijving,
mld_stdmelding_key,
status,
datum, -- datum mld_goedkeuring
datum_m1, -- datum mld_start
aanvrager,
omschrijving,
opmerking,
opmerking_m1, -- opmerking mld_start
-- Alle kenmerkvelden op aanvraag
deviatiesoort,
titel,
impact_budget, -- keuzelijst Ja/Nee
value_convention, ---- Als geen impact dan deze tonen....
cust_dev_splits, -- keuzelijst voor splitsing in deviatie-workflow naar juiste vakgroep-goedkeuring. Bij AAAR zijn de opties: Arcadis of Assetrail
-- locatie_cluster , -- voor AAAR niet van toepassing..
gebouw, -- deze gebruiken voor verdere tekstmatige specificatie gebouw
ingangsdatum,
kostensoort_oud,
kostensoort_nieuw,
oud_budget,
nieuw_budget_jaarbasis,
nieuw_budget_jaarlopend,
deviatiebedrag_jaarlopend,
entiteit,
investering_totaal,
omschrijving_investering,
leverancier,
risico_code,
po_nummer,
co_nummer
)
AS
SELECT m.mld_melding_key,
pf.prs_perslid_key
fclt_3d_user_key,
pf.prs_perslid_naam
goedkeurder,
md.ins_discipline_key
fclt_3d_discipline_key,
l.alg_locatie_key
fclt_3d_locatie_key,
l.alg_locatie_omschrijving,
og.alg_gebouw_key,
og.alg_gebouw_naam,
sd.ins_srtdiscipline_prefix || to_char(m.mld_melding_key)
melding_nr,
m.mld_melding_start_key
melding_start_key,
md.ins_discipline_omschrijving
vakgroep,
s.mld_stdmelding_omschrijving,
s.mld_stdmelding_key,
DECODE (m.mld_melding_status, 2, 'nieuw', 'in behandeling')
status,
TO_CHAR(m.mld_melding_datum,'dd-mm-yyyy')
datum,
TO_CHAR(m1.mld_melding_datum,'dd-mm-yyyy')
datum_m1,
p.prs_perslid_naam || ' (' || p.prs_perslid_voornaam || ')'
aanvrager,
m.mld_melding_omschrijving,
m.mld_melding_opmerking,
m1.mld_melding_opmerking,
-- Kenmerkvelden bij aanvraag
(SELECT fu.fac_usrdata_omschr
FROM mld_kenmerkmelding mkm,
mld_kenmerk k,
mld_srtkenmerk sk,
fac_usrdata fu
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = fu.fac_usrdata_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'DEVIATIESOORT')
deviatiesoort,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'TITEL')
titel,
(SELECT fu.fac_usrdata_omschr
FROM mld_kenmerkmelding mkm,
mld_kenmerk k,
mld_srtkenmerk sk,
fac_usrdata fu
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = fu.fac_usrdata_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'IMPACT OP BUDGET')
impact_budget,
(SELECT fu.fac_usrdata_omschr
FROM mld_kenmerkmelding mkm,
mld_kenmerk k,
mld_srtkenmerk sk,
fac_usrdata fu
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = fu.fac_usrdata_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'VALUE CONVENTION')
value_convention,
(SELECT fu.fac_usrdata_omschr
FROM mld_kenmerkmelding mkm,
mld_kenmerk k,
mld_srtkenmerk sk,
fac_usrdata fu
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = fu.fac_usrdata_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'CUST_DEV_SPLITS')
cust_dev_splits,
-- locaie_cluster -- eigen tabel - nvt voor aaar
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'GEBOUW')
gebouw,
(SELECT TO_CHAR(TO_DATE(mkm.mld_kenmerkmelding_waarde,'dd-mm-yyyy'),'dd-mm-yyyy')
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'INGANGSDATUM')
ingangsdatum,
(SELECT k.prs_kostensoort_omschrijving
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk, aaxx_v_kostensoort k
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = k.prs_kostensoort_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'KOSTENSOORT OUD')
kostensoort_oud,
(SELECT k.prs_kostensoort_omschrijving
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk, aaxx_v_kostensoort k
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = k.prs_kostensoort_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'KOSTENSOORT NIEUW')
kostensoort_nieuw,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'OUD BUDGET')
oud_budget,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'NIEUW BUDGET (OP JAARBASIS)')
nieuw_budget_jaarbasis,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'NIEUW BUDGET (LOPEND JAAR)')
nieuw_budget_jaarlopend,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'DEVIATIEBEDRAG (LOPENDE JAAR)')
deviatiebedrag_lopendjaar,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'ENTITEIT')
entiteit,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'INVESTERING TOTAAL')
investering_totaal,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'OMSCHRIJVING INVESTERING')
omschrijving_investering,
(SELECT b.prs_bedrijf_naam
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk, prs_bedrijf b
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = b.prs_bedrijf_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'LEVERANCIER')
leverancier,
(SELECT fu.fac_usrdata_omschr
FROM mld_kenmerkmelding mkm,
mld_kenmerk k,
mld_srtkenmerk sk,
fac_usrdata fu
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND fac.safe_to_number(mkm.mld_kenmerkmelding_waarde) = fu.fac_usrdata_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'RISICOCODE')
risico_code,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'PO NUMMER OPDRACHTGEVER')
po_nummer,
(SELECT mkm.mld_kenmerkmelding_waarde
FROM mld_kenmerkmelding mkm, mld_kenmerk k, mld_srtkenmerk sk
WHERE mkm.mld_melding_key = m.mld_melding_key
AND mkm.mld_kenmerk_key = k.mld_kenmerk_key
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.mld_srtkenmerk_upper = 'CO NUMMER HEYDAY NAAR LEVERANCIER')
co_nummer
FROM mld_melding m,
mld_melding m1,
alg_v_allonrgoed_gegevens og,
alg_locatie l,
prs_perslid p, -- aanvrager
-- prs_v_afdeling_boom ab,
-- prs_afdeling a,
mld_stdmelding s,
mld_discipline md,
mld_disc_params mdp,
ins_srtdiscipline sd,
(
SELECT gr.ins_discipline_key, gg.prs_perslid_key, p.prs_perslid_naam
FROM fac_gebruikersgroep gg,
fac_groep g,
fac_groeprechten gr,
mld_discipline md,
ins_srtdiscipline sd,
fac_functie f,
prs_perslid p
WHERE gg.fac_groep_key = g.fac_groep_key
AND g.fac_groep_key = gr.fac_groep_key
AND gg.prs_perslid_key = p.prs_perslid_key
AND gr.fac_functie_key = f.fac_functie_key
AND gr.ins_discipline_key = md.ins_discipline_key
AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key
AND md.ins_srtdiscipline_key = 81
AND INSTR(lower(md.ins_discipline_omschrijving),'goedkeuring') > 0
AND gr.fac_functie_key = 29 -- MLDBOF
GROUP BY gr.ins_discipline_key, gg.prs_perslid_key, p.prs_perslid_naam
) pf -- p-fiatteur
WHERE s.mld_stdmelding_key = m.mld_stdmelding_key
AND m.mld_melding_start_key = m1.mld_melding_key
AND m1.mld_melding_status = 4 -- Lopende aanvraag
AND m.mld_melding_status in (2, 4) -- Moet in principe nieuw (2) zijn om nog te kunnen annuleren
-- Indien toch in behandeling (4) genomen dan wel opnemen maar in styling annuleren disablen
AND m.prs_perslid_key = p.prs_perslid_key
-- AND p.prs_afdeling_key = ab.prs_afdeling_key AND ab.prs_afdeling_key1 = a.prs_afdeling_key
AND sd.ins_srtdiscipline_key = md.ins_srtdiscipline_key
AND md.ins_discipline_key = s.mld_ins_discipline_key
AND md.ins_discipline_key = mdp.mld_ins_discipline_key
AND md.ins_srtdiscipline_key = 81
AND INSTR(lower(md.ins_discipline_omschrijving),'goedkeuring') > 0 -- daarbinnen alle vakgroepen tbv goedkeuring
AND md.ins_discipline_key = pf.ins_discipline_key
AND m.mld_alg_locatie_key = l.alg_locatie_key(+)
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+) ;
------ payload end ------
SET DEFINE OFF
BEGIN adm.systrackscriptId ('$Id$', 0); END;
/
COMMIT;
SET ECHO OFF
SPOOL OFF
SET DEFINE ON
PROMPT Logfile of this upgrade is: &fcltlogfile