615 lines
22 KiB
Plaintext
615 lines
22 KiB
Plaintext
SET TERMOUT ON
|
|
SET FEEDBACK OFF
|
|
SET ECHO OFF
|
|
--
|
|
-- Update script van Facilitor versie 4.21 naar 4.22
|
|
--
|
|
-- $Revision$
|
|
-- $Id$
|
|
--
|
|
/*
|
|
* Dit script wordt geprecompileerd dus is het mogelijk (verplicht)
|
|
* om #ifdef's te gebruiken voor de diverse modules.
|
|
*
|
|
* Gebruik daar waar in de *.SQL-variant geen commentaar-tekst moet komen de
|
|
* C-style van uitcommentarieren. Daar waar WEL tekst in de uitvoer moet komen
|
|
* moet -- gebruikt worden.
|
|
*/
|
|
#include "modules.h"
|
|
#include "comsql.h"
|
|
#include "INS\inssql.h"
|
|
/*
|
|
* Test eerst of de vorige versie van module FAC zoals genoemd in tabel
|
|
* fac_module wel het te verwachten versienummer heeft
|
|
* als dat niet zo is dient de gebruiker het script ZELF af te breken middels
|
|
* control-c.
|
|
* Als dat wel zo is vervolgt het script en zal aan het einde van het script
|
|
* het interne versienummer en de datum worden bijgewerkt.
|
|
*/
|
|
|
|
#ifdef MASTER
|
|
SPOOL OFF
|
|
SET HEADING OFF
|
|
CLEAR SCREEN
|
|
|
|
PROMPT ***********************************************************************
|
|
PROMPT
|
|
PROMPT UPGRADE SCRIPT van Facilitor versie 04.21 naar 04.22
|
|
PROMPT
|
|
SELECT 'De huidige versie van Facilitor zou moeten zijn 04.21 en is: '
|
|
|| fac_module_version
|
|
FROM fac_module
|
|
WHERE fac_module_name='FAC';
|
|
PROMPT
|
|
PROMPT Indien de huidige versie NIET de verwachte versie is mag dit script
|
|
PROMPT niet worden gerund! In dit geval dient het script nu middels
|
|
PROMPT CONTROL-C te worden afgebroken.
|
|
PROMPT
|
|
PROMPT Indien de versies overeenkomen dient nu ENTER te worden gedrukt...
|
|
PROMPT
|
|
PROMPT ***********************************************************************
|
|
ACCEPT nix PROMPT ''
|
|
PROMPT
|
|
PROMPT De upgrade wordt vervolgd. Even geduld a.u.b...
|
|
PROMPT
|
|
|
|
SET TERMOUT OFF
|
|
SET HEADING OFF
|
|
SET FEEDBACK OFF
|
|
SET ECHO OFF
|
|
SET VERIFY OFF
|
|
SET LINESIZE 1000
|
|
SET SERVEROUTPUT ON;
|
|
|
|
SPOOL $421to422.SQL
|
|
PROMPT SPOOL $421to422.LST;
|
|
|
|
UPDMOD(FAC,421to422)
|
|
UPDMOD(ALG,421to422)
|
|
UPDMOD(PRS,421to422)
|
|
UPDMOD(INS,421to422)
|
|
UPDMOD(MLD,421to422)
|
|
UPDMOD(CAD,421to422)
|
|
UPDMOD(AKZ,421to422)
|
|
UPDMOD(PRJ,421to422)
|
|
UPDMOD(RES,421to422)
|
|
UPDMOD(SCH,421to422)
|
|
UPDMOD(SLE,421to422)
|
|
UPDMOD(WEB,421to422)
|
|
|
|
UPDATE_VERSION('04.22');
|
|
COMMIT;
|
|
PROMPT SPOOL OFF;
|
|
SPOOL OFF
|
|
START $421to422.SQL
|
|
#endif // MASTER
|
|
|
|
/****************************** PLAATS HIERONDER DE UPDATES ******************************/
|
|
|
|
#ifdef ALG
|
|
CREATE_VIEW(fac_v_functie_discipline, FAC_BIBLIOTHEEK_PRIVILEGE)
|
|
(fac_functie_discipline_key,
|
|
fac_functie_discipline_type,
|
|
fac_functie_discipline_module,
|
|
fac_functie_discipline_omschr,
|
|
fac_functie_discipline_min_lev) AS
|
|
SELECT fac_functie_key,
|
|
'F',
|
|
fac_functie_module,
|
|
fac_functie_omschrijving,
|
|
fac_functie_min_level
|
|
FROM fac_functie
|
|
#ifdef RES
|
|
UNION
|
|
SELECT P.prs_afdeling_key,
|
|
'A',
|
|
'RES',
|
|
P.prs_afdeling_naam,
|
|
1
|
|
FROM prs_afdeling P
|
|
WHERE prs_afdeling_verwijder IS NULL
|
|
AND P.prs_afdeling_key IN
|
|
(SELECT prs_afdeling_key
|
|
FROM res_artikel A
|
|
WHERE res_artikel_verwijder IS NULL
|
|
AND A.prs_afdeling_key = P.prs_afdeling_key
|
|
AND RowNum = 1)
|
|
UNION
|
|
SELECT B.prs_bedrijf_key,
|
|
'B',
|
|
'RES',
|
|
SUBSTR(B.prs_bedrijf_naam,1,15),
|
|
1
|
|
FROM prs_bedrijf B
|
|
WHERE prs_bedrijf_verwijder IS NULL
|
|
AND B.prs_bedrijf_key IN
|
|
(SELECT prs_bedrijf_key
|
|
FROM res_artikel A
|
|
WHERE res_artikel_verwijder IS NULL
|
|
AND A.prs_bedrijf_key = B.prs_bedrijf_key
|
|
AND RowNum = 1)
|
|
#endif // RES
|
|
UNION
|
|
SELECT ins_discipline_key,
|
|
decode(ins_discipline_module,'INS','D','MLD','V','BES','C','REP','C'),
|
|
ins_discipline_module,
|
|
ins_discipline_omschrijving,
|
|
ins_discipline_min_level
|
|
FROM ins_tab_discipline
|
|
WHERE ins_discipline_verwijder is NULL;
|
|
|
|
CREATE_TABLE(fac_groep, FAC_BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
fac_groep_key
|
|
NUMBER(10)
|
|
CONSTRAINT fac_k_fac_groep_key PRIMARY KEY,
|
|
fac_groep_omschrijving
|
|
VARCHAR2(30)
|
|
CONSTRAINT fac_c_fac_groep_omschrijving CHECK(fac_groep_omschrijving IS NOT NULL),
|
|
fac_groep_upper
|
|
VARCHAR2(30)
|
|
CONSTRAINT fac_c_fac_groep_upper CHECK(fac_groep_upper IS NOT NULL),
|
|
fac_groep_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
CONSTRAINT fac_c_fac_groep_aanmaak NOT NULL,
|
|
fac_groep_verwijder
|
|
DATE
|
|
DEFAULT NULL,
|
|
CONSTRAINT fac_u_fac_groep_upper UNIQUE(fac_groep_upper, fac_groep_verwijder)
|
|
);
|
|
|
|
CREATE_TABLE(fac_gebruikersgroep, FAC_BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
fac_gebruikersgroep_key
|
|
NUMBER(10)
|
|
CONSTRAINT fac_k_fac_gebruikersgroep_key PRIMARY KEY,
|
|
fac_groep_key
|
|
NUMBER(10)
|
|
CONSTRAINT fac_r_fac_groep_key REFERENCES fac_groep(fac_groep_key)
|
|
CONSTRAINT fac_c_fac_groep_key CHECK(fac_groep_key IS NOT NULL),
|
|
fac_gebruikersgroep_username
|
|
VARCHAR2(30)
|
|
);
|
|
|
|
ALTER TABLE fac_gebruikersgroep ADD (
|
|
prs_perslid_key
|
|
NUMBER(10)
|
|
CONSTRAINT fac_r_prs_perslid_key REFERENCES prs_perslid(prs_perslid_key)
|
|
CONSTRAINT fac_c_prs_perslid_key CHECK(prs_perslid_key IS NOT NULL)
|
|
);
|
|
|
|
alter table fac_gebruiker
|
|
add fac_groep_key
|
|
NUMBER(10)
|
|
CONSTRAINT fac_r_fac_groep_key2 REFERENCES fac_groep(fac_groep_key);
|
|
|
|
ALTER TABLE FAC_GEBRUIKER drop constraint FAC_C_FAC_GEBRUIKER_USERNAME;
|
|
|
|
ALTER TABLE FAC_GEBRUIKER add constraint FAC_C_FAC_GEBRUIKER_USERNAME CHECK
|
|
(fac_gebruiker_username IS NOT NULL or fac_groep_key IS NOT NULL);
|
|
|
|
|
|
CREATE SEQUENCE fac_s_fac_groep_key MINVALUE 1;
|
|
CREATE SEQUENCE fac_s_fac_gebruikersgroep_key MINVALUE 1;
|
|
|
|
CREATE_TRIGGER(fac_t_fac_groep_B_IU)
|
|
BEFORE INSERT OR UPDATE ON fac_groep
|
|
FOR EACH ROW
|
|
BEGIN
|
|
CHECK_NOG_REFERENCES(fac_groep, fac_groep_verwijder, fac_gebruikersgroep,fac_groep_key,'fac_m064');
|
|
CHECK_NOG_REFERENCES(fac_groep, fac_groep_verwijder, fac_gebruiker, fac_groep_key,'fac_m065');
|
|
UPDATE_PRIMARY_KEY(fac_groep_key, fac_s_fac_groep_key);
|
|
:new.fac_groep_upper := UPPER(:new.fac_groep_omschrijving);
|
|
:new.fac_groep_aanmaak := SYSDATE;
|
|
END;
|
|
/
|
|
|
|
CREATE_TRIGGER(fac_t_fac_gebruikersgroep_B_IU)
|
|
BEFORE INSERT OR UPDATE ON fac_gebruikersgroep
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(fac_gebruikersgroep_key, fac_s_fac_gebruikersgroep_key);
|
|
END;
|
|
/
|
|
|
|
|
|
|
|
CREATE_VIEW (FAC_V_WEBGEBRUIKER,FAC_NORMAAL_PRIVILEGE) AS
|
|
SELECT
|
|
G.FAC_GEBRUIKER_KEY,
|
|
G.FAC_GROEP_KEY,
|
|
U.PRS_PERSLID_INITIALEN FAC_GEBRUIKER_USERNAME,
|
|
G.FAC_FUNCTIE_KEY,
|
|
G.FAC_GEBRUIKER_MODULE,
|
|
G.FAC_GEBRUIKER_TABEL,
|
|
G.FAC_GEBRUIKER_KOLOM,
|
|
G.FAC_GEBRUIKER_KOLOMKEY,
|
|
G.FAC_GEBRUIKER_SOORT
|
|
FROM FAC_GEBRUIKER G, FAC_V_WEBUSER U
|
|
WHERE G.FAC_GEBRUIKER_USERNAME=U.PRS_PERSLID_INITIALEN
|
|
UNION
|
|
SELECT
|
|
G.FAC_GEBRUIKER_KEY,
|
|
G.FAC_GROEP_KEY,
|
|
U.PRS_PERSLID_INITIALEN FAC_GEBRUIKER_USERNAME,
|
|
G.FAC_FUNCTIE_KEY,
|
|
G.FAC_GEBRUIKER_MODULE,
|
|
G.FAC_GEBRUIKER_TABEL,
|
|
G.FAC_GEBRUIKER_KOLOM,
|
|
G.FAC_GEBRUIKER_KOLOMKEY,
|
|
G.FAC_GEBRUIKER_SOORT
|
|
FROM FAC_GEBRUIKER G, FAC_V_WEBUSER U, FAC_GEBRUIKERSGROEP GG
|
|
WHERE G.FAC_GROEP_KEY=GG.FAC_GROEP_KEY
|
|
AND GG.PRS_PERSLID_KEY=U.PRS_PERSLID_KEY;
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(fac_groep, fac_groep_verwijder,
|
|
fac_v_aanweziggroep,FAC_NORMAAL_PRIVILEGE);
|
|
|
|
CREATE_VIEW(fac_v_gebruikersgroepgegevens, FAC_NORMAAL_PRIVILEGE)
|
|
( fac_gebruikersgroep_key
|
|
, fac_groep_key
|
|
, prs_perslid_key
|
|
, prs_perslid_oslogin
|
|
, prs_afdeling_key
|
|
, prs_afdeling_naam
|
|
, prs_perslid_naam
|
|
, fac_groep_omschrijving
|
|
)
|
|
AS
|
|
select
|
|
gg.fac_gebruikersgroep_key
|
|
, gg.fac_groep_key
|
|
, gg.prs_perslid_key
|
|
, p.prs_perslid_oslogin
|
|
, a.prs_afdeling_key
|
|
, a.prs_afdeling_naam
|
|
, p.prs_perslid_naam
|
|
, g.fac_groep_omschrijving
|
|
from
|
|
fac_gebruikersgroep gg
|
|
, fac_groep g
|
|
, prs_perslid p
|
|
, prs_afdeling a
|
|
where gg.fac_groep_key=g.fac_groep_key
|
|
and gg.prs_perslid_key=p.prs_perslid_key
|
|
and p.prs_afdeling_key(+)=a.prs_afdeling_key;
|
|
|
|
DEF_FAC_ENTITY ('AUTORISATIE','Autorisatie',null,null,'Authorization');
|
|
DEF_FAC_ENTITY ('FAC_GROEP','Groep','Groepen','de','Group');
|
|
DEF_FAC_ENTITY ('FAC_GROEP_OMSCHRIJVING','Groep','Groepen','de','Group name');
|
|
DEF_FAC_ENTITY ('FAC_SELECTEER_OP','Selecteer op',null,null,'Select on');
|
|
|
|
DEF_FAC_MESSAGE ('FAC_USRTAB','Overige tabellen','Other tables');
|
|
DEF_FAC_MESSAGE ('FAC_USRDATA','Tabel ','Table');
|
|
DEF_FAC_MESSAGE ('FAC_GROEP_TITEL','Gebruikersgroepen','User groups');
|
|
DEF_FAC_MESSAGE ('FAC_M055','Toevoegen groep ','Add group');
|
|
DEF_FAC_MESSAGE ('FAC_M056','Groep','Group');
|
|
DEF_FAC_MESSAGE ('FAC_M057','Personen','Persons');
|
|
DEF_FAC_MESSAGE ('FAC_M058','Gebruikersgroepen-Personen','');
|
|
DEF_FAC_MESSAGE ('FAC_M059','Verwijderen ','Delete ');
|
|
DEF_FAC_MESSAGE ('FAC_M060','Verwijder Persoon uit groep','');
|
|
DEF_FAC_MESSAGE ('FAC_M061','Afdeling','');
|
|
DEF_FAC_MESSAGE ('FAC_M062','Groepsautorisatie','');
|
|
DEF_FAC_MESSAGE ('FAC_M063','Reeds toegekende individuele rechten worden verwijderd.','');
|
|
DEF_FAC_MESSAGE ('FAC_M064','Er bestaan nog aan deze groep gekoppelde personen.','');
|
|
DEF_FAC_MESSAGE ('FAC_M065','Er zijn nog autorisaties aan deze groep gekoppeld.','');
|
|
DEF_FAC_MESSAGE ('FAC_M066','Verwijderen groep ','');
|
|
|
|
|
|
#endif //ALG
|
|
|
|
|
|
#ifdef INS
|
|
DEF_FAC_ENTITY ('INS_DISCIPLINE_MINLEVEL', 'Type', 'Types', 'de','Type');
|
|
#endif // INS
|
|
|
|
|
|
#ifdef PRS
|
|
|
|
DEF_FAC_ENTITY ('MENU_PRS_EENHEID' , 'C'||CHR(38)||'ompany codes', NULL, NULL,'C'||CHR(38)||'ompany codes');
|
|
DEF_FAC_MESSAGE('MENU_PRS_PERSLIDEENHEID', 'Pers.functionarissen','Staff Managers');
|
|
DEF_FAC_ENTITY ('MENU_PRS_PERSLIDAFDELING', 'Contactpersonen', NULL, NULL,'Contact persons');
|
|
|
|
DEF_FAC_ENTITY ('MENU_PRS_SECURITY', 'Beveiliging', 'Security');
|
|
DEF_FAC_ENTITY ('MENU_PRS_FACILITY', 'Facilities', 'Facilities');
|
|
|
|
DEF_FAC_ENTITY ('PRS_EENHEID', 'Company', NULL, NULL,'Companies');
|
|
DEF_FAC_ENTITY ('PRS_EENHEID_CODE', 'Code' , NULL, NULL,'Code');
|
|
DEF_FAC_ENTITY ('PRS_EENHEID_OMSCHRIJVING', 'Omschrijving', NULL, NULL,'Omschrijving');
|
|
DEF_FAC_ENTITY ('PRS_PERSLIDEENHEID', 'Personeelszaken', NULL, NULL,'Staff Management');
|
|
DEF_FAC_ENTITY ('PRS_PERSLIDAFDELING', 'Contactpersoon', NULL, NULL,'Contact person');
|
|
|
|
DEF_FAC_MESSAGE ('PRS_M179', 'Verwijderen niet toegestaan, er zijn nog afdelingen gekoppeld aan deze Company.','Can not delete, departments found with this Company.');
|
|
DEF_FAC_MESSAGE ('PRS_M181', 'Geen Companies gevonden.' ,'No Companies found.');
|
|
DEF_FAC_MESSAGE ('PRS_M182', 'Er zijn geen personen geselecteerd.', 'No persons selected.');
|
|
DEF_FAC_MESSAGE ('PRS_M183', 'Companies per personeelsfunctionaris ', 'Companies per Staff Manager');
|
|
DEF_FAC_MESSAGE ('PRS_M184', 'Verwijderen Personeelsfunctionaris ', 'Delete Staff Manager');
|
|
DEF_FAC_MESSAGE ('PRS_M185', 'Contactpersoon ' , 'Contact Person');
|
|
DEF_FAC_MESSAGE ('PRS_M186', 'Verwijderen Contactpersoon ' , 'Delete Contact Person');
|
|
DEF_FAC_MESSAGE ('PRS_M187', 'Medewerkers beveiliging' , 'Security Employee');
|
|
DEF_FAC_MESSAGE ('PRS_M188', 'Medewerkers facilities' , 'Facilities Employee');
|
|
DEF_FAC_MESSAGE ('PRS_M189', 'Verwijderen contactpersonen Facilities', 'Delete Contact Person Facilities');
|
|
DEF_FAC_MESSAGE ('PRS_M190', 'Verwijderen contactpersonen Facilities afdeling ', 'Delete Contact Person Facilities Dep.');
|
|
DEF_FAC_MESSAGE ('PRS_M191', 'Verwijderen contactpersoon Beveiliging ', 'Delete Contact Person Security');
|
|
DEF_FAC_MESSAGE ('PRS_M193', 'Verwijderen Company code ' , 'Delete Company code');
|
|
DEF_FAC_MESSAGE ('PRS_M194', 'Er zijn geen afdelingen geselecteerd.' , 'No departments were selected.');
|
|
DEF_FAC_MESSAGE ('PRS_M195', 'Er zijn geen Companies geselecteerd.' , 'No Companies were selecterd.');
|
|
DEF_FAC_MESSAGE ('PRS_M196', 'Verwijderen niet toegestaan, persoon is personeelsfunctionaris.', 'Delete not allowed, person is Staff Manager.');
|
|
DEF_FAC_MESSAGE ('PRS_M197', 'Verwijderen niet toegestaan, persoon is contactpersoon voor afdeling(en).', 'Delete not allowed, person is Contact person for department(s).');
|
|
DEF_FAC_MESSAGE ('PRS_M198', 'Verwijderen niet toegestaan, persoon is contactpersoon voor Beveiliging.', 'Delete not allowed, person is Contact person for Security.');
|
|
DEF_FAC_MESSAGE ('PRS_M199', 'Verwijderen niet toegestaan, persoon is contactpersoon voor Facilities.' , 'Delete not allowed, person is Contact person for Facilities.');
|
|
DEF_FAC_MESSAGE ('PRS_M180', 'Geen Personen gevonden.','No persons found.');
|
|
DEF_FAC_MESSAGE ('PRS_M200', 'Afdelingen per contactpersoon', 'Departments per Contact Person');
|
|
|
|
DEF_FAC_MESSAGE ('PRS_PERSLIDEENHEID_NAAM' ,'Pers.functionaris' , 'Staff Manager');
|
|
DEF_FAC_MESSAGE ('PRS_PERSLIDEENHEID_NAMEN' ,'Pers.functionarissen' , 'Staff Managers');
|
|
DEF_FAC_MESSAGE ('PRS_PERSLIDAFDELING_NAAM' ,'Contact persoon' , 'Contact Person');
|
|
DEF_FAC_MESSAGE ('PRS_PERSLIDAFDELING_NAMEN' ,'Contact personen' , 'Contact Persons');
|
|
|
|
|
|
|
|
CREATE_TABLE(prs_eenheid, PRS_BIBLIOTHEEK_PRIVILEGE)
|
|
(
|
|
prs_eenheid_key
|
|
NUMBER(10)
|
|
CONSTRAINT prs_k_prs_eenheid_key PRIMARY KEY,
|
|
prs_eenheid_code
|
|
VARCHAR2(6)
|
|
CONSTRAINT prs_c_prs_eenheid_code CHECK(prs_eenheid_code IS NOT NULL),
|
|
prs_eenheid_upper
|
|
VARCHAR2(6)
|
|
CONSTRAINT prs_c_prs_eenheid_upper CHECK(prs_eenheid_upper IS NOT NULL),
|
|
prs_eenheid_omschrijving
|
|
VARCHAR2(60)
|
|
CONSTRAINT prs_c_prs_eenheid_omschr CHECK(prs_eenheid_omschrijving IS NOT NULL),
|
|
prs_eenheid_aanmaak
|
|
DATE
|
|
DEFAULT SYSDATE
|
|
CONSTRAINT prs_c_prs_eenheid_aanmaak CHECK(prs_eenheid_aanmaak IS NOT NULL),
|
|
prs_eenheid_verwijder
|
|
DATE
|
|
DEFAULT NULL,
|
|
CONSTRAINT prs_u_prs_eenheid_upper UNIQUE(prs_eenheid_upper, prs_eenheid_verwijder)
|
|
);
|
|
|
|
CREATE SEQUENCE prs_s_prs_eenheid_key MINVALUE 1;
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(prs_eenheid, prs_eenheid_verwijder,
|
|
prs_v_aanwezigeenheid,PRS_BIBLIOTHEEK_PRIVILEGE);
|
|
|
|
ALTER TABLE prs_afdeling
|
|
ADD
|
|
(
|
|
prs_eenheid_key NUMBER(10)
|
|
CONSTRAINT prs_r_prs_eenheid_key REFERENCES prs_eenheid(prs_eenheid_key)
|
|
);
|
|
|
|
DEFINIEER_VIEW_AANWEZIG(prs_afdeling,
|
|
prs_afdeling_verwijder,
|
|
prs_v_aanwezigafdeling,
|
|
PRS_NORMAAL_PRIVILEGE);
|
|
|
|
CREATE_TRIGGER(prs_t_prs_eenheid_B_IU)
|
|
BEFORE INSERT OR UPDATE ON prs_eenheid
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_eenheid_key,prs_s_prs_eenheid_key);
|
|
UPDATE_UPPER(prs_eenheid_code, prs_eenheid_upper);
|
|
CHECK_NOG_REFERENCES(prs_eenheid, prs_eenheid_verwijder, prs_v_aanwezigafdeling,
|
|
prs_eenheid_key, 'prs_m179');
|
|
UPDATE_AANMAAKDATUM(prs_eenheid, prs_eenheid_aanmaak);
|
|
END;
|
|
/
|
|
|
|
#ifdef AKZ
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_CODE' , 'De company code is niet ingevuld.', 'The Company code has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_UPPER' , 'De company code is niet ingevuld.', 'The Company code has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_OMSCHR' , 'De naam van de Company is niet ingevuld.', 'The name of the Company has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_KEY' , 'De Company is niet geselecteerd.', 'The Company is not selected.');
|
|
DEF_FAC_MESSAGE ('PRS_R_PRS_EENHEID_KEY' , 'Verwijderen niet toegestaan, er zijn nog afdelingen gekoppeld aan deze Company.','Can not delete, there are still references of departments to this Company.');
|
|
#else
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_CODE' , 'De code van de Business Unit is niet ingevuld.', 'Code of the Business Unit has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_UPPER' , 'De code van de Business Unit is niet ingevuld.', 'Code of the Business Unit has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_OMSCHR' , 'De naam van de Business Unit is niet ingevuld.', 'The name of the Company has not been entered.');
|
|
DEF_FAC_MESSAGE ('PRS_C_PRS_EENHEID_KEY' , 'De Business Unit is niet geselecteerd.' , 'The Company is not selected.');
|
|
DEF_FAC_MESSAGE ('PRS_R_PRS_EENHEID_KEY' , 'Verwijderen niet toegestaan, er zijn nog afdelingen gekoppeld aan deze B.Unit.','There are still references of persons or departments to this Business Unit.');
|
|
#endif //AKZ
|
|
|
|
DEF_FAC_MESSAGE ('PRS_U_PRS_EENHEID_UPPER' ,'Het veld ''Code'' is niet uniek.');
|
|
|
|
CREATE_TRIGGER(prs_t_prs_afdeling_B_IU)
|
|
BEFORE INSERT OR UPDATE ON prs_afdeling
|
|
FOR EACH ROW
|
|
BEGIN
|
|
-- LET OP : Deze trigger is ook gedefinieerd in RES !!
|
|
UPDATE_PRIMARY_KEY(prs_afdeling_key, prs_s_prs_afdeling_key);
|
|
UPDATE_UPPER(prs_afdeling_naam, prs_afdeling_upper);
|
|
CHECK_NOG_REFERENCES(prs_perslid, prs_afdeling_verwijder
|
|
,prs_v_aanwezigperslid, prs_afdeling_key, 'prs_m015');
|
|
UPDATE_AANMAAKDATUM(prs_afdeling, prs_afdeling_aanmaak);
|
|
--
|
|
-- 6/20/97/AH #1312, De CASCADE-verwijderen van
|
|
-- PRS_PERSLIDWERKPLEK verplaatst naar PRS011/Verwijderen. In de trigger een
|
|
-- RESTRICTED toegevoegd om evt. fouten te kunnen voorkomen.
|
|
--
|
|
CHECK_NOG_REFERENCES(prs_perslid, prs_afdeling_verwijder
|
|
,prs_v_aanwezigperslidwerkplek, prs_afdeling_key, 'prs_m172');
|
|
--
|
|
-- Afdeling mag alleen verwijderd worden als deze geen objecten meer in het bezit heeft.
|
|
--
|
|
DECLARE
|
|
dummy VARCHAR2(1);
|
|
BEGIN
|
|
IF :new.prs_afdeling_verwijder IS NOT NULL
|
|
THEN
|
|
SELECT 'x'
|
|
INTO dummy
|
|
FROM ins_deel
|
|
WHERE ins_deel_verwijder IS NULL
|
|
AND ins_alg_ruimte_type = 'A'
|
|
AND ins_alg_ruimte_key = :old.prs_afdeling_key;
|
|
APPLICATION_ERROR(-20000,'prs_m173');
|
|
END IF;
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND THEN NULL;
|
|
WHEN TOO_MANY_ROWS THEN APPLICATION_ERROR(-20000,'prs_m173');
|
|
END;
|
|
--
|
|
-- We blijven veld prs_afdeling_eenheid (voorlopig) redundant gebruiken, anders veel te veel forms aan te passen
|
|
--
|
|
IF:new.prs_afdeling_verwijder IS NULL
|
|
THEN
|
|
IF :new.prs_eenheid_key IS NOT NULL
|
|
OR :old.prs_eenheid_key <> :new.prs_eenheid_key
|
|
THEN
|
|
DECLARE
|
|
Eenheid prs_afdeling.prs_afdeling_eenheid%TYPE;
|
|
BEGIN
|
|
SELECT prs_eenheid_code INTO Eenheid
|
|
FROM prs_eenheid
|
|
WHERE prs_eenheid_key = :new.prs_eenheid_key;
|
|
--
|
|
:new.prs_afdeling_eenheid := Eenheid;
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND THEN NULL;
|
|
WHEN TOO_MANY_ROWS THEN NULL;
|
|
END;
|
|
END IF;
|
|
END IF;
|
|
END;
|
|
/
|
|
|
|
CREATE_TRIGGER(prs_t_prs_perslid_B_IU)
|
|
BEFORE INSERT OR UPDATE ON prs_perslid
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_perslid_key, prs_s_prs_alluitvoerende_keys);
|
|
UPDATE_UPPER(prs_perslid_naam, prs_perslid_upper);
|
|
UPDATE_UPPER(prs_perslid_initialen, prs_perslid_init_upper);
|
|
UPDATE_UPPER(prs_perslid_oslogin, prs_perslid_oslogin);
|
|
UPDATE_AANMAAKDATUM(prs_perslid, prs_perslid_aanmaak);
|
|
CHECK_NOG_REFERENCES(prs_perslid, prs_perslid_verwijder
|
|
,prs_v_aanwezigperslidwerkplek, prs_perslid_key, 'prs_m174');
|
|
#ifdef MLD
|
|
-- Niet verwijderen als nog MLD_OPDR's zijn met status 'Uitgegeven' en
|
|
-- uitvoerende deze PERSLID.
|
|
IF :new.prs_perslid_verwijder IS NOT NULLDATUM
|
|
THEN
|
|
DECLARE
|
|
dummy VARCHAR2(1);
|
|
BEGIN
|
|
SELECT 'X'
|
|
INTO dummy
|
|
FROM mld_opdr MLD_O
|
|
, mld_statusopdr MLD_S
|
|
WHERE MLD_O.mld_statusopdr_key = MLD_S.mld_statusopdr_key
|
|
AND MLD_S.mld_statusopdr_upper = 'MLD_UITGEGEVEN'
|
|
AND MLD_O.mld_uitvoerende_keys = :new.prs_perslid_key;
|
|
APPLICATION_ERROR(-20000, 'prs_m085');
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND THEN NULL;
|
|
WHEN TOO_MANY_ROWS THEN APPLICATION_ERROR(-20000, 'prs_m085');
|
|
END;
|
|
END IF;
|
|
#endif // MLD
|
|
-- Persoon mag alleen verwijderd worden als deze geen objecten meer in het bezit heeft.
|
|
-- Dit geldt alleen voor objecten die 'van de organisatie' zijn, d.i.
|
|
-- ins_discipline_min_level <> 3. Deze mocht de gebruiker zelf bijhouden
|
|
DECLARE
|
|
dummy VARCHAR2(1);
|
|
BEGIN
|
|
IF :new.prs_perslid_verwijder IS NOT NULL
|
|
THEN
|
|
SELECT 'x'
|
|
INTO dummy
|
|
FROM ins_v_aanwezigdeel D, ins_tab_discipline DI
|
|
WHERE ins_alg_ruimte_type = 'P'
|
|
AND ins_alg_ruimte_key = :old.prs_perslid_key
|
|
AND DI.ins_discipline_key = D.ins_discipline_key
|
|
AND DI.ins_discipline_min_level <> 3;
|
|
APPLICATION_ERROR(-20000,'prs_m175');
|
|
END IF;
|
|
EXCEPTION
|
|
WHEN NO_DATA_FOUND THEN NULL;
|
|
WHEN TOO_MANY_ROWS THEN APPLICATION_ERROR(-20000,'prs_m175');
|
|
END;
|
|
-- Tenslotte: ruim de objecten op, d.i. de objecten die ik zelf mocht beheren, en
|
|
-- de objecten die reeds vervallen waren. Ruim ook autorisaties op.
|
|
BEGIN
|
|
IF :new.prs_perslid_verwijder IS NOT NULL
|
|
THEN
|
|
DELETE FROM FAC_GEBRUIKERSGROEP WHERE PRS_PERSLID_KEY = :old.prs_perslid_key;
|
|
DELETE FROM FAC_GEBRUIKER WHERE FAC_GEBRUIKER_USERNAME = :old.prs_perslid_oslogin;
|
|
DELETE FROM INS_DEEL WHERE ins_deel_key IN
|
|
(SELECT D.ins_deel_key
|
|
FROM ins_deel D, ins_tab_discipline DI
|
|
WHERE ins_alg_ruimte_type = 'P'
|
|
AND ins_alg_ruimte_key = :old.prs_perslid_key
|
|
AND DI.ins_discipline_key = D.ins_discipline_key
|
|
AND (DI.ins_discipline_min_level = 3 OR ins_deel_verwijder IS NOT NULL));
|
|
END IF;
|
|
END;
|
|
END;
|
|
/
|
|
|
|
create unique index prs_i_prs_perslid4 on prs_perslid(prs_perslid_oslogin);
|
|
|
|
|
|
#endif // PRS
|
|
|
|
#ifdef MLD
|
|
ALTER TABLE mld_stdmelding
|
|
ADD
|
|
(
|
|
mld_stdmelding_notfrontend
|
|
NUMBER(1)
|
|
DEFAULT 0
|
|
);
|
|
|
|
#endif // MLD
|
|
|
|
|
|
#ifdef RES
|
|
|
|
#endif // RES
|
|
|
|
#ifdef BES
|
|
|
|
#endif // BES
|
|
|
|
#ifdef BEZ
|
|
ALTER TABLE bez_afspraak
|
|
ADD bez_afspraak_eind DATE;
|
|
|
|
ALTER TABLE bez_bezoekers
|
|
ADD bez_bezoekers_done DATE;
|
|
|
|
#endif // BEZ
|
|
|
|
|
|
#ifdef WEB
|
|
|
|
#endif // WEB
|
|
|
|
|
|
#ifdef SCH
|
|
|
|
#endif // SCH
|
|
|
|
|
|
#ifdef FAC
|
|
|
|
UPDATE FAC_MESSAGE
|
|
SET FAC_MESSAGE_TEXT = 'Facilitor 4.22'
|
|
WHERE FAC_MESSAGE_CODE = 'FAC_M002';
|
|
|
|
UPDATE FAC_MESSAGE
|
|
SET FAC_MESSAGE_TEXT = 'Welkom bij Facilitor 4.22'
|
|
WHERE FAC_MESSAGE_CODE = 'FAC_M035';
|
|
|
|
|
|
DEF_FAC_MESSAGE ('MLD_M239', 'Herk. tekst niet zichtbaar voor Frontend user web','Standardtext not visible for Frontend users web');
|
|
|
|
|
|
#endif // FAC |