agv mld_tri/mld_vie
svn path=/Database/trunk/; revision=7851
This commit is contained in:
180
_UP/412TO413.SRC
180
_UP/412TO413.SRC
@@ -39,7 +39,7 @@ PROMPT ***********************************************************************
|
||||
PROMPT
|
||||
PROMPT UPGRADE SCRIPT van Facilitor versie 04.12 naar 04.13
|
||||
PROMPT
|
||||
SELECT 'De huidige versie van Facilitor zou moeten zijn 04.12 en is: '
|
||||
SELECT 'De huidige versie van Facilitor zou moeten zijn 04.12 (evt. 04.13) en is: '
|
||||
|| fac_module_version
|
||||
FROM fac_module
|
||||
WHERE fac_module_name='FAC';
|
||||
@@ -200,6 +200,163 @@ CREATE_VIEW(prs_v_perslid_gegevens,PRS_NORMAAL_PRIVILEGE) AS
|
||||
|
||||
#ifdef MLD
|
||||
|
||||
// Status Uitgegeven(7) is nieuw
|
||||
CREATE_TRIGGER(mld_t_mld_melding_B_IU)
|
||||
BEFORE INSERT OR UPDATE ON mld_melding
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
UPDATE_PRIMARY_KEY(mld_melding_key, mld_s_mld_melding_key);
|
||||
|
||||
/* Vul het veld MLD_ALG_LOCATIE_KEY als de onroerendgoed_key wijzigd */
|
||||
IF :old.mld_alg_onroerendgoed_keys IS NULL
|
||||
OR :old.mld_alg_onroerendgoed_keys <> :new.mld_alg_onroerendgoed_keys
|
||||
THEN
|
||||
CHECK_REFERENCE_ONROERENDGOED(mld_alg_onroerendgoed_keys, 'alg_m090');
|
||||
SELECT alg_locatie_key
|
||||
INTO :new.mld_alg_locatie_key
|
||||
FROM mld_v_onroerendgoed_locatie
|
||||
WHERE alg_onroerendgoed_keys = :new.mld_alg_onroerendgoed_keys;
|
||||
END IF;
|
||||
IF :new.mld_melding_username IS NULL
|
||||
THEN
|
||||
SELECT USER
|
||||
INTO :new.mld_melding_username
|
||||
FROM DUAL;
|
||||
END IF;
|
||||
IF :new.prs_perslid_key IS NULL
|
||||
THEN
|
||||
raise_application_error(-20000, 'mld_m233');
|
||||
END IF;
|
||||
IF :new.prs_afdeling_key IS NULL
|
||||
THEN
|
||||
raise_application_error(-20000, 'mld_m234');
|
||||
END IF;
|
||||
IF :new.mld_melding_afgewezen IS NOT NULL
|
||||
AND :new.mld_melding_geaccepteerd IS NOT NULL
|
||||
THEN
|
||||
raise_application_error(-20000, 'mld_m175');
|
||||
END IF;
|
||||
IF :new.mld_melding_geaccepteerd IS NOT NULL
|
||||
AND :old.mld_melding_geaccepteerd IS NULL
|
||||
AND :new.mld_melding_geaccepteerd_user IS NULL
|
||||
THEN
|
||||
SELECT USER
|
||||
INTO :new.mld_melding_geaccepteerd_user
|
||||
FROM DUAL;
|
||||
END IF;
|
||||
IF :new.mld_melding_verwerkt IS NOT NULL AND :old.mld_melding_verwerkt IS NULL THEN
|
||||
-- De melding wordt nu verwerkt
|
||||
IF :old.mld_melding_geaccepteerd IS NULL AND :old.mld_melding_afgemeld IS NULL THEN
|
||||
raise_application_error(-20000, 'mld_m203');
|
||||
ELSE
|
||||
DECLARE
|
||||
Dummy VARCHAR2(1);
|
||||
BEGIN
|
||||
SELECT 'X'
|
||||
INTO Dummy
|
||||
FROM mld_opdr MLD_O, mld_statusopdr MLD_SO
|
||||
WHERE MLD_O.mld_statusopdr_key = MLD_SO.mld_statusopdr_key
|
||||
AND (MLD_SO.mld_statusopdr_upper = 'MLD_UITGEGEVEN'
|
||||
OR MLD_SO.mld_statusopdr_upper = 'MLD_AFGEMELD')
|
||||
AND MLD_O.mld_melding_key = :new.mld_melding_key;
|
||||
raise_application_error(-20000, 'mld_m192');
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN NULL;
|
||||
WHEN TOO_MANY_ROWS
|
||||
THEN raise_application_error(-20000, 'mld_m192');
|
||||
END;
|
||||
END IF;
|
||||
ELSIF :new.mld_melding_afgemeld IS NOT NULL AND :old.mld_melding_afgemeld IS NULL THEN
|
||||
-- De melding wordt nu afgemeld
|
||||
IF :old.mld_melding_geaccepteerd IS NULL THEN
|
||||
raise_application_error(-20000, 'mld_m202');
|
||||
ELSIF :old.mld_melding_verwerkt IS NOT NULL THEN
|
||||
raise_application_error(-20000, 'mld_m195');
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
IF :new.mld_melding_uitvoertijd2 IS NULL
|
||||
THEN
|
||||
:new.mld_melding_uitvoertijd2 := :new.mld_melding_uitvoertijd;
|
||||
END IF;
|
||||
-- Update melding status
|
||||
IF :new.MLD_MELDING_AFGEWEZEN is not null THEN :new.MLD_MELDING_STATUS := 1;
|
||||
ELSIF :new.MLD_MELDING_VERWERKT is not null THEN :new.MLD_MELDING_STATUS := 6;
|
||||
ELSIF :new.MLD_MELDING_AFGEMELD is not null THEN :new.MLD_MELDING_STATUS := 5;
|
||||
ELSIF :new.MLD_MELDING_GEACCEPTEERD is not null THEN
|
||||
DECLARE ord_num NUMBER;
|
||||
BEGIN
|
||||
SELECT count(*) INTO ord_num
|
||||
FROM mld_opdr O
|
||||
WHERE O.mld_melding_key = :new.mld_melding_key;
|
||||
IF ord_num = 0 THEN
|
||||
:new.MLD_MELDING_STATUS := 4;
|
||||
ELSE
|
||||
:new.MLD_MELDING_STATUS := 7;
|
||||
END IF;
|
||||
END;
|
||||
ELSIF :new.MLD_MELDING_INGEZIEN is not null THEN :new.MLD_MELDING_STATUS := 3;
|
||||
ELSE :new.MLD_MELDING_STATUS := 2;
|
||||
END IF;
|
||||
|
||||
END;
|
||||
/
|
||||
|
||||
INSERT INTO mld_statuses VALUES ( 7, 'Uitgegeven' );
|
||||
|
||||
|
||||
UPDATE mld_melding SET mld_melding_key=mld_melding_key;
|
||||
COMMIT;
|
||||
|
||||
CREATE_VIEW(mld_v_melding_status_gegevens,MLD_NORMAAL_PRIVILEGE) AS
|
||||
SELECT M.mld_melding_key,
|
||||
M.mld_melding_status,
|
||||
S.mld_statuses_omschrijving,
|
||||
DECODE(mld_melding_status,
|
||||
1,mld_melding_afgewezen,
|
||||
2,mld_melding_datum,
|
||||
3,mld_melding_ingezien,
|
||||
4,mld_melding_geaccepteerd,
|
||||
5,mld_melding_afgemeld,
|
||||
6,mld_melding_verwerkt,
|
||||
7,mld_melding_geaccepteerd,
|
||||
NULL) mld_melding_lastdate,
|
||||
M.mld_melding_datum,
|
||||
'['||MD.ins_discipline_omschrijving||'/'||SM.mld_stdmelding_omschrijving||'] '||m.mld_melding_omschrijving mld_melding_omschrijving,
|
||||
AF.prs_afdeling_key,AF.prs_afdeling_omschrijving,
|
||||
P.prs_perslid_key,P.prs_perslid_naam,
|
||||
M.mld_alg_onroerendgoed_keys,
|
||||
L.alg_locatie_code||
|
||||
DECODE(G.alg_gebouw_code,NULL,'',' - '||G.alg_gebouw_code)||
|
||||
DECODE(G.alg_verdieping_volgnr,NULL,'',' - '||G.alg_verdieping_volgnr)||
|
||||
DECODE(G.alg_ruimte_nr,NULL,'',' - '||G.alg_ruimte_nr)||
|
||||
DECODE(G.alg_terreinsector_code,NULL,'',' - '||G.alg_terreinsector_code) alg_plaats_omschrijving,
|
||||
M.mld_stdmelding_key,
|
||||
AF.prs_afdeling_eenheid,
|
||||
M.mld_alg_locatie_key,
|
||||
M.mld_melding_melder_naam,
|
||||
AF.prs_afdeling_kostenplaats,
|
||||
M.mld_ins_discipline_key,
|
||||
P.prs_perslid_upper,
|
||||
AF.prs_afdeling_upper,
|
||||
M.mld_melding_username
|
||||
FROM mld_melding M,
|
||||
mld_statuses S,
|
||||
mld_discipline MD,
|
||||
mld_stdmelding SM,
|
||||
prs_afdeling AF,
|
||||
prs_perslid P,
|
||||
alg_v_allonrgoed_gegevens G,
|
||||
alg_locatie L
|
||||
WHERE M.mld_melding_status=S.mld_statuses_key
|
||||
AND M.mld_ins_discipline_key=MD.ins_discipline_key
|
||||
AND M.mld_stdmelding_key=SM.mld_stdmelding_key
|
||||
AND M.prs_afdeling_key=AF.prs_afdeling_key (+)
|
||||
AND M.prs_perslid_key=P.prs_perslid_key (+)
|
||||
AND M.mld_alg_locatie_key=L.alg_locatie_key (+)
|
||||
AND M.mld_alg_onroerendgoed_keys=G.alg_onroerendgoed_keys (+)
|
||||
;
|
||||
|
||||
|
||||
#endif // MLD
|
||||
@@ -227,18 +384,17 @@ SELECT PRS_PERSLID_KEY,
|
||||
FROM PRS_V_AANWEZIGPERSLID P
|
||||
WHERE P.PRS_PERSLID_OSLOGIN IS NOT NULL;
|
||||
|
||||
create or replace function FAC_RESERVED_OBJECTS (resKey in number)
|
||||
CREATE OR REPLACE FUNCTION fac_reserved_objects (resKey in NUMBER)
|
||||
RETURN VARCHAR2
|
||||
AS
|
||||
ret VARCHAR2(256);
|
||||
first number;
|
||||
CURSOR query(resKey NUMBER)
|
||||
IS SELECT i.INS_DEEL_OMSCHRIJVING resobjdsc from RES_v_aanwezigRSV_DEEL rs,
|
||||
res_deel rd,
|
||||
ins_deel i
|
||||
WHERE rs.RES_RESERVERING_KEY = resKey
|
||||
AND rs.RES_DEEL_KEY = rd.RES_DEEL_KEY
|
||||
AND rd.RES_INS_DEEL_KEY = i.INS_DEEL_KEY;
|
||||
IS SELECT i.INS_DEEL_OMSCHRIJVING resobjdsc
|
||||
FROM res_v_aanwezigrsv_deel RS, res_deel RD, ins_deel I
|
||||
WHERE rs.RES_RESERVERING_KEY = resKey
|
||||
AND rs.RES_DEEL_KEY = rd.RES_DEEL_KEY
|
||||
AND rd.RES_INS_DEEL_KEY = i.INS_DEEL_KEY;
|
||||
BEGIN
|
||||
ret := null;
|
||||
first := 0;
|
||||
@@ -263,10 +419,10 @@ AS
|
||||
ret VARCHAR2(256);
|
||||
first number;
|
||||
CURSOR query(resKey NUMBER)
|
||||
IS SELECT rd.RES_ARTIKEL_OMSCHRIJVING resobjdsc from RES_v_aanwezigRSV_ARTIKEL rs,
|
||||
res_artikel rd
|
||||
WHERE rs.RES_RESERVERING_KEY = resKey
|
||||
AND rd.RES_ARTIKEL_KEY = rs.RES_ARTIKEL_KEY;
|
||||
IS SELECT rd.RES_ARTIKEL_OMSCHRIJVING resobjdsc
|
||||
from RES_v_aanwezigRSV_ARTIKEL rs, res_artikel rd
|
||||
WHERE rs.RES_RESERVERING_KEY = resKey
|
||||
AND rd.RES_ARTIKEL_KEY = rs.RES_ARTIKEL_KEY;
|
||||
BEGIN
|
||||
ret := null;
|
||||
first := 0;
|
||||
|
||||
Reference in New Issue
Block a user