--
-- $Id$
--
-- Script containing customer specific sql statements for the A-Point database
DEFINE thisfile = 'APGR.SQL'
DEFINE dbuser = '^APGR'
DEFINE custid = 'APGR'
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 ------
--
-- Personen import
--
CREATE OR REPLACE PROCEDURE apgr_import_prs (p_import_key IN NUMBER)
AS
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_errormsg VARCHAR2 (400);
v_errorhint VARCHAR2 (400);
v_newline FAC_IMP_FILE.FAC_IMP_FILE_LINE%TYPE;
CURSOR c1
IS
SELECT l.alg_locatie_code,
pw.alg_gebouw_code,
pw.alg_verdieping_volgnr,
pw.alg_ruimte_nr,
p.prs_perslid_oslogin
FROM prs_v_perslidwerkplek_gegevens pw,
prs_perslid p,
alg_locatie l,
fac_imp_perslid f
WHERE p.prs_perslid_key = pw.prs_perslid_key
AND pw.alg_locatie_key = l.alg_locatie_key
AND UPPER (p.prs_perslid_oslogin) =
UPPER (f.prs_perslid_oslogin)
AND p.prs_perslid_verwijder IS NULL;
BEGIN
BEGIN
SELECT fac_imp_file_line
INTO v_newline
FROM fac_imp_file
WHERE fac_import_key = p_import_key
AND fac_imp_file_index = 1;
IF v_newline LIKE
CHR (TO_NUMBER ('EF', 'xx'))
|| CHR (TO_NUMBER ('BB', 'xx'))
|| CHR (TO_NUMBER ('BF', 'xx'))
|| '%'
THEN
-- EF BB BF aangetroffen
fac.imp_writelog (p_import_key,
'W',
'Byte Order Mark aangetroffen',
'Bestand heeft onbehandeld UTF-8 formaat.'
);
v_newline := SUBSTR (v_newline, 4);
END IF;
-- Verwijder de dubbele quotes
v_newline := REPLACE (v_newline, '"');
UPDATE fac_imp_file
SET fac_imp_file_line = v_newline
WHERE fac_import_key = p_import_key
AND fac_imp_file_index = 1;
EXCEPTION WHEN OTHERS
THEN
fac.imp_writelog (p_import_key,
'E',
'Fout bij controle op Byte Order Mark',
''
);
END;
v_errorhint := 'Generieke update';
-- de sequence array staat beschreven in PRS_PAC.SRC bij de prs.import_perslid proc
prs.import_perslid (p_import_key,
'0;0;0;0;0;0;8;11;0;6;' ||
'0;0;0;0;0;10;5;4;0;0;' ||
'1;9;0;0;0;0;3;0;0;0;'||
'0;0;0;0;0;0;0;0;0;0;'||
'0;0;0;0;0;0',
'title;Type;Group;mail;telephoneNumber;givenName;company;department;sAMAccountName;ipPhone;sn%'
);
-- Handmatig ingelezen prs_perslid_nr behouden, deze staat niet in de AD export
UPDATE fac_imp_perslid
SET prs_perslid_nr =
(SELECT p.prs_perslid_nr
FROM prs_v_perslid_gegevens p
WHERE UPPER (fac_imp_perslid.prs_perslid_oslogin) =
UPPER (p.prs_perslid_oslogin));
-- De AD export kent geen plaatsgegevens, dus deze moeten behouden blijven uit de handmatige prs import
BEGIN
FOR rec in c1
LOOP
UPDATE fac_imp_perslid
SET
alg_locatie_code = rec.alg_locatie_code,
alg_gebouw_code = rec.alg_gebouw_code,
alg_verdieping_volgnr = rec.alg_verdieping_volgnr,
alg_ruimte_nr = rec.alg_ruimte_nr
WHERE UPPER (prs_perslid_oslogin) = UPPER (rec.prs_perslid_oslogin);
END LOOP;
END;
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 apgr_import_prs;
/
CREATE OR REPLACE PROCEDURE apgr_update_prs (
p_import_key IN NUMBER
) IS
-- Alle personen verwijderen die niet meer in import bestand voorkomen.
CURSOR c_del
IS
SELECT p.prs_perslid_key
FROM prs_v_aanwezigperslid p
WHERE ( p.prs_perslid_oslogin IS NULL
OR p.prs_perslid_oslogin NOT LIKE '\_%' ESCAPE '\') -- ' tbv. opmaak
AND p.prs_perslid_oslogin2 IS NULL
AND NOT EXISTS
(SELECT 1
FROM fac_imp_perslid i
WHERE UPPER (i.prs_perslid_oslogin) =
UPPER (p.prs_perslid_oslogin))
ORDER BY 1;
v_count NUMBER;
BEGIN
-- generic update
SELECT count(*)
INTO v_count
FROM fac_imp_perslid;
IF v_count < 150
THEN
fac.imp_writelog (p_import_key,
'E',
'Het aantal te importeren personen is te klein ('
|| TO_CHAR (v_count) || ')',
'Zie Specificatie'
);
RETURN;
END IF;
-- 'LOGIN' betekent dat op basis van OSLOGIN wordt gematched.
-- 'A' betekent altijd alle (andere/overige) werkplekken verwijderen
prs.update_perslid (p_import_key, 'LOGIN', NULL);
apgr_post_update_prs(p_import_key);
-- Verwijder personen die niet meer in de import voorkomen.
FOR rec IN c_del
LOOP
BEGIN
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
END;
END LOOP;
END apgr_update_prs;
/
CREATE OR REPLACE PROCEDURE apgr_post_update_prs (p_import_key IN NUMBER)
AS
-- Persoon aan authorisatiegroep toevoegen als deze daar nog niet in zat.
CURSOR c_auth
IS
SELECT DISTINCT p.prs_perslid_key, f.fac_groep_key
FROM prs_perslid p,
fac_groep f,
fac_imp_perslid i,
fac_gebruikersgroep g
WHERE UPPER (i.prs_perslid_oslogin) = UPPER (p.prs_perslid_oslogin)
AND UPPER (i.prs_kenmerk1) = f.fac_groep_upper
AND p.prs_perslid_verwijder IS NULL
AND NOT EXISTS
(SELECT 'x'
FROM fac_gebruikersgroep
WHERE prs_perslid_key = p.prs_perslid_key
AND fac_groep_key = f.fac_groep_key);
BEGIN
FOR rec IN c_auth
LOOP
BEGIN
INSERT INTO fac_gebruikersgroep (prs_perslid_key, fac_groep_key)
VALUES (rec.prs_perslid_key, rec.fac_groep_key);
END;
END LOOP;
END;
/
-- Import van statusupdates en kosten uit ESIS voor opdrachten van Explora EST
CREATE OR REPLACE PROCEDURE apgr_import_esis (p_import_key IN NUMBER)
AS
c_delim VARCHAR2 (1) := ';';
v_newline VARCHAR2 (1000); -- Input line
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_aanduiding VARCHAR2 (200);
header_is_valid NUMBER := 0;
v_count_tot NUMBER (10) := 0;
v_count_import NUMBER (10) := 0;
v_ongeldig NUMBER (1) := 0;
-- De importvelden
v_opdrachtnummer VARCHAR2 (255);
v_status VARCHAR2 (255);
v_updatedatum VARCHAR2 (255);
v_kosten VARCHAR2 (10);
CURSOR c1
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
-- Eerst de importtable leeg maken.
DELETE FROM apgr_imp_esis
WHERE imp_log_run <> p_import_key;
COMMIT;
FOR rec1 IN c1
LOOP
BEGIN
v_newline := rec1.fac_imp_file_line;
v_errormsg := 'Fout opvragen te importeren regel';
v_aanduiding := '';
v_ongeldig := 0;
-- Lees alle veldwaarden
fac.imp_getfield (v_newline, c_delim, v_opdrachtnummer);
fac.imp_getfield (v_newline, c_delim, v_status);
fac.imp_getfield (v_newline, c_delim, v_updatedatum);
fac.imp_getfield (v_newline, c_delim, v_kosten);
v_aanduiding :=
'['
|| v_opdrachtnummer
|| '|'
|| v_status
|| '|'
|| v_updatedatum
|| '] ';
-- Ik controleer of ik een geldige header heb, dat is: in de juiste kolommen
-- de juiste kolomkop. Ik controleer daarbij ALLE kolommen!
-- Ik negeer alles totdat ik een geldige header ben gepasseerd.
IF (header_is_valid = 0)
THEN
IF UPPER (TRIM (v_opdrachtnummer)) = 'OPDRACHTNUMMER'
AND UPPER (TRIM (v_status)) = 'STATUS'
AND UPPER (TRIM (v_updatedatum)) = 'UPDATEDATUM'
AND UPPER (TRIM (v_kosten)) = 'KOSTEN'
THEN
header_is_valid := 1;
END IF;
ELSE
v_count_tot := v_count_tot + 1;
-- Controleer alle veldwaarden
v_errormsg := 'Fout inlezen ticketnumber';
v_opdrachtnummer := TRIM (v_opdrachtnummer);
IF (v_opdrachtnummer IS NULL)
THEN
fac.imp_writelog (
p_import_key, 'W', v_aanduiding || v_errormsg,
'Opdrachtnummer ongeldig; regel wordt overgeslagen!');
v_ongeldig := 1;
END IF;
--
v_errormsg := 'Fout inlezen updatedatum';
v_updatedatum := TRIM (v_updatedatum);
IF (v_updatedatum IS NULL)
THEN
fac.imp_writelog (
p_import_key, 'W', v_aanduiding || v_errormsg,
'Updatedatum ongeldig; regel wordt overgeslagen!');
v_ongeldig := 1;
END IF;
-- Insert geformatteerde import record
IF (v_ongeldig = 0)
THEN
BEGIN
v_errormsg := 'Fout bij wegschrijven importregel';
INSERT INTO apgr_imp_esis (imp_log_run,
opdrachtnummer,
status,
updatedatum,
kosten)
VALUES (p_import_key,
v_opdrachtnummer,
v_status,
fac.safe_to_date (v_updatedatum, 'dd-mm-yyyy hh24:mi:ss'),
fac.safe_to_number (v_kosten));
v_count_import := v_count_import + 1;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
v_errormsg
|| ' ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key, 'E', v_aanduiding || v_errormsg, '');
END;
END IF;
END IF;
END;
END LOOP;
IF (header_is_valid = 0)
THEN
fac.imp_writelog (p_import_key, 'E',
'Ongeldig importbestand',
'Geen header of header niet volgens specificatie!');
ELSE
fac.imp_writelog (
p_import_key, 'S',
'Inleesproces/#ingelezen importregels: ' || TO_CHAR (v_count_tot),
'');
fac.imp_writelog (
p_import_key, 'S',
'Inleesproces/#ongeldige niet ingelezen importregels: '
|| TO_CHAR (v_count_tot - v_count_import),
'');
END IF;
DELETE FROM fac_imp_file
WHERE fac_import_key = p_import_key;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
v_errormsg
|| 'ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key, 'E', v_aanduiding || v_errormsg,
'Inleesproces updates uit ESIS afgebroken!');
END;
/
CREATE OR REPLACE PROCEDURE apgr_update_esis (p_import_key IN NUMBER)
AS
-- Cursor loopt over alle ingelezen updateregels uit ESIS
CURSOR c1
IS
SELECT opdrachtnummer, -- Opdrachtnummer met of zonder prefix
DECODE (fac.safe_to_number (SUBSTR (opdrachtnummer, 1, 1)),
NULL, TRIM (SUBSTR (opdrachtnummer, 2)),
opdrachtnummer)
opdr_id,
status,
updatedatum,
kosten
FROM apgr_imp_esis
WHERE imp_log_run = p_import_key
ORDER BY 4, 2;
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_aanduiding VARCHAR2 (200);
v_count_tot NUMBER (10);
v_mld_key NUMBER (10);
v_opdr_key NUMBER (10);
v_opdr_status NUMBER (10);
BEGIN
-- Loop door alle ingelezen updateregels uit ESIS en verwerk deze.
v_count_tot := 0;
FOR rec IN c1
LOOP
BEGIN
v_aanduiding := '[' || rec.opdrachtnummer || ']';
v_count_tot := v_count_tot + 1;
v_mld_key := -1;
v_opdr_key := -1;
v_errormsg := 'Fout bepalen opdracht.';
SELECT o.mld_melding_key, o.mld_opdr_key, so.mld_statusopdr_key
INTO v_mld_key, v_opdr_key, v_opdr_status
FROM mld_opdr o, mld_statusopdr so
WHERE o.mld_melding_key || '/' || o.mld_opdr_bedrijfopdr_volgnr = rec.opdr_id
AND UPPER (so.mld_statusopdr_omschrijving) = UPPER (rec.status);
-- Alleen iets doen als melding/opdracht succesvol is bepaald.
IF (v_mld_key > 0 AND v_opdr_key > 0)
THEN
-- Als er kosten zijn dan voeren we die op.
IF (rec.kosten IS NOT NULL)
THEN
v_errormsg := 'Fout bijwerken kosten.';
UPDATE mld_opdr
SET mld_opdr_kosten = rec.kosten
WHERE mld_opdr_key = v_opdr_key;
END IF;
-- Update opdrachtstatus
v_errormsg := 'Fout verwerken opdrachtstatus.';
MLD.setopdrachtstatus (v_opdr_key, v_opdr_status, NULL);
COMMIT;
END IF;
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.imp_writelog (p_import_key, 'E', v_aanduiding || v_errormsg,
'Fout verwerken opdrachtupdates uit ESIS.');
END;
END LOOP;
fac.imp_writelog (
p_import_key, 'S',
'Proces: '
|| TO_CHAR (v_count_tot)
|| ' opdrachtupdates uit ESIS verwerkt.',
'');
COMMIT;
END;
/
-- Vanaf hier rapportages
-- Deze voegt de FCLT_3D_GEBOUW_KEY toe aan de meldingen UDR
-- Zoals gerealiseerd in melding FSN#11071
CREATE OR REPLACE VIEW APGR_V_MELDING_GEBOUW
(
MELDING_KEY,
MELDINGNUMMER,
MELDING_REGIO,
MELDING_DISTRICT,
MELDING_LOCATIECODE,
MELDING_LOCATIE,
MELDING_LOCATIEPLAATS,
FCLT_3D_LOCATIE_KEY,
MELDING_GEBOUWCODE,
MELDING_GEBOUW,
FCLT_3D_GEBOUW_KEY,
MELDING_VERDIEPING,
MELDING_RUIMTENR,
MELDING_RUIMTE,
MELDING_ORDERNR,
KOSTENSOORTGROEP,
KOSTENSOORT,
KOSTENPLAATS,
KOSTENPLAATS_OMS,
MELDER,
MELDER_KEY,
AFDELING,
AFDELING_OMSCHRIJVING,
FCLT_3D_AFDELING_KEY,
BEDRIJF_KEY,
INVOERDER,
MELDBRON,
SOORTMELDING,
FCLT_3D_DISCIPLINE_KEY,
PRODUCTGROEP,
SUBPRODUCTGROEP,
BEHANDELGROEP,
BEHANDELAAR,
BEHANDELAAR_KEY,
SUBPRODUCTGROEPGROEP,
FCLT_3D_DISCIPLINE2_KEY,
ACTIEVE_BEHANDELGROEP,
ACTIEVE_BEHANDELAAR_KEY,
ACTIEVE_BEHANDELAAR,
MELDING_STATUS,
SLA_NVT,
SLA_WERKDGN,
SLA_WERKUREN,
SLA_RESPIJTDGN,
SLA_RESPIJTUREN,
SLA_ACCPTDGN,
SLA_ACCPTUREN,
PLAN_UITVOERTIJD_SLA,
MELDING_DATUM,
MELDING_EINDDATUM,
MELDING_ACCEPTDATUM,
MELDING_AFGEMELD,
MELDING_ACCEPTED,
DOORLOOPTIJD_WERKDGN,
DOORLOOPTIJD_WERKUREN,
ONDERWERP,
VOMSCHRIJVING,
MELDING_OPMERKING,
PRIORITEIT,
PRIORITEITTXT,
RATING,
RATING_OPMERKING,
BOLLETJE,
ACCEPT_SLA_DAGEN,
ACCEPT_SLA_UREN,
UITVOERING_SLA_DAGEN,
UITVOERING_SLA_UREN,
AFSPRAAK_SLA_DAGEN,
AFSPRAAK_SLA_UREN,
ACCEPT_SLA_OPTIJD,
UITVOERING_SLA_OPTIJD,
AFSPRAAK_SLA_OPTIJD,
SELFSERVICE
)
AS
SELECT mld_melding_key,
meldingnummer,
alg_regio_omschrijving,
alg_district_omschrijving,
locatie,
locatie_omschrijving,
locatie_plaats,
alg_locatie_key,
gebouw,
gebouw_naam,
gebouw_key,
verdieping,
ruimte,
ruimte_omschrijving,
melding_ordernr,
kostensoortgroep,
kostensoort,
kostenplaats,
kostenplaats_oms,
melder,
prs_perslid_key,
afdeling,
afdeling_omschrijving,
afdeling_key,
prs_bedrijf_key,
invoerder,
meldbron,
soortmelding,
stdm_ins_discipline_key,
productgroep,
subproductgroep,
behandelgroep,
behandelaar,
behandelaar_key,
subproductgroepgroep,
mld_ins_discipline_key,
actieve_behandelgroep,
actieve_behandelaar_key,
actieve_behandelaar,
status,
sla_nvt,
sla_werkdgn,
sla_werkuren,
sla_respijtdgn,
sla_respijturen,
sla_accptdgn,
sla_accpturen,
plan_uitvoertijd_sla,
datum,
einddatum,
acceptdatum,
afgemeld,
accepted,
DECODE (x.t_doorlooptijd.eenheid,
'D', x.t_doorlooptijd.tijdsduur,
NULL)
doorlooptijd_werkdgn,
DECODE (x.t_doorlooptijd.eenheid,
'U', x.t_doorlooptijd.tijdsduur,
NULL)
doorlooptijd_werkuren,
onderwerp,
omschrijving,
opmerking,
mld_melding_spoed prioriteit,
DECODE (mld_melding_spoed,
3, lcl.l ('lcl_mld_urg_normaal'),
1, lcl.l ('lcl_mld_urg_kritiek'),
2, lcl.l ('lcl_mld_urg_hoog'),
4, lcl.l ('lcl_mld_urg_laag')),
mld_melding_satisfaction,
mld_melding_satisfaction_op,
mld_melding_flag,
DECODE (x.t_doorlooptijd.eenheid,
'D', acceptdatum - COALESCE (accepted, afgemeld),
NULL)
accept_sla_dagen,
CAST (
DECODE (x.t_doorlooptijd.eenheid,
'U', (acceptdatum - COALESCE (accepted, afgemeld)) * 24,
NULL) AS NUMBER (7, 2))
accept_sla_uren,
DECODE (
x.t_doorlooptijd.eenheid,
'D',
mld.geteinddatum (mld_melding_key)
- COALESCE (afgemeld, SYSDATE)
+ COALESCE (sla_respijtdgn, 0),
NULL)
uitvoering_sla_dagen,
CAST (
DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (mld.geteinddatum (mld_melding_key)
- COALESCE (afgemeld, SYSDATE))
* 24)
+ COALESCE (sla_respijturen, 0),
NULL) AS NUMBER (7, 2))
uitvoering_sla_uren,
DECODE (
x.t_doorlooptijd.eenheid,
'D',
einddatum
- COALESCE (afgemeld, SYSDATE)
+ COALESCE (sla_respijtdgn, 0),
NULL)
afspraak_sla_dagen,
CAST (
DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24)
+ COALESCE (sla_respijtdgn, 0),
NULL) AS NUMBER (7, 2))
afspraak_sla_uren,
CASE
WHEN acceptdatum IS NULL
OR -- Dan is er geen acceptatietijd gedefinieerd en dus altijd op tijd.
DECODE (x.t_doorlooptijd.eenheid,
'D',
acceptdatum - COALESCE (accepted, afgemeld),
0)
+ DECODE (
x.t_doorlooptijd.eenheid,
'U',
(acceptdatum - COALESCE (accepted, afgemeld)) * 24,
0) >= 0
THEN
lcl.l ('lcl_yes')
ELSE
lcl.l ('lcl_no')
END
accept_sla_optijd,
CASE
WHEN DECODE (
x.t_doorlooptijd.eenheid,
'D',
mld.geteinddatum (mld_melding_key)
- COALESCE (afgemeld, SYSDATE)
+ COALESCE (sla_respijtdgn, 0),
0)
+ DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (mld.geteinddatum (mld_melding_key)
- COALESCE (afgemeld, SYSDATE))
* 24)
+ COALESCE (sla_respijturen, 0),
0) >= 0
THEN
lcl.l ('lcl_yes')
ELSE
lcl.l ('lcl_no')
END
uitvoering_sla_optijd,
CASE
WHEN DECODE (
x.t_doorlooptijd.eenheid,
'D',
einddatum
- COALESCE (afgemeld, SYSDATE)
+ COALESCE (sla_respijtdgn, 0),
0)
+ DECODE (
x.t_doorlooptijd.eenheid,
'U',
( (einddatum - COALESCE (afgemeld, SYSDATE)) * 24)
+ COALESCE (sla_respijtdgn, 0),
0) >= 0
THEN
lcl.l ('lcl_yes')
ELSE
lcl.l ('lcl_no')
END
afspraak_sla_optijd,
DECODE (invoerder, melder, lcl.l ('lcl_yes'), lcl.l ('lcl_no'))
selfservice
FROM (SELECT m.mld_melding_key,
m.prs_perslid_key,
sd.ins_srtdiscipline_prefix || m.mld_melding_key
meldingnummer,
alg_regio_omschrijving,
alg_district_omschrijving,
alg_locatie_code locatie,
alg_locatie_omschrijving locatie_omschrijving,
alg_locatie_plaats locatie_plaats,
l.alg_locatie_key,
og.alg_gebouw_code gebouw,
og.alg_gebouw_naam gebouw_naam,
og.alg_gebouw_key gebouw_key,
og.alg_verdieping_code verdieping,
og.alg_ruimte_nr ruimte,
og.alg_ruimte_omschrijving ruimte_omschrijving,
m.mld_melding_ordernr melding_ordernr,
(SELECT ksg.prs_kostensoortgrp_oms
FROM prs_kostensoortgrp ksg, prs_kostensoort ks
WHERE ksg.prs_kostensoortgrp_key =
ks.prs_kostensoortgrp_key
AND ks.prs_kostensoort_key =
(SELECT COALESCE (sm.prs_kostensoort_key,
disc.prs_kostensoort_key)
FROM mld_stdmelding sm,
mld_discipline disc
WHERE sm.mld_ins_discipline_key =
disc.ins_discipline_key
AND sm.mld_stdmelding_key =
s.mld_stdmelding_key))
kostensoortgroep,
(SELECT ks.prs_kostensoort_oms
FROM prs_kostensoort ks
WHERE ks.prs_kostensoort_key =
(SELECT COALESCE (sm.prs_kostensoort_key,
disc.prs_kostensoort_key)
FROM mld_stdmelding sm, mld_discipline disc
WHERE sm.mld_ins_discipline_key =
disc.ins_discipline_key
AND sm.mld_stdmelding_key =
s.mld_stdmelding_key))
kostensoort,
(SELECT k.prs_kostenplaats_nr
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key)
kostenplaats,
(SELECT k.prs_kostenplaats_omschrijving
FROM prs_kostenplaats k
WHERE k.prs_kostenplaats_key = m.prs_kostenplaats_key)
kostenplaats_oms,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = m.prs_perslid_key)
melder,
(SELECT prs_afdeling_naam
FROM prs_afdeling afd, prs_perslid pp
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
afdeling,
(SELECT prs_afdeling_omschrijving
FROM prs_afdeling afd, prs_perslid pp
WHERE afd.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
afdeling_omschrijving,
(SELECT prs_afdeling_key
FROM prs_perslid pp
WHERE pp.prs_perslid_key = m.prs_perslid_key)
afdeling_key,
(SELECT prs_bedrijf_key
FROM prs_v_afdeling pva, prs_perslid pp
WHERE pva.prs_afdeling_key = pp.prs_afdeling_key
AND pp.prs_perslid_key = m.prs_perslid_key)
prs_bedrijf_key,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key =
mld.getmeldinguser (m.mld_melding_key))
invoerder,
(SELECT mb.mld_meldbron_omschrijving
FROM mld_meldbron mb
WHERE mb.mld_meldbron_key = m.mld_meldbron_key)
meldbron,
m.mld_meldbron_key,
sd.ins_srtdiscipline_key ins_srtdiscipline_key,
sd.ins_srtdiscipline_omschrijving soortmelding,
md.ins_discipline_key stdm_ins_discipline_key,
md.ins_discipline_omschrijving productgroep,
s.mld_stdmelding_omschrijving subproductgroep,
smg.mld_stdmeldinggroep_naam subproductgroepgroep,
mbg.mld_behandelgroep_naam behandelgroep,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = m.mld_melding_behandelaar_key)
behandelaar,
m.mld_melding_behandelaar_key behandelaar_key,
m.mld_ins_discipline_key mld_ins_discipline_key,
(SELECT md2.ins_discipline_omschrijving
FROM mld_discipline md2
WHERE md2.ins_discipline_key = m.mld_ins_discipline_key)
actieve_behandelgroep,
m.mld_melding_behandelaar2_key actieve_behandelaar_key,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = m.mld_melding_behandelaar2_key)
actieve_behandelaar,
(SELECT mld_statuses_omschrijving
FROM mld_statuses sta
WHERE sta.mld_statuses_key = m.mld_melding_status)
status,
CASE
WHEN m.mld_melding_einddatum >
COALESCE (
fac.gettrackingdate ('MLDAFM',
m.mld_melding_key),
fac.gettrackingdate ('MLDREJ',
m.mld_melding_key),
SYSDATE)
THEN
1
ELSE
0
END
plan_uitvoertijd_sla,
CASE
WHEN m.mld_melding_indult = 1
OR s.mld_stdmelding_slabewaken = 0
THEN
1
ELSE
0
END
sla_nvt,
DECODE (m.mld_melding_t_uitvoertijd.eenheid,
'D', m.mld_melding_t_uitvoertijd.tijdsduur,
NULL)
sla_werkdgn,
DECODE (m.mld_melding_t_uitvoertijd.eenheid,
'U', m.mld_melding_t_uitvoertijd.tijdsduur,
NULL)
sla_werkuren,
DECODE (m.mld_melding_t_respijt.eenheid,
'D', m.mld_melding_t_respijt.tijdsduur,
NULL)
sla_respijtdgn,
DECODE (m.mld_melding_t_respijt.eenheid,
'U', m.mld_melding_t_respijt.tijdsduur,
NULL)
sla_respijturen,
DECODE (m.mld_melding_t_accepttijd.eenheid,
'D', m.mld_melding_t_accepttijd.tijdsduur,
NULL)
sla_accptdgn,
DECODE (m.mld_melding_t_accepttijd.eenheid,
'U', m.mld_melding_t_accepttijd.tijdsduur,
NULL)
sla_accpturen,
m.mld_melding_datum datum,
CASE
WHEN s.mld_stdmelding_planbaar = 2 THEN TO_DATE (NULL)
ELSE m.mld_melding_einddatum
END
einddatum,
mld.getacceptdatum (m.mld_melding_datum,
m.mld_stdmelding_key,
og.alg_onroerendgoed_keys)
acceptdatum,
COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 5),
mld.getmeldingstatusdate (m.mld_melding_key, 1))
afgemeld,
COALESCE (mld.getmeldingstatusdate (m.mld_melding_key, 4),
mld.getmeldingstatusdate (m.mld_melding_key, 1))
accepted,
mld.getactualuitvoer (m.mld_melding_key) t_doorlooptijd,
m.mld_melding_onderwerp onderwerp,
m.mld_melding_omschrijving omschrijving,
m.mld_melding_opmerking opmerking,
m.mld_melding_spoed,
m.mld_melding_satisfaction,
m.mld_melding_satisfaction_op,
m.mld_melding_flag
FROM mld_melding m,
mld_stdmelding s,
alg_locatie l,
alg_district d,
alg_regio r,
alg_v_allonrgoed_gegevens og,
mld_discipline md,
mld_disc_params mdp,
mld_behandelgroep mbg,
ins_srtdiscipline sd,
mld_stdmeldinggroep smg
WHERE s.mld_stdmelding_key = m.mld_stdmelding_key
AND m.mld_alg_locatie_key = l.alg_locatie_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 s.mld_stdmeldinggroep_key =
smg.mld_stdmeldinggroep_key(+)
AND mdp.mld_behandelgroep_key =
mbg.mld_behandelgroep_key(+)
AND l.alg_district_key = d.alg_district_key(+)
AND d.alg_regio_key = r.alg_regio_key(+)
AND m.mld_alg_onroerendgoed_keys =
og.alg_onroerendgoed_keys(+)
AND m.fac_activiteit_key IS NULL
AND m.mld_melding_datum >=
TO_DATE ('01-01-2010', 'DD-MM-YYYY')) x;
-- Ook voorzien van FCLT_3D_GEBOUW_KEY
CREATE OR REPLACE VIEW APGR_V_INS_GEBOUW
(
DEEL_KEY,
DISCIPLINE,
SOORT,
GROEP,
SOORTCODE,
OMSCHRIJVING,
PLAATSEIGENAAR,
PLAATSEIGENAARTYPE,
PLAATSAANDUIDING,
EIGENAAR,
OPMERKING,
REGIO,
DISTRICT,
LOCATIE_CODE,
LOCATIE_OMSCHRIJVING,
LOCATIE_PLAATS,
GEBOUWCODE,
GEBOUW,
TERREINSECTORCODE,
TERREINSECTOR,
VERDIEPINGCODE,
RUIMTENR,
WERKPLEKVOLGNR,
WERKPLEK,
UITLEENBAAR,
UITGELEEND,
RES_OPMERKING,
BEHEERDER,
VERVALDATUM,
ACTIEF,
AANTAL,
STATE,
STATEDATE,
FCLT_3D_DISCIPLINE_KEY,
FCLT_3D_AFDELING_KEY,
FCLT_3D_LOCATIE_KEY,
FCLT_3D_GEBOUW_KEY
)
AS
SELECT ii.ins_deel_key,
lcl.x ('ins_discipline_omschrijving',
id.ins_discipline_key,
id.ins_discipline_omschrijving),
lcl.x ('ins_srtdeel_omschrijving',
s.ins_srtdeel_key,
s.ins_srtdeel_omschrijving),
lcl.x ('ins_srtgroep_omschrijving',
sg.ins_srtgroep_key,
sg.ins_srtgroep_omschrijving),
s.ins_srtdeel_code,
ii.ins_deel_omschrijving,
COALESCE (ii.plaats, ii.eigenaar),
ii.ins_alg_ruimte_type,
ii.plaats,
ii.eigenaar,
ii.ins_deel_opmerking,
ii.regio,
ii.district,
ii.locatie_code,
ii.locatie_omschrijving,
ii.locatie_plaats,
ii.alg_gebouw_code,
ii.alg_gebouw_omschrijving,
ii.alg_terreinsector_code,
ii.alg_terreinsector_omschrijving,
ii.alg_verdieping_code,
ii.alg_ruimte_nr,
ii.prs_werkplek_volgnr,
ii.prs_werkplek_omschrijving,
DECODE (s.ins_srtdeel_uitleenbaar,
1, lcl.l ('lcl_yes'),
lcl.l ('lcl_no')),
DECODE (ii.ins_alg_ruimte_key_org,
NULL, lcl.l ('lcl_no'),
lcl.l ('lcl_yes')),
ii.res_deel_opmerking,
pf.prs_perslid_naam_full,
ii.ins_deel_vervaldatum,
DECODE (ii.ins_deel_actief, 1, lcl.l ('lcl_yes'), lcl.l ('lcl_no')),
ii.ins_deel_aantal,
ii.ins_deel_state,
ii.ins_deel_statedate,
sg.ins_discipline_key,
ii.ins_alg_ruimte_key,
ii.alg_locatie_key,
ii.alg_gebouw_key
FROM (SELECT i.ins_deel_key,
i.ins_deel_omschrijving,
i.ins_srtdeel_key,
i.prs_perslid_key_beh,
TO_CHAR (NULL) plaats,
i.ins_deel_opmerking,
i.ins_alg_ruimte_type,
NULL regio,
NULL district,
NULL locatie_code,
NULL locatie_omschrijving,
NULL locatie_plaats,
NULL alg_gebouw_code,
NULL alg_gebouw_omschrijving,
NULL alg_terreinsector_code,
NULL alg_terreinsector_omschrijving,
NULL alg_verdieping_code,
NULL alg_ruimte_nr,
NULL prs_werkplek_volgnr,
NULL prs_werkplek_omschrijving,
rd.res_deel_opmerking,
i.ins_deel_vervaldatum,
(SELECT d.prs_afdeling_omschrijving
FROM prs_v_afdeling d
WHERE prs_afdeling_key = i.ins_alg_ruimte_key)
eigenaar,
i.ins_discipline_key,
i.ins_alg_ruimte_key,
NULL alg_locatie_key,
NULL alg_gebouw_key,
i.ins_deel_actief,
i.ins_deel_aantal,
i.ins_alg_ruimte_key_org,
i.ins_deel_state,
i.ins_deel_statedate
FROM ins_deel i,
(SELECT res_deel_key,
res_ins_deel_key,
res_deel_opmerking res_deel_opmerking
FROM res_deel
WHERE res_deel_verwijder IS NULL) rd,
prs_v_afdeling_boom d,
prs_bedrijf b
WHERE i.ins_deel_verwijder IS NULL
AND i.ins_deel_key = rd.res_ins_deel_key(+)
AND i.ins_deel_module = 'INS'
AND i.ins_deel_parent_key IS NULL
AND i.ins_alg_ruimte_key = d.prs_afdeling_key
AND i.ins_alg_ruimte_type = 'A'
UNION
SELECT i.ins_deel_key,
i.ins_deel_omschrijving,
i.ins_srtdeel_key,
i.prs_perslid_key_beh,
TO_CHAR (NULL) plaats,
i.ins_deel_opmerking,
i.ins_alg_ruimte_type,
NULL regio,
NULL district,
NULL locatie_code,
NULL locatie_omschrijving,
NULL locatie_plaats,
NULL alg_gebouw_code,
NULL alg_gebouw_omschrijving,
NULL alg_terreinsector_code,
NULL alg_terreinsector_omschrijving,
NULL alg_verdieping_code,
NULL alg_ruimte_nr,
NULL prs_werkplek_volgnr,
NULL prs_werkplek_omschrijving,
rd.res_deel_opmerking,
i.ins_deel_vervaldatum,
pf.prs_perslid_naam_full eigenaar,
i.ins_discipline_key,
p.prs_afdeling_key,
NULL alg_locatie_key,
NULL alg_gebouw_key,
i.ins_deel_actief,
i.ins_deel_aantal,
i.ins_alg_ruimte_key_org,
i.ins_deel_state,
i.ins_deel_statedate
FROM ins_deel i,
(SELECT res_deel_key,
res_ins_deel_key,
res_deel_opmerking res_deel_opmerking
FROM res_deel
WHERE res_deel_verwijder IS NULL) rd,
prs_perslid p,
prs_v_perslid_fullnames_all pf,
prs_v_afdeling_boom d
WHERE i.ins_deel_verwijder IS NULL
AND i.ins_deel_key = rd.res_ins_deel_key(+)
AND i.ins_deel_module = 'INS'
AND i.ins_deel_parent_key IS NULL
AND i.ins_alg_ruimte_key = p.prs_perslid_key
AND p.prs_perslid_key = pf.prs_perslid_key
AND p.prs_afdeling_key = d.prs_afdeling_key
AND i.ins_alg_ruimte_type = 'P'
UNION
SELECT i.ins_deel_key,
i.ins_deel_omschrijving,
i.ins_srtdeel_key,
i.prs_perslid_key_beh,
TO_CHAR (NULL) plaats,
i.ins_deel_opmerking,
i.ins_alg_ruimte_type,
NULL regio,
NULL district,
NULL locatie_code,
NULL locatie_omschrijving,
NULL locatie_plaats,
NULL alg_gebouw_code,
NULL alg_gebouw_omschrijving,
NULL alg_terreinsector_code,
NULL alg_terreinsector_omschrijving,
NULL alg_verdieping_code,
NULL alg_ruimte_nr,
NULL prs_werkplek_volgnr,
NULL prs_werkplek_omschrijving,
rd.res_deel_opmerking,
i.ins_deel_vervaldatum,
c.prs_contactpersoon_naam eigenaar,
NULL discipline_key,
NULL,
NULL alg_locatie_key,
NULL alg_gebouw_key,
i.ins_deel_actief,
i.ins_deel_aantal,
i.ins_alg_ruimte_key_org,
i.ins_deel_state,
i.ins_deel_statedate
FROM ins_deel i,
(SELECT res_deel_key,
res_ins_deel_key,
res_deel_opmerking res_deel_opmerking
FROM res_deel
WHERE res_deel_verwijder IS NULL) rd,
prs_contactpersoon c
WHERE i.ins_deel_verwijder IS NULL
AND i.ins_deel_key = rd.res_ins_deel_key(+)
AND i.ins_deel_module = 'INS'
AND i.ins_deel_parent_key IS NULL
AND i.ins_alg_ruimte_key = c.prs_contactpersoon_key
AND i.ins_alg_ruimte_type = 'C'
UNION
SELECT i.ins_deel_key,
i.ins_deel_omschrijving,
i.ins_srtdeel_key,
i.prs_perslid_key_beh,
o.alg_plaatsaanduiding,
i.ins_deel_opmerking,
i.ins_alg_ruimte_type,
re.alg_regio_omschrijving,
di.alg_district_omschrijving,
l.alg_locatie_code locatie_code,
l.alg_locatie_omschrijving locatie_omschrijving,
l.alg_locatie_plaats locatie_plaats,
o.alg_gebouw_code,
o.alg_gebouw_omschrijving,
o.alg_terreinsector_code,
o.alg_terreinsector_omschrijving,
o.alg_verdieping_code,
o.alg_ruimte_nr,
o.prs_werkplek_volgnr,
o.prs_werkplek_omschrijving,
rd.res_deel_opmerking,
i.ins_deel_vervaldatum,
NULL eigenaar,
i.ins_discipline_key,
NULL,
l.alg_locatie_key,
o.alg_gebouw_key,
i.ins_deel_actief,
i.ins_deel_aantal,
i.ins_alg_ruimte_key_org,
i.ins_deel_state,
i.ins_deel_statedate
FROM ins_deel i,
ins_v_alg_overzicht o,
alg_locatie l,
alg_district di,
alg_regio re,
(SELECT res_deel_key,
res_ins_deel_key,
res_deel_opmerking res_deel_opmerking
FROM res_deel
WHERE res_deel_verwijder IS NULL) rd
WHERE i.ins_deel_verwijder IS NULL
AND i.ins_deel_module = 'INS'
AND i.ins_deel_key = rd.res_ins_deel_key(+)
AND i.ins_deel_parent_key IS NULL
AND o.alg_onroerendgoed_keys = i.ins_alg_ruimte_key
AND o.alg_onroerendgoed_type = i.ins_alg_ruimte_type
AND i.ins_alg_ruimte_type IN ('T', 'R', 'W')
AND o.alg_locatie_key = i.ins_alg_locatie_key
AND i.ins_alg_locatie_key = l.alg_locatie_key
AND l.alg_district_key = di.alg_district_key
AND di.alg_regio_key = re.alg_regio_key) ii,
ins_srtdeel s,
ins_srtgroep sg,
ins_discipline id,
prs_v_perslid_fullnames pf
WHERE sg.ins_srtgroep_key = s.ins_srtgroep_key
AND id.ins_discipline_key = sg.ins_discipline_key
AND ii.prs_perslid_key_beh = pf.prs_perslid_key(+)
AND s.ins_srtdeel_key = ii.ins_srtdeel_key;
-- Hier hetzelfde, ook FCLT_3D_GEBOUW_KEY
CREATE OR REPLACE VIEW APGR_V_INSDEELMELDING_GEBOUW
(
DEEL_KEY,
DISCIPLINE,
SOORT,
GROEP,
SOORTCODE,
OMSCHRIJVING,
PLAATSEIGENAAR,
PLAATSEIGENAARTYPE,
PLAATSAANDUIDING,
EIGENAAR,
OPMERKING,
REGIO,
DISTRICT,
LOCATIE_CODE,
LOCATIE_OMSCHRIJVING,
LOCATIE_PLAATS,
GEBOUWCODE,
GEBOUW,
TERREINSECTORCODE,
TERREINSECTOR,
VERDIEPINGCODE,
RUIMTENR,
WERKPLEKVOLGNR,
WERKPLEK,
UITLEENBAAR,
UITGELEEND,
RES_OPMERKING,
BEHEERDER,
VERVALDATUM,
ACTIEF,
AANTAL,
STATE,
STATEDATE,
FCLT_3D_DISCIPLINE_KEY,
FCLT_3D_AFDELING_KEY,
FCLT_3D_LOCATIE_KEY,
FCLT_3D_GEBOUW_KEY,
MELDING_KEY,
MELDINGNUMMER,
MELDING_DISTRICT,
MELDING_LOCATIECODE,
MELDING_LOCATIE,
MELDING_LOCATIEPLAATS,
MELDING_GEBOUWCODE,
MELDING_GEBOUW,
MELDING_VERDIEPING,
MELDING_RUIMTENR,
MELDING_RUIMTE,
MELDING_ORDERNR,
KOSTENSOORTGROEP,
KOSTENSOORT,
KOSTENPLAATS,
KOSTENPLAATS_OMS,
MELDER,
MELDER_KEY,
AFDELING,
AFDELING_OMSCHRIJVING,
BEDRIJF_KEY,
INVOERDER,
MELDBRON,
SOORTMELDING,
PRODUCTGROEP,
SUBPRODUCTGROEP,
BEHANDELGROEP,
BEHANDELAAR,
BEHANDELAAR_KEY,
SUBPRODUCTGROEPGROEP,
MELDING_STATUS,
SLA_NVT,
SLA_WERKDGN,
SLA_WERKUREN,
SLA_RESPIJTDGN,
SLA_RESPIJTUREN,
SLA_ACCPTDGN,
SLA_ACCPTUREN,
PLAN_UITVOERTIJD_SLA,
MELDING_DATUM,
MELDING_EINDDATUM,
MELDING_ACCEPTDATUM,
MELDING_AFGEMELD,
MELDING_ACCEPTED,
DOORLOOPTIJD_WERKDGN,
DOORLOOPTIJD_WERKUREN,
ONDERWERP,
VOMSCHRIJVING,
MELDING_OPMERKING,
PRIORITEIT,
PRIORITEITTXT,
RATING,
RATING_OPMERKING,
BOLLETJE,
ACCEPT_SLA_DAGEN,
ACCEPT_SLA_UREN,
UITVOERING_SLA_DAGEN,
UITVOERING_SLA_UREN,
AFSPRAAK_SLA_DAGEN,
AFSPRAAK_SLA_UREN,
ACCEPT_SLA_OPTIJD,
UITVOERING_SLA_OPTIJD,
AFSPRAAK_SLA_OPTIJD,
SELFSERVICE
)
AS
SELECT d.deel_key,
d.discipline,
d.soort,
d.groep,
d.soortcode,
d.omschrijving,
d.plaatseigenaar,
d.plaatseigenaartype,
d.plaatsaanduiding,
d.eigenaar,
d.opmerking,
d.regio,
d.district,
d.locatie_code,
d.locatie_omschrijving,
d.locatie_plaats,
d.gebouwcode,
d.gebouw,
d.terreinsectorcode,
d.terreinsector,
d.verdiepingcode,
d.ruimtenr,
d.werkplekvolgnr,
d.werkplek,
d.uitleenbaar,
d.uitgeleend,
d.res_opmerking,
d.beheerder,
d.vervaldatum,
d.actief,
d.aantal,
d.state,
d.statedate,
d.fclt_3d_discipline_key,
d.fclt_3d_afdeling_key,
d.fclt_3d_locatie_key,
d.fclt_3d_gebouw_key,
m.melding_key,
m.meldingnummer,
m.melding_district,
m.melding_locatiecode,
m.melding_locatie,
m.melding_locatieplaats,
m.melding_gebouwcode,
m.melding_gebouw,
m.melding_verdieping,
m.melding_ruimtenr,
m.melding_ruimte,
m.melding_ordernr,
m.kostensoortgroep,
m.kostensoort,
m.kostenplaats,
m.kostenplaats_oms,
m.melder,
m.melder_key,
m.afdeling,
m.afdeling_omschrijving,
m.bedrijf_key,
m.invoerder,
m.meldbron,
m.soortmelding,
m.productgroep,
m.subproductgroep,
m.behandelgroep,
m.behandelaar,
m.behandelaar_key,
m.subproductgroepgroep,
m.melding_status,
m.sla_nvt,
m.sla_werkdgn,
m.sla_werkuren,
m.sla_respijtdgn,
m.sla_respijturen,
m.sla_accptdgn,
m.sla_accpturen,
m.plan_uitvoertijd_sla,
m.melding_datum,
m.melding_einddatum,
m.melding_acceptdatum,
m.melding_afgemeld,
m.melding_accepted,
m.doorlooptijd_werkdgn,
m.doorlooptijd_werkuren,
m.onderwerp,
m.vomschrijving,
m.melding_opmerking,
m.prioriteit,
m.prioriteittxt,
m.rating,
m.rating_opmerking,
m.bolletje,
m.accept_sla_dagen,
m.accept_sla_uren,
m.uitvoering_sla_dagen,
m.uitvoering_sla_uren,
m.afspraak_sla_dagen,
m.afspraak_sla_uren,
m.accept_sla_optijd,
m.uitvoering_sla_optijd,
m.afspraak_sla_optijd,
m.selfservice
FROM apgr_v_ins_gebouw d, mld_v_udr_melding m, mld_melding_object mo
WHERE mo.mld_melding_key = m.melding_key AND mo.ins_deel_key = d.deel_key;
-- En de laatste FCLT_3D_GEBOUW_KEY
CREATE OR REPLACE VIEW APGR_V_INSKENMERK_GEBOUW
(
DEEL_KEY,
DISCIPLINE,
SOORT,
GROEP,
SOORTCODE,
OMSCHRIJVING,
PLAATSEIGENAAR,
PLAATSEIGENAARTYPE,
PLAATSAANDUIDING,
EIGENAAR,
OPMERKING,
REGIO,
DISTRICT,
LOCATIE_CODE,
LOCATIE_OMSCHRIJVING,
LOCATIE_PLAATS,
GEBOUWCODE,
GEBOUW,
TERREINSECTORCODE,
TERREINSECTOR,
VERDIEPINGCODE,
RUIMTENR,
WERKPLEKVOLGNR,
WERKPLEK,
UITLEENBAAR,
UITGELEEND,
RES_OPMERKING,
BEHEERDER,
VERVALDATUM,
ACTIEF,
AANTAL,
STATE,
STATEDATE,
FCLT_3D_DISCIPLINE_KEY,
FCLT_3D_AFDELING_KEY,
FCLT_3D_LOCATIE_KEY,
FCLT_3D_GEBOUW_KEY,
KENMERK,
WAARDE_C,
WAARDE_N,
WAARDE_D
)
AS
SELECT m."DEEL_KEY",
m."DISCIPLINE",
m."SOORT",
m."GROEP",
m."SOORTCODE",
m."OMSCHRIJVING",
m."PLAATSEIGENAAR",
m."PLAATSEIGENAARTYPE",
m."PLAATSAANDUIDING",
m."EIGENAAR",
m."OPMERKING",
m."REGIO",
m."DISTRICT",
m."LOCATIE_CODE",
m."LOCATIE_OMSCHRIJVING",
m."LOCATIE_PLAATS",
m."GEBOUWCODE",
m."GEBOUW",
m."TERREINSECTORCODE",
m."TERREINSECTOR",
m."VERDIEPINGCODE",
m."RUIMTENR",
m."WERKPLEKVOLGNR",
m."WERKPLEK",
m."UITLEENBAAR",
m."UITGELEEND",
m."RES_OPMERKING",
m."BEHEERDER",
m."VERVALDATUM",
m."ACTIEF",
m."AANTAL",
m."STATE",
m."STATEDATE",
m."FCLT_3D_DISCIPLINE_KEY",
m."FCLT_3D_AFDELING_KEY",
m."FCLT_3D_LOCATIE_KEY",
m."FCLT_3D_GEBOUW_KEY",
lcl.x ('skm.ins_srtkenmerk_omschrijving',
skm.ins_srtkenmerk_key,
ins_srtkenmerk_omschrijving)
kenmerk,
CASE
WHEN skm.ins_srtkenmerk_kenmerktype = 'R'
OR skm.ins_srtkenmerk_kenmerktype = 'S'
THEN
flx.getdomeinwaarde (skm.fac_kenmerkdomein_key,
km.ins_kenmerkdeel_waarde)
WHEN skm.ins_srtkenmerk_kenmerktype = 'C'
OR skm.ins_srtkenmerk_kenmerktype = 'F'
THEN
km.ins_kenmerkdeel_waarde
ELSE
NULL
END
waarde_c,
CASE
WHEN skm.ins_srtkenmerk_kenmerktype = 'N'
OR skm.ins_srtkenmerk_kenmerktype = 'B'
THEN
TO_NUMBER (km.ins_kenmerkdeel_waarde)
ELSE
TO_NUMBER (NULL)
END
waarde_n,
CASE
WHEN skm.ins_srtkenmerk_kenmerktype = 'D'
THEN
TO_DATE (km.ins_kenmerkdeel_waarde, 'DD-MM-YYYY')
ELSE
TO_DATE (NULL)
END
waarde_d
FROM apgr_v_ins_gebouw M,
ins_kenmerkdeel km,
ins_kenmerk K,
ins_srtkenmerk skm
WHERE km.ins_deel_key = m.deel_key
AND km.ins_kenmerkdeel_verwijder IS NULL
AND k.ins_kenmerk_verwijder IS NULL
AND skm.ins_srtkenmerk_verwijder IS NULL
AND km.ins_kenmerk_key = k.ins_kenmerk_key(+)
AND k.ins_srtkenmerk_key = skm.ins_srtkenmerk_key(+);
-- Melding doorlooptijden statistiek
CREATE OR REPLACE VIEW apgr_v_rap_mldstats
AS
SELECT MAX (actiedatum) laatste_actie,
TRUNC (SYSDATE) - TRUNC (MAX (actiedatum)) dagen_stil,
p.prs_perslid_naam_full melder,
m.mld_melding_key,
sr.ins_srtdiscipline_prefix || m.mld_melding_key meldingnr,
m.mld_melding_datum geregistreerd,
st.mld_statuses_omschrijving,
sr.ins_srtdiscipline_omschrijving vakgroeptype,
md.ins_discipline_omschrijving vakgroep,
mld_stdmelding_omschrijving melding,
mld_melding_onderwerp,
pb.prs_perslid_naam_full behandelaar,
bhg.ins_discipline_omschrijving behandelteam,
abh.prs_perslid_naam_full actieve_behandelaar,
m.mld_melding_behandelaar2_key actieve_behandelaar_key,
a.prs_afdeling_omschrijving afdeling,
DECODE (BITAND (m.mld_melding_actiecode, 1),
1, 'Behandelaar',
'Melder')
actie_bij,
CASE
WHEN mld_melding_flag > 0
THEN
lcl.l ('lcl_mld_flag' || mld_melding_flag)
END
actiestatus
FROM mld_melding m,
mld_statuses st,
mld_stdmelding ms,
mld_discipline md,
ins_srtdiscipline sr,
prs_v_perslid_fullnames pb,
prs_v_perslid_fullnames p,
mld_discipline bhg,
prs_v_perslid_fullnames abh,
prs_afdeling a,
(SELECT n.mld_melding_key, n.mld_melding_note_aanmaak actiedatum
FROM mld_melding_note n
UNION ALL
SELECT fac_tracking_refkey, tr.fac_tracking_datum
FROM fac_tracking tr, fac_srtnotificatie str
WHERE tr.fac_srtnotificatie_key = str.fac_srtnotificatie_key
AND str.fac_srtnotificatie_xmlnode IN ('melding')) d
WHERE m.mld_melding_key = d.mld_melding_key
AND m.mld_melding_status = st.mld_statuses_key
AND ms.mld_stdmelding_key = m.mld_stdmelding_key
AND md.ins_discipline_key = ms.mld_ins_discipline_key
AND md.ins_srtdiscipline_key = sr.ins_srtdiscipline_key
AND sr.ins_srtdiscipline_module = 'MLD'
AND mld_melding_behandelaar_key = pb.prs_perslid_key(+)
AND m.prs_perslid_key = p.prs_perslid_key
AND mld_melding_status NOT IN (1, 5, 6)
AND fac_activiteit_key IS NULL
AND m.mld_ins_discipline_key = bhg.ins_discipline_key(+)
AND m.mld_melding_behandelaar2_key = abh.prs_perslid_key(+)
AND m.prs_afdeling_key = a.prs_afdeling_key(+)
GROUP BY m.mld_melding_key,
m.prs_kostenplaats_key,
p.prs_perslid_naam_full,
m.prs_perslid_key,
mld_melding_datum,
st.mld_statuses_omschrijving,
md.ins_discipline_omschrijving,
bhg.ins_discipline_omschrijving,
mld_stdmelding_omschrijving,
sr.ins_srtdiscipline_omschrijving,
sr.ins_srtdiscipline_prefix,
mld_melding_onderwerp,
pb.prs_perslid_naam_full,
abh.prs_perslid_naam_full,
m.mld_melding_behandelaar2_key,
mld_melding_flag,
m.mld_melding_actiecode,
a.prs_afdeling_naam,
a.prs_afdeling_omschrijving;
-- En dan nu de export naar Simac Palette (opdr en bes).
CREATE OR REPLACE VIEW apgr_v_rap_opdrsimac
(
opdrachtnummer,
opdrachtdatum,
melder,
locatie,
kostenplaats,
leveranciernr,
rekeningnummer,
opdr_onderwerp,
opdr_omschr,
linenr, -- voor opdr atijd 1
item, -- vakgroep van de melding?
omschrijving, -- opdrachtafhandeling
kosten -- prijs
)
AS
SELECT DISTINCT
i.ins_srtdiscipline_prefix
|| TO_CHAR (m.mld_melding_key)
|| '/'
|| o.mld_opdr_bedrijfopdr_volgnr,
TO_CHAR (o.mld_opdr_datumbegin, 'YYYY-MM-DD'),
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = m.prs_perslid_key),
al.alg_locatie_omschrijving,
pk.prs_kostenplaats_nr,
b.prs_leverancier_nr,
b.prs_bedrijf_opmerking,
m.mld_melding_onderwerp,
m.mld_melding_omschrijving,
'1',
i.ins_srtdiscipline_omschrijving
|| ' '
|| std.mld_stdmelding_omschrijving,
o.mld_opdr_opmerking,
COALESCE (o.mld_opdr_kosten, 500)
FROM mld_opdr o,
mld_melding m,
mld_stdmelding std,
prs_bedrijf b,
ins_srtdiscipline i,
mld_discipline md,
mld_kenmerkopdr mk,
prs_kostenplaats pk,
alg_locatie al,
( SELECT fac_tracking_refkey key, MAX (fac_tracking_datum) datum
FROM fac_tracking
WHERE fac_srtnotificatie_key = 71
GROUP BY fac_tracking_refkey) track
WHERE o.mld_melding_key = m.mld_melding_key(+)
AND m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = md.ins_discipline_key
AND md.ins_srtdiscipline_key = i.ins_srtdiscipline_key
AND o.mld_opdr_key = mk.mld_opdr_key
AND o.prs_kostenplaats_key = pk.prs_kostenplaats_key
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
AND m.mld_alg_locatie_key = al.alg_locatie_key
AND mk.mld_kenmerk_key = 362
AND mk.mld_kenmerkopdr_waarde = '401'
AND o.mld_statusopdr_key = 6
AND o.mld_opdr_key = track.key
AND TRUNC (track.datum) = TRUNC (SYSDATE - 1);
CREATE OR REPLACE VIEW apgr_v_rap_bessimac
(
bestelopdrnummer,
besteldatum,
kostenplaats,
status,
besteller,
adres,
leveranciernr,
rekeningnummer,
bestelregel,
artikel,
eenheid,
artikelnummer,
aantal,
artikelprijs,
besteld_voor,
bestelopdr_key
)
AS
SELECT
bo.bes_bestelopdr_id bestelopdrnummer,
TO_CHAR (bo.bes_bestelopdr_datum, 'YYYY-MM-DD') besteldatum,
pk.prs_kostenplaats_nr,
bs.bes_bestelopdrstatuses_omschr
status,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key)
besteller,
ma.mld_adres_naam,
pb.prs_leverancier_nr,
pb.prs_bedrijf_opmerking,
boi.bes_bestelopdr_item_posnr bestelregel,
boi.bes_bestelopdr_item_omschrijv artikel,
bs.bes_srtdeel_eenheid eenheid,
bs.bes_srtdeel_nr artikelnummer,
boi.bes_bestelopdr_item_aantal aantal,
boi.bes_bestelopdr_item_prijs artikelprijs,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key_voor)
besteld_voor,
bo.bes_bestelopdr_key
FROM bes_bestelling b,
bes_bestelling_item bi,
bes_bestelopdr_item boi,
bes_bestelopdrstatuses bs,
bes_bestelopdr bo,
bes_srtdeel bs,
prs_bedrijf pb,
prs_kostenplaats pk,
mld_adres ma,
( SELECT fac_tracking_refkey key, MAX (fac_tracking_datum) datum
FROM fac_tracking
WHERE fac_srtnotificatie_key = 20
GROUP BY fac_tracking_refkey) track
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
AND bo.bes_bestelopdr_key IS NOT NULL
AND bo.bes_bestelopdr_status = bs.bes_bestelopdrstatuses_key
AND bo.prs_bedrijf_key = pb.prs_bedrijf_key
AND bi.bes_srtdeel_key = bs.bes_srtdeel_key
AND b.prs_kostenplaats_key = pk.prs_kostenplaats_key
AND b.mld_adres_key_lev = ma.mld_adres_key
AND bo.bes_bestelopdr_status = 6
AND bo.bes_bestelopdr_key = track.key
AND TRUNC (track.datum) = TRUNC (SYSDATE - 1)
ORDER BY bo.bes_bestelopdr_id, boi.bes_bestelopdr_item_posnr;
CREATE OR REPLACE VIEW apgr_v_export_opdr_xml
(
result,
result_order
)
AS
SELECT '', 0 FROM DUAL
UNION ALL
SELECT '',
1
FROM DUAL
UNION ALL
SELECT ''
|| '20008200'
|| '' || ao.opdrachtnummer || ''
|| ''
|| '' || ao.opdrachtdatum || ''
|| '' || ao.leveranciernr || ''
|| ''
|| 'EUR'
|| ''
|| ''
|| ''
|| ''
|| ''
|| '' || ao.opdrachtnummer || ': ' || ao.opdr_onderwerp || ''
|| '' || ao.opdr_omschr || ''
|| ''
|| ''
|| ''
|| '' || ao.melder || ''
|| '' || ao.locatie || ''
|| ''
|| '1'
|| '1'
|| ''
|| '' -- Orderregel
|| '20008200' -- Nummer van A-Point Groep
|| '' || ao.opdrachtnummer || ''
|| '' || ao.linenr || ''
|| '0'
|| ''
|| ''
|| ''
|| '- ' || ao.item || '
'
|| '' || ao.omschrijving || ''
|| ''
|| '1'
|| ''
|| '' || ao.kosten || ''
|| '' || ao.kosten || ''
|| '0'
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '' -- Financiele gegevens van orderregel
|| '20008200'
|| ''
|| ''
|| '01' -- Per orderregel, max 128
|| '' || ao.rekeningnummer || '' -- reknr. staat in opmerking veld bij leverancier
|| '' || ao.kostenplaats || ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '100' -- ALTIJD 100 procent
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '',
2
FROM apgr_v_rap_opdrsimac ao
UNION ALL
SELECT '', 3 FROM DUAL;
CREATE OR REPLACE VIEW apgr_v_export_bes_xml
(
result,
result_order
)
AS
SELECT '', 0 FROM DUAL
UNION ALL
SELECT '',
1
FROM DUAL
UNION ALL
SELECT ''
|| '20008200'
|| '' || ab.bestelopdrnummer || ''
|| ''
|| '' || ab.besteldatum || ''
|| '' || ab.leveranciernr || ''
|| ''
|| 'EUR'
|| ''
|| ''
|| ''
|| ''
|| ''
|| 'Bestelling: ' || ab.bestelopdrnummer || ''
|| ''
|| ''
|| ''
|| ''
|| '' || ab.besteller || ''
|| '' || ab.adres || ''
|| ''
|| '1'
|| '1'
|| ''
|| '' -- Orderregel
|| '20008200' -- Nummer van A-Point Groep
|| '' || ab.bestelopdrnummer || ''
|| '' || ab.bestelregel || ''
|| '0'
|| ''
|| ''
|| ''
|| '- ' || ab.artikel || '
'
|| ''
|| ''
|| '' || ab.aantal || ''
|| '' || ab.eenheid || ''
|| '' || ab.artikelprijs || ''
|| '' || ab.aantal * ab.artikelprijs ||''
|| '0'
|| ''
|| ''
|| ''
|| '' || ab.artikelnummer || ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '' -- Financiele gegevens van orderregel
|| '20008200'
|| ''
|| ''
|| '' || ab.bestelregel || '' -- Per orderregel, max 128
|| '' || ab.rekeningnummer || '' -- reknr. moet nog als SQL worden opgenomen (kenmerk van bestelling / opdracht?)
|| '' || ab.kostenplaats || ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '100' -- ALTIJD 100 procent
|| ''
|| ''
|| ''
|| ''
|| ''
|| ''
|| '',
2
FROM apgr_v_rap_bessimac ab
UNION ALL
SELECT '', 3 FROM DUAL;
-- Views t.b.v. koppeling met EST ESIS
CREATE OR REPLACE VIEW apgr_v_rap_opdrest
(
opdr_key,
vestiging_id,
machine_code,
onderwerp,
omschrijving,
melder,
melder_mobiel,
opdrachtnummer,
opdrachtdatum
)
AS
SELECT o.mld_opdr_key,
(SELECT ak.alg_onrgoedkenmerk_waarde
FROM alg_onrgoedkenmerk ak
WHERE ak.alg_kenmerk_key = 1000
AND ak.alg_onrgoed_key = og.alg_gebouw_key)
vestiging_id,
(SELECT ins_kenmerkdeel_waarde
FROM ins_kenmerkdeel
WHERE ins_deel_key = ob.ins_deel_key AND ins_kenmerk_key = 32)
|| ' / ' ||
(SELECT ins_kenmerkdeel_waarde
FROM ins_kenmerkdeel
WHERE ins_deel_key = ob.ins_deel_key AND ins_kenmerk_key = 31)
machine_code,
o.mld_opdr_omschrijving,
o.mld_opdr_opmerking,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = m.prs_perslid_key)
melder,
(SELECT p.prs_perslid_mobiel
FROM prs_perslid p
WHERE p.prs_perslid_key = m.prs_perslid_key)
mobiel,
i.ins_srtdiscipline_prefix
|| TO_CHAR (m.mld_melding_key)
|| '/'
|| o.mld_opdr_bedrijfopdr_volgnr
opdrnr,
o.mld_opdr_datumbegin
FROM mld_opdr o,
mld_melding m,
mld_stdmelding std,
prs_bedrijf b,
ins_srtdiscipline i,
mld_discipline md,
alg_locatie al,
ins_deel ob,
mld_melding_object mmo,
alg_v_allonrgoed_gegevens og,
( SELECT MAX (fac_tracking_refkey) key,
MAX (fac_tracking_datum) datum
FROM fac_tracking
WHERE fac_srtnotificatie_key = 70 -- Toegekend (nog voor ORDVER)
GROUP BY fac_tracking_refkey) track
WHERE o.mld_melding_key = m.mld_melding_key(+)
AND m.mld_melding_key = mmo.mld_melding_key(+)
AND ob.ins_deel_key = mmo.ins_deel_key
AND m.mld_stdmelding_key = std.mld_stdmelding_key
AND std.mld_ins_discipline_key = md.ins_discipline_key
AND md.ins_srtdiscipline_key = i.ins_srtdiscipline_key
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key
AND m.mld_alg_locatie_key = al.alg_locatie_key
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys
AND b.prs_bedrijf_key = 525 -- Explora EST
AND o.mld_opdr_key = track.key
AND track.datum > SYSDATE - INTERVAL '15' MINUTE;
CREATE OR REPLACE VIEW apgr_v_export_est_xml
(
result,
result_order,
ticket
)
AS
SELECT '',
0,
'910051_'
|| TO_CHAR (SYSDATE, 'YY-MM-DD HH24MI')
|| ' '
|| o.opdr_key
FROM apgr_v_rap_opdrest o
UNION ALL
SELECT ''
|| 'd5640150-3f58-11e9-af79-080027f683cc'
|| '3'
|| '0'
|| '0'
|| '0'
|| ''
|| o.vestiging_id
|| ''
|| ''
|| o.machine_code
|| ''
|| ''
|| o.onderwerp
|| '. '
|| o.omschrijving
|| ''
|| ''
|| o.melder
|| ''
|| ''
|| o.melder_mobiel
|| ''
|| ''
|| o.opdrachtnummer
|| ''
|| ''
|| o.opdrachtdatum
|| ''
|| '',
1,
'910051_'
|| TO_CHAR (SYSDATE, 'YY-MM-DD HH24MI')
|| ' '
|| o.opdr_key
FROM apgr_v_rap_opdrest o
UNION ALL
SELECT '',
2,
'910051_'
|| TO_CHAR (SYSDATE, 'YY-MM-DD HH24MI')
|| ' '
|| o.opdr_key
FROM apgr_v_rap_opdrest o;
-- Procedure voor het inserten van tracking bij versturen XML naar ESIS.
CREATE OR REPLACE PROCEDURE apgr_export_esis (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2,
p_filedir IN VARCHAR2,
p_filename IN VARCHAR2)
AS
CURSOR c1
IS
SELECT opdr_key,
vestiging_id,
machine_code,
onderwerp,
omschrijving,
melder,
melder_mobiel,
opdrachtnummer,
opdrachtdatum
FROM apgr_v_rap_opdrest;
BEGIN
FOR rec IN c1
LOOP
INSERT INTO fac_tracking (fac_tracking_datum,
fac_srtnotificatie_key,
fac_tracking_refkey,
fac_tracking_oms,
prs_perslid_key)
VALUES (SYSDATE,
85,
rec.opdr_key,
'Opdracht verzonden via koppeling ESIS.',
3);
END LOOP;
END;
/
-- En nu de CUST notificaties
-- Mail naar geselecteerd directielid voor nieuwe medewerker
CREATE OR REPLACE VIEW APGR_V_NOTI_NMDW
(
CODE,
SENDER,
RECEIVER,
TEXT,
KEY,
XKEY,
XSENDER,
XEMAIL,
XMOBILE
)
AS
SELECT 'CUST01',
NULL,
mkm.mld_kenmerkmelding_waarde,
'Er staat een melding voor u klaar voor het goedkeuren van een nieuwe medewerker ('
|| 'A/'
|| m.mld_melding_key
|| ')',
m.mld_melding_key,
NULL,
NULL,
NULL,
NULL
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk, fac_tracking t
WHERE m.mld_stdmelding_key = 341
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
AND mkm.mld_melding_key = m.mld_melding_key
AND mk.mld_srtkenmerk_key = 221
AND t.fac_tracking_refkey = m.mld_melding_key
AND t.fac_srtnotificatie_key =
(SELECT fac_srtnotificatie_key
FROM fac_srtnotificatie
WHERE fac_srtnotificatie_code = 'MLDNEW')
AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun
- fac_notificatie_job_interval
/ 24
FROM fac_notificatie_job
WHERE UPPER(fac_notificatie_job_view) =
'APGR_V_NOTI_NMDW')
AND (SELECT fac_notificatie_job_nextrun
FROM fac_notificatie_job
WHERE UPPER(fac_notificatie_job_view) =
'APGR_V_NOTI_NMDW');
-- Mail naar mailbox van HRM voor goedkeuren nieuwe medewerker aanvraag
-- Flag 1 instellen voor XEMAIL!
CREATE OR REPLACE VIEW APGR_V_NOTI_GOEDHRM
(
CODE,
SENDER,
RECEIVER,
TEXT,
KEY,
XKEY,
XEMAIL,
XMOBILE
)
AS
SELECT 'CUST02',
NULL,
NULL,
'Er staat een melding nieuwe medewerker klaar ter goedkeuring voor HR ('
|| 'A/'
|| m.mld_melding_key
|| ')',
m.mld_melding_key,
NULL,
'HRM@a-point.nl',
NULL
FROM mld_melding m,
fac_tracking t
WHERE m.mld_stdmelding_key = 301
AND m.mld_melding_key = t.fac_tracking_refkey
AND t.fac_srtnotificatie_key =
(SELECT fac_srtnotificatie_key
FROM fac_srtnotificatie
WHERE fac_srtnotificatie_code = 'MLDNEW')
AND t.fac_tracking_datum BETWEEN (SELECT fac_notificatie_job_nextrun
- fac_notificatie_job_interval
/ 24
FROM fac_notificatie_job
WHERE UPPER(fac_notificatie_job_view) =
'APGR_V_NOTI_GOEDHRM')
AND (SELECT fac_notificatie_job_nextrun
FROM fac_notificatie_job
WHERE UPPER(fac_notificatie_job_view) =
'APGR_V_NOTI_GOEDHRM');
------ 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