svn path=/Database/trunk/; revision=8855
This commit is contained in:
Jos Groot Lipman
2004-11-09 12:31:20 +00:00
parent 2f59487120
commit f64ec0c724
16 changed files with 216 additions and 271 deletions

View File

@@ -641,6 +641,7 @@ CREATE OR REPLACE VIEW prs_v_aanwezigperslidwerkplek AS (select 0 prs_perslid_ke
CREATE OR REPLACE VIEW prs_v_aanwezigwerkplek AS (select 0 prs_alg_ruimte_key, 0 prs_werkplek_key from dual);
#endif
#ifndef MS_SQL
CREATE_VIEW(alg_v_my_room, ALG_NORMAAL_PRIVILEGE) AS
SELECT alg_ruimte_key,
alg_verdieping_key,
@@ -653,6 +654,24 @@ CREATE_VIEW(alg_v_my_room, ALG_NORMAAL_PRIVILEGE) AS
WHERE pp.prs_perslid_key = pl.prs_perslid_key
AND pl.prs_werkplek_key = wp.prs_werkplek_key
AND pp.prs_perslid_key = p.prs_perslid_key);
#else
[skip]
-- Deze is met SQLServer veel sneller
DROP VIEW dbo.alg_v_my_room;
GO;
CREATE VIEW dbo.alg_v_my_room AS
SELECT distinct alg_ruimte_key,
alg_verdieping_key,
pp.prs_perslid_key
FROM alg_ruimte,
prs_v_aanwezigperslid pp,
prs_v_aanwezigperslidwerkplek pl,
prs_v_aanwezigwerkplek wp
WHERE alg_ruimte_key = prs_alg_ruimte_key
and pp.prs_perslid_key = pl.prs_perslid_key
AND pl.prs_werkplek_key = wp.prs_werkplek_key
[/skip]
#endif
CREATE_VIEW(alg_v_my_floor, ALG_NORMAAL_PRIVILEGE) AS
SELECT v.alg_verdieping_key,

View File

@@ -7,7 +7,6 @@
#include "fac\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level) VALUES(c, o, m, l)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.

View File

@@ -1,8 +1,8 @@
#ifdef BES // 03-11-2000 PF
/*
* $Revision: 26 $
* $Modtime: 12-10-04 12:08 $
* $Revision: 27 $
* $Modtime: 27-10-04 13:45 $
*
* History
*
@@ -342,8 +342,8 @@ CREATE_TRIGGER(bes_t_bes_impcatalogus_b_iu)
BEFORE INSERT OR UPDATE ON bes_impcatalogus
FOR EACH ROW
BEGIN
:new.bes_impcatalogus_id := UPPER(:new.bes_impcatalogus_id);
:new.ins_srtdeel_nr := UPPER(:new.ins_srtdeel_nr);
UPDATE_UPPER(bes_impcatalogus_id, bes_impcatalogus_id, bes_impcatalogus);
UPDATE_UPPER(ins_srtdeel_nr, ins_srtdeel_nr, bes_impcatalogus);
END;
/

View File

@@ -114,20 +114,26 @@ CREATE_VIEW(bes_v_catalogus_prijsverschil,BES_NORMAAL_PRIVILEGE)
nieuwe_prijs,
huidige_prijs,
fclt_f_catalogus ) AS
SELECT TO_CHAR ( ABS (f.ins_srtdeel_prijs - i.ins_srtdeel_prijs)
SELECT NUMBER_TO_CHAR ( ABS (f.ins_srtdeel_prijs - i.ins_srtdeel_prijs)
/ i.ins_srtdeel_prijs
* 100,
'9990.00'
),
DECODE (SIGN (f.ins_srtdeel_prijs - i.ins_srtdeel_prijs),
-1, 'NEG',
0, 'NUL',
1, 'POS',
'def'
),
[skip]
#ifdef MS_SQL
case SIGN(f.ins_srtdeel_prijs - i.ins_srtdeel_prijs)
when -1 then 'NEG'
when 0 then 'NUL'
when 1 then 'POS'
else 'def'
end,
#else
DECODE(SIGN(f.ins_srtdeel_prijs - i.ins_srtdeel_prijs), -1, 'NEG', 0, 'NUL', 1, 'POS', 'def'),
#endif
[/skip]
i.ins_srtdeel_omschrijving,
TO_CHAR (f.ins_srtdeel_prijs, '99990.00'),
TO_CHAR (i.ins_srtdeel_prijs, '99990.00'), f.bes_impcatalogus_id
NUMBER_TO_CHAR (f.ins_srtdeel_prijs, '99990.00'),
NUMBER_TO_CHAR (i.ins_srtdeel_prijs, '99990.00'), f.bes_impcatalogus_id
FROM bes_impcatalogus f, ins_srtdeel i, ins_srtgroep g
WHERE i.ins_srtdeel_nr = f.ins_srtdeel_nr
AND i.ins_srtgroep_key = g.ins_srtgroep_key
@@ -135,7 +141,7 @@ SELECT TO_CHAR ( ABS (f.ins_srtdeel_prijs - i.ins_srtdeel_prijs)
AND i.ins_srtdeel_prijs <> f.ins_srtdeel_prijs
AND i.ins_srtdeel_prijs <> 0
AND i.ins_srtdeel_verwijder IS NULL
ORDER BY 1;
;
CREATE_VIEW(bes_v_catalogus_verschilovz,BES_NORMAAL_PRIVILEGE)

View File

@@ -9,7 +9,6 @@
#include "fac\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level) VALUES(c, o, m, l)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.

View File

@@ -10,7 +10,6 @@
#include "fac\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level) VALUES(c, o, m, l)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.

View File

@@ -414,6 +414,7 @@ WHILE (@@FETCH_STATUS <> -1 )
AantalRecords NUMBER(10);
OrderBy VARCHAR2(255);
mainuser VARCHAR2(80);
i NUMBER(10);
BEGIN
mainuser := _MSSQL(webfac.)fac_f_getmainuser();
@@ -424,9 +425,20 @@ WHILE (@@FETCH_STATUS <> -1 )
AND owner = mainuser;
--
OrderBy := '';
FOR i IN 1.. AantalRecords LOOP
i := 1;
[skip]
#ifndef MS_SQL
FOR i IN 1..AantalRecords) LOOP
OrderBy := OrderBy||TO_CHAR(i)||',';
END LOOP;
#else
WHILE (@i <= @AantalRecords) BEGIN
SET @OrderBy = @OrderBy + RTRIM(CONVERT(char,@i)) + ',';
SET @i = @i + 1;
END;
#endif
[/skip]
OrderBy := SUBSTR(OrderBy,1,(LENGTH(OrderBy)-1));
RETURN ' ORDER BY ' || OrderBy;
END fac_f_usrrap_orderby;
@@ -642,7 +654,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
WHEN OTHERS THEN RETURN NULL;
#else
// weet niet of dit voor sqls klopt -pf
IF Web.IsDateString(pchar) = 1 RETURN CAST(pchar as date);
IF Web.IsDateString(pchar, pfmt) = 1 RETURN CAST(pchar as date);
RETURN NULL;
#endif
END;

View File

@@ -2,6 +2,11 @@
/*
* $History: FAC_TRI.SRC $
*
* ***************** Version 15 *****************
* User: Jgl Date: 9-11-04 Time: 14:36
* Updated in $/Facilitor/SRC/SQL/FAC
* FSN#1069
*
* ***************** Version 14 *****************
* User: Pf Date: 27-08-04 Time: 15:15
* Updated in $/Facilitor/SRC/SQL/FAC
@@ -70,9 +75,7 @@ CREATE_TRIGGER(fac_t_fac_groeprechten_B_IU)
BEFORE INSERT OR UPDATE ON fac_groeprechten
FOR EACH ROW
BEGIN
IF :new.fac_groeprechten_key IS NULL THEN
SELECT fac_s_fac_groeprechten_key.nextval INTO :new.fac_groeprechten_key FROM DUAL;
END IF;
UPDATE_PRIMARY_KEY(fac_groeprechten_key, fac_s_fac_groeprechten_key);
END;
/
@@ -85,86 +88,89 @@ DECLARE
funclevel NUMBER;
BEGIN
-- We need a key, even if we decide to remove this record later
IF :new.fac_groeprechten_key IS NULL THEN SELECT fac_s_fac_groeprechten_key.nextval INTO :new.fac_groeprechten_key FROM DUAL; END IF;
UPDATE_PRIMARY_KEY(fac_gebruikersgroep_key, fac_s_fac_gebruikersgroep_key);
-- Determine whether we really need to store these values
/* see web_ini for meaning of this bitwise value */
SELECT fac_functie_min_level
INTO funclevel /* see web_ini for meaning of this bitwise value */
INTO funclevel
FROM fac_functie
WHERE fac_functie_key=:new.fac_functie_key;
keepit:=0;
--Keep if any used property has not-a-9 value; unused properties are disregarded
IF funclevel=0 THEN -- all values will be equal by definition here
keepit:=
IF funclevel=0 AND -- all values will be equal by definition here
(:new.fac_gebruiker_prs_level_read <> 9)
AND (:new.fac_gebruiker_prs_level_write <> 9)
AND (:new.fac_gebruiker_alg_level_read <> 9)
AND (:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=1 THEN -- read
keepit :=
AND (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=1 AND -- read
(:new.fac_gebruiker_prs_level_read <> 9)
AND (:new.fac_gebruiker_alg_level_read <> 9);
ELSIF funclevel=2 THEN -- write
keepit :=
AND (:new.fac_gebruiker_alg_level_read <> 9)
THEN keepit:=1;
ELSIF funclevel=2 AND -- write
(:new.fac_gebruiker_prs_level_write <> 9)
AND (:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=3 THEN -- read or write
keepit :=
AND (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=3 AND -- read or write
((:new.fac_gebruiker_prs_level_read <> 9)
AND (:new.fac_gebruiker_alg_level_read <> 9)) OR
((:new.fac_gebruiker_prs_level_write <> 9)
AND (:new.fac_gebruiker_alg_level_write <> 9));
ELSIF funclevel=4 THEN -- unused
keepit :=
AND (:new.fac_gebruiker_alg_level_write <> 9))
THEN keepit:=1;
ELSIF funclevel=4 AND -- unused
(:new.fac_gebruiker_prs_level_read <> 9)
AND (:new.fac_gebruiker_prs_level_write <> 9);
ELSIF funclevel=5 THEN -- prs read
keepit :=
(:new.fac_gebruiker_prs_level_read <> 9);
ELSIF funclevel=6 THEN -- prs write, probably unused
keepit :=
(:new.fac_gebruiker_prs_level_write <> 9);
ELSIF funclevel=7 THEN -- prs read n write
keepit :=
AND (:new.fac_gebruiker_prs_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=5 AND -- prs read
(:new.fac_gebruiker_prs_level_read <> 9)
THEN keepit:=1;
ELSIF funclevel=6 AND -- prs write, probably unused
(:new.fac_gebruiker_prs_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=7 AND -- prs read n write
(:new.fac_gebruiker_prs_level_read <> 9) OR
(:new.fac_gebruiker_prs_level_write <> 9);
ELSIF funclevel=8 THEN -- unused
keepit :=
(:new.fac_gebruiker_prs_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=8 AND -- unused
(:new.fac_gebruiker_alg_level_read <> 9)
AND (:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=9 THEN -- alg read
keepit :=
(:new.fac_gebruiker_alg_level_read <> 9);
ELSIF funclevel=10 THEN -- alg write, probably unused
keepit :=
(:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=11 THEN -- alg read n write
keepit :=
AND (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=9 AND -- alg read
(:new.fac_gebruiker_alg_level_read <> 9)
THEN keepit:=1;
ELSIF funclevel=10 AND -- alg write, probably unused
(:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=11 AND -- alg read n write
(:new.fac_gebruiker_alg_level_read <> 9) OR
(:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=12 THEN -- unused
keepit :=
(:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=12 AND -- unused
(:new.fac_gebruiker_prs_level_read <> 9)
AND (:new.fac_gebruiker_prs_level_write <> 9)
AND (:new.fac_gebruiker_alg_level_read <> 9)
AND (:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=13 THEN -- prs/alg read
keepit :=
AND (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=13 AND -- prs/alg read
(:new.fac_gebruiker_prs_level_read <> 9)
OR (:new.fac_gebruiker_alg_level_read <> 9);
ELSIF funclevel=14 THEN -- prs/alg write, probably unused
keepit :=
OR (:new.fac_gebruiker_alg_level_read <> 9)
THEN keepit:=1;
ELSIF funclevel=14 AND -- prs/alg write, probably unused
(:new.fac_gebruiker_prs_level_write <> 9)
OR (:new.fac_gebruiker_alg_level_write <> 9);
ELSIF funclevel=15 THEN -- prs/alg read n write
keepit :=
OR (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSIF funclevel=15 AND -- prs/alg read n write
(:new.fac_gebruiker_prs_level_read <> 9)
OR (:new.fac_gebruiker_prs_level_write <> 9)
OR (:new.fac_gebruiker_alg_level_read <> 9)
OR (:new.fac_gebruiker_alg_level_write <> 9);
OR (:new.fac_gebruiker_alg_level_write <> 9)
THEN keepit:=1;
ELSE
keepit := (1=1);
keepit := 1;
END IF;
IF NOT keepit THEN
IF keepit=0 THEN
Dummy := Fac_P_Fac_Save_Restore.SavePrimaryKey('FAC_GROEPRECHTEN',:new.fac_groeprechten_key);
END IF;
END;
@@ -175,16 +181,18 @@ AFTER INSERT OR UPDATE ON fac_groeprechten
DECLARE
PrimKey NUMBER(10);
Dummy BOOLEAN;
IndexNr NUMBER;
BEGIN
PrimKey := Fac_P_Fac_Save_Restore.GetPrimaryKey('FAC_GROEPRECHTEN',1);
IF PrimKey IS NOT NULL
THEN
IndexNr := 1;
PrimKey := Fac_P_Fac_Save_Restore.GetPrimaryKey('FAC_GROEPRECHTEN',IndexNr);
WHILE PrimKey IS NOT NULL LOOP
DELETE
FROM FAC_groeprechten
WHERE fac_groeprechten_key = PrimKey;
--
IndexNr := IndexNr + 1;
PrimKey := Fac_P_Fac_Save_Restore.GetPrimaryKey('FAC_GROEPRECHTEN',IndexNr);
END LOOP;
Dummy := fac_p_fac_save_restore.ResetSelectie('FAC_GROEPRECHTEN');
END IF;
END;
/

View File

@@ -7,6 +7,11 @@
/*
* $History: FCLT.SRC $
*
* ***************** Version 47 *****************
* User: Jgl Date: 9-11-04 Time: 14:43
* Updated in $/Facilitor/SRC/SQL
* FSN#1069
*
* ***************** Version 46 *****************
* User: Pf Date: 8-09-04 Time: 13:16
* Updated in $/Facilitor/SRC/SQL
@@ -232,85 +237,6 @@ COMMIT;
#ifdef MS_SQL
[skip]
IF EXISTS(SELECT 1
FROM INFORMATION_SCHEMA.routines
WHERE routine_NAME LIKE 'make_views'
and routine_schema like user)
drop procedure make_views
go
create procedure make_views as
begin
DECLARE query CURSOR FOR
select p.fac_package_name,o.table_name
from fac_package p
,information_schema.tables o
where o.table_schema=user
and not exists(select 1
from information_schema.tables o2
where o2.table_schema like p.fac_package_name
and o2.table_name=o.table_name);
declare @pk varchar(500);
declare @vw varchar(500);
declare @sql varchar(500);
OPEN query;
FETCH NEXT FROM query INTO @pk,@vw;
WHILE (@@FETCH_STATUS <> -1 ) BEGIN
set @sql = 'create view '+@pk+'.'+@vw
+ ' as select * from '+user+'.'+@vw;
exec(@sql);
FETCH NEXT FROM query INTO @pk,@vw;
END;
CLOSE query;
DEALLOCATE query;
end
go
make_views
go
/*
* drop_views is used in UPDATE scripts. Whenever any VIEW has been changed
* the combination drop_views/make_views must be used to ensure all dependant
* views are recreated.
*/
IF EXISTS(SELECT 1
FROM INFORMATION_SCHEMA.routines
WHERE routine_NAME LIKE 'drop_views'
and routine_schema like user)
drop procedure make_views
go
create procedure drop_views as
begin
DECLARE query CURSOR FOR
select distinct p.fac_package_name, o2.name
from sysobjects o1, fac_package p, sysobjects o2, sysdepends d
where
(o1.type = 'FN' or o1.type = 'P')
and o1.uid = user_id(p.fac_package_name)
and d.id = o1.id
and d.depid = o2.id
and (o2.type = 'U' or o2.type = 'V')
order by 1
declare @pk varchar(500);
declare @vw varchar(500);
declare @sql varchar(500);
OPEN query;
FETCH NEXT FROM query INTO @pk,@vw;
WHILE (@@FETCH_STATUS <> -1 ) BEGIN
set @sql = 'drop view '+@pk+'.'+@vw;
exec(@sql);
FETCH NEXT FROM query INTO @pk,@vw;
END;
CLOSE query;
DEALLOCATE query;
end
[/skip]
#endif

View File

@@ -3,6 +3,11 @@
/*
* $History: MRK_PAC.SRC $
*
* ***************** Version 2 *****************
* User: Jgl Date: 9-11-04 Time: 14:32
* Updated in $/Facilitor/SRC/SQL/MRK
* FSN#1069
*
* ***************** Version 1 *****************
* User: Pf Date: 8-09-04 Time: 13:11
* Created in $/Facilitor/SRC/SQL/MRK

View File

@@ -3,6 +3,11 @@
/*
* $History: MRK_VIE.SRC $
*
* ***************** Version 3 *****************
* User: Jgl Date: 9-11-04 Time: 14:32
* Updated in $/Facilitor/SRC/SQL/MRK
* FSN#1069
*
* ***************** Version 2 *****************
* User: Pf Date: 8-09-04 Time: 13:58
* Updated in $/Facilitor/SRC/SQL/MRK

View File

@@ -9,7 +9,6 @@
#include "FAC\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level) VALUES(c, o, m, l)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.

View File

@@ -11,7 +11,6 @@
#include "fac\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level) VALUES(c, o, m, l)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.

View File

@@ -2,64 +2,36 @@
/* RES_PAC.SRC
*
* $Revision: 25 $
* $Modtime: 4/21/04 8:44a $
* $Revision: 26 $
* $Modtime: 9-11-04 10:57 $
*
*/
CREATE OR REPLACE PACKAGE res AS
FUNCTION Res_CalcMinMaxBezoekers(RuimteKey IN NUMBER) RETURN VARCHAR;
PROCEDURE Res_NotifyChange2User (pReskey NUMBER, pCode VARCHAR2, pReceiver NUMBER);
-- Dropped 4.48
-- FUNCTION Res_CalcMinMaxBezoekers(RuimteKey IN NUMBER) RETURN VARCHAR;
PROCEDURE Res_NotifyChange2User (pReskey IN NUMBER, pCode IN VARCHAR2, pReceiver IN NUMBER);
END res;
/
CREATE OR REPLACE PACKAGE BODY res AS
FUNCTION Res_CalcMinMaxBezoekers(RuimteKey IN NUMBER) RETURN VARCHAR IS
MinMaxStr VARCHAR2(30);
MinValue NUMBER(5);
MaxValue NUMBER(5);
PROCEDURE Res_NotifyChange2User (pReskey IN NUMBER, pCode IN VARCHAR2, pReceiver IN NUMBER) AS
BEGIN
BEGIN
SELECT min(res_ruimte_opstel_bezoekers), max(res_ruimte_opstel_bezoekers)
INTO minValue, MaxValue
FROM res_ruimte_opstelling
WHERE res_ruimte_key = RuimteKey;
IF minValue = MaxValue
THEN
MinMaxStr := minValue;
ELSE
MinMaxStr:= TO_CHAR(minValue)||'-'||TO_CHAR(maxValue);
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
MinMaxStr := '0';
WHEN OTHERS THEN
MinMaxStr := '0';
END;
MinMaxStr:= MinMaxStr||' pers.';
RETURN MinMaxStr;
END;
PROCEDURE Res_NotifyChange2User (pReskey NUMBER, pCode VARCHAR2, pReceiver NUMBER) AS
BEGIN
-- Procedure to create a notification to the enduser that requested the reservation
-- Proc+edure to create a notification to the enduser that requested the reservation
-- Only 1 message is visible to that user. If new events occur that would issue a
-- new notification, the old message is deleted first.
-- pReceiver is optional, if it's null we'll look for the receiver ourself.
DECLARE
lMessage VARCHAR2(255);
lActionkey NUMBER;
keepmes NUMBER := 7;
keepmes NUMBER(10);
lSender NUMBER(10);
lReceiver NUMBER(10);
BEGIN
keepmes:= 7;
IF pReceiver IS NULL THEN
-- Determine who to send this notification to
BEGIN

View File

@@ -74,7 +74,7 @@ FROM ALG_LOCATIE ALG_L
, ALG_VERDIEPING ALG_V
, alg_v_aanwezigruimte ALG_R
, res_v_aanwezigruimte RES_R
, RES_ALG_RUIMTE RES_RA
, RES_V_AANWEZIGALG_RUIMTE RES_RA
WHERE RES_R.res_ruimte_key = RES_RA.res_ruimte_key
AND ALG_R.alg_ruimte_key = RES_RA.alg_ruimte_key
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
@@ -104,7 +104,7 @@ CREATE_VIEW(res_v_alg_ruimte_gegevens, RES_BIBLIOTHEEK_PRIVILEGE)
RES_R.res_ruimte_nr,
RES_RA.res_alg_ruimte_key
FROM alg_locatie ALG_L, alg_gebouw ALG_G, alg_verdieping ALG_V, alg_v_aanwezigruimte ALG_R,
res_v_aanwezigruimte RES_R, res_alg_ruimte RES_RA
res_v_aanwezigruimte RES_R, res_v_aanwezigalg_ruimte RES_RA
WHERE RES_R.res_ruimte_key = RES_RA.res_ruimte_key
AND ALG_R.alg_ruimte_key = RES_RA.alg_ruimte_key
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
@@ -115,24 +115,21 @@ UNION
ALG_G.alg_gebouw_key,
ALG_V.alg_verdieping_key,
ALG_R.alg_ruimte_key,
ALG_L.alg_locatie_code ||' - '||
ALG_G.alg_gebouw_code ||' - '||
ALG_V.alg_verdieping_code ||' - '||
ALG_L.alg_locatie_code + ' - ' +
ALG_G.alg_gebouw_code + ' - ' +
ALG_V.alg_verdieping_code + ' - ' +
ALG_R.alg_ruimte_nr,
TO_NUMBER(NULL),
NULL,
TO_NUMBER(NULL)
FROM alg_locatie ALG_L, alg_gebouw ALG_G, alg_verdieping ALG_V,
alg_v_aanwezigruimte ALG_R, res_v_aanwezigruimte RES_R
WHERE RES_R.res_ruimte_key(+) = ALG_R.alg_ruimte_key
AND ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
alg_v_aanwezigruimte ALG_R
WHERE ALG_R.alg_verdieping_key = ALG_V.alg_verdieping_key
AND ALG_V.alg_gebouw_key = ALG_G.alg_gebouw_key
AND ALG_G.alg_locatie_key = ALG_L.alg_locatie_key
AND ALG_R.alg_ruimte_key NOT IN
(SELECT alg_ruimte_key
FROM res_alg_ruimte RES_RA
WHERE ALG_R.alg_ruimte_key = RES_RA.alg_ruimte_key
AND RES_R.res_ruimte_key = RES_RA.res_ruimte_key);
FROM res_v_aanwezigalg_ruimte RES_RA)
/
CREATE_VIEW(res_v_rsv_ruimte_2_alg_ruimte, RES_BIBLIOTHEEK_PRIVILEGE) AS

View File

@@ -11,7 +11,7 @@
#include "fac\fac_hlp.h"
#define DEF_FAC_ROL(c, o) INSERT INTO fac_rol (fac_rol_role, fac_rol_omschrijving) VALUES(c, o)
#define DEF_FAC_FUNCTIE(c, o, m, l, d, i) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level, fac_functie_discipline, fac_functie_info) VALUES(c, o, m, l, d, i)
#define DEF_FAC_FUNCTIE2(c, o, m, l, d, i) INSERT INTO fac_functie (fac_functie_code, fac_functie_omschrijving,fac_functie_module,fac_functie_min_level, fac_functie_discipline, fac_functie_info) VALUES(c, o, m, l, d, i)
/*
** Bij installatie van modules moet de tabel FAC_MODULE gevuld of ge-update worden.
@@ -51,85 +51,85 @@ WHERE fac_rol_role LIKE USER||'_WEB_ROLE';
* Info, to give more info to the application manager
/* End user functions */
DEF_FAC_FUNCTIE('WEB_RESUSE', 'FrontEnd:Reserveringen', 'RES', 15, 1,'Om zelf een zaal met voorzieningen te kunnen reserveren');
DEF_FAC_FUNCTIE('WEB_MLDUSE', 'FrontEnd:ServiceDesk', 'MLD', 11, 1,'Om zelf meldingen te kunnen doen');
DEF_FAC_FUNCTIE('WEB_BESUSE', 'FrontEnd:Bestellingen', 'BES', 0, 1,'Om zelf bestellingen te kunnen doen');
DEF_FAC_FUNCTIE2('WEB_RESUSE', 'FrontEnd:Reserveringen', 'RES', 15, 1,'Om zelf een zaal met voorzieningen te kunnen reserveren');
DEF_FAC_FUNCTIE2('WEB_MLDUSE', 'FrontEnd:ServiceDesk', 'MLD', 11, 1,'Om zelf meldingen te kunnen doen');
DEF_FAC_FUNCTIE2('WEB_BESUSE', 'FrontEnd:Bestellingen', 'BES', 0, 1,'Om zelf bestellingen te kunnen doen');
/* Personal functions */
DEF_FAC_FUNCTIE('WEB_PRSOBJ', 'FrontEnd:Bezittingen', 'PRS', 3, 0,'Om zelf te kunnen inzien welke zaken er aan je toegekend zijn');
DEF_FAC_FUNCTIE('WEB_PROFIL', 'FrontEnd:Profiel', 'PRS', 3, 0,'Om zelf al je geregistreerde gegevens te kunnen inzien');
DEF_FAC_FUNCTIE2('WEB_PRSOBJ', 'FrontEnd:Bezittingen', 'PRS', 3, 0,'Om zelf te kunnen inzien welke zaken er aan je toegekend zijn');
DEF_FAC_FUNCTIE2('WEB_PROFIL', 'FrontEnd:Profiel', 'PRS', 3, 0,'Om zelf al je geregistreerde gegevens te kunnen inzien');
/* Business functions */
DEF_FAC_FUNCTIE('WEB_PHONEB', 'FrontEnd:Telefoonboek', 'PRS',13, 0, 'Om zelf de gegevens van medewerkers op te kunnen zoeken');
DEF_FAC_FUNCTIE('WEB_BEZUSE', 'FrontEnd:Bezoekers', 'BEZ', 0, 0, 'Om zelf verwachte bezoekers aan te kunnen melden');
DEF_FAC_FUNCTIE('WEB_MRKUSE', 'FrontEnd:Marktplaats', 'MRK', 0, 0, 'Om berichten op de marktplaats te zetten.');
DEF_FAC_FUNCTIE2('WEB_PHONEB', 'FrontEnd:Telefoonboek', 'PRS',13, 0, 'Om zelf de gegevens van medewerkers op te kunnen zoeken');
DEF_FAC_FUNCTIE2('WEB_BEZUSE', 'FrontEnd:Bezoekers', 'BEZ', 0, 0, 'Om zelf verwachte bezoekers aan te kunnen melden');
DEF_FAC_FUNCTIE2('WEB_MRKUSE', 'FrontEnd:Marktplaats', 'MRK', 0, 0, 'Om berichten op de marktplaats te zetten.');
/* Facilitor Graphics functions */
DEF_FAC_FUNCTIE('WEB_SPACE', 'Graphics:Ruimtebeheer', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_CLEAN', 'Graphics:Schoonmaak', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_INST', 'Graphics:Objecten', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_REDLIN', 'Graphics:*Redlining*', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_PERSON', 'Graphics:Wie-zit-waar?', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_EPLAN', 'Graphics:Ontruimingsplan', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_FGPLAN', 'Graphics:Plattegronden', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE('WEB_TERMAN', 'Graphics:Terreinbeheer', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_SPACE', 'Graphics:Ruimtebeheer', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_CLEAN', 'Graphics:Schoonmaak', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_INST', 'Graphics:Objecten', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_REDLIN', 'Graphics:*Redlining*', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_PERSON', 'Graphics:Wie-zit-waar?', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_EPLAN', 'Graphics:Ontruimingsplan', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_FGPLAN', 'Graphics:Plattegronden', 'CAD', 0, 0,'');
DEF_FAC_FUNCTIE2('WEB_TERMAN', 'Graphics:Terreinbeheer', 'CAD', 0, 0,'');
/* Frontoffice functions */
DEF_FAC_FUNCTIE('WEB_RESFOF', 'Frontoffice:Reserveringen', 'RES', 15, 1,'Om reserveringen voor anderen te kunnen doen etc');
DEF_FAC_FUNCTIE('WEB_MLDFOF', 'Frontoffice:Meldingen', 'MLD', 15, 1,'Om meldingen voor anderen te kunnen doen etc');
DEF_FAC_FUNCTIE('WEB_BESFOF', 'Frontoffice:Bestellingen', 'BES', 7, 1,'Om bestellingen voor anderen te kunnen doen etc.');
DEF_FAC_FUNCTIE('WEB_SLEFOF', 'Frontoffice:Sleutelbeheer', 'SLE', 0, 0,'Om sleuteluitgifte/-inname/-bezit te registeren');
DEF_FAC_FUNCTIE('WEB_PRSFOF', 'Frontoffice:Nieuwe medewerkers', 'PRS', 0, 0,'Het aanmelden van nieuwe medewerkers');
DEF_FAC_FUNCTIE2('WEB_RESFOF', 'Frontoffice:Reserveringen', 'RES', 15, 1,'Om reserveringen voor anderen te kunnen doen etc');
DEF_FAC_FUNCTIE2('WEB_MLDFOF', 'Frontoffice:Meldingen', 'MLD', 15, 1,'Om meldingen voor anderen te kunnen doen etc');
DEF_FAC_FUNCTIE2('WEB_BESFOF', 'Frontoffice:Bestellingen', 'BES', 7, 1,'Om bestellingen voor anderen te kunnen doen etc.');
DEF_FAC_FUNCTIE2('WEB_SLEFOF', 'Frontoffice:Sleutelbeheer', 'SLE', 0, 0,'Om sleuteluitgifte/-inname/-bezit te registeren');
DEF_FAC_FUNCTIE2('WEB_PRSFOF', 'Frontoffice:Nieuwe medewerkers', 'PRS', 0, 0,'Het aanmelden van nieuwe medewerkers');
/* Backoffice functions */
DEF_FAC_FUNCTIE('WEB_RESBOF', 'Backoffice:Reserveringen', 'RES', 11, 1,'Om reserveringen af te kunnen handelen');
DEF_FAC_FUNCTIE('WEB_MLDBOF', 'Backoffice:ServiceDesk', 'MLD', 15, 1,'Om meldingen af te kunnen handelen');
DEF_FAC_FUNCTIE('WEB_MLDBO2', 'Backoffice:ServiceDesk-afmeld', 'MLD', 15, 1,'Om alleen meldingen af te kunnen melden');
DEF_FAC_FUNCTIE('WEB_ORDBOF', 'Backoffice:Opdrachten', 'MLD', 15, 1,'Om (interne) opdrachten af te kunnen melden');
DEF_FAC_FUNCTIE2('WEB_RESBOF', 'Backoffice:Reserveringen', 'RES', 11, 1,'Om reserveringen af te kunnen handelen');
DEF_FAC_FUNCTIE2('WEB_MLDBOF', 'Backoffice:ServiceDesk', 'MLD', 15, 1,'Om meldingen af te kunnen handelen');
DEF_FAC_FUNCTIE2('WEB_MLDBO2', 'Backoffice:ServiceDesk-afmeld', 'MLD', 15, 1,'Om alleen meldingen af te kunnen melden');
DEF_FAC_FUNCTIE2('WEB_ORDBOF', 'Backoffice:Opdrachten', 'MLD', 15, 1,'Om (interne) opdrachten af te kunnen melden');
DEF_FAC_FUNCTIE('WEB_ORDSUP', 'Backoffice:Opdrachten finan.','MLD', 0, 0,'Om financi<63>le gegevens te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_ORDSUP', 'Backoffice:Opdrachten finan.','MLD', 0, 0,'Om financi<63>le gegevens te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_BESBOF', 'Backoffice:Bestelaanvragen', 'BES', 7, 1,'Om bestelaanvragen te kunnen verwerken tot opdrachten');
DEF_FAC_FUNCTIE('WEB_BESBOR', 'Backoffice:Bestelopdrachten','BES', 7, 1,'Om bestelopdrachten/leveringen af te kunnen handelen');
DEF_FAC_FUNCTIE('WEB_BEZBAC', 'Backoffice:Bezoekers', 'BEZ', 0, 0,'Om ontvangst van verwachte bezoekers te kunnen registreren');
DEF_FAC_FUNCTIE('WEB_PRSMAN', 'Backoffice:Personenbeheer', 'PRS', 7, 0,'Om medewerkers te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_PRSUSE', 'Backoffice:Persoonsgegevens','PRS', 7, 0,'Om additionele gegevens van medewerkers te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_BESBOF', 'Backoffice:Bestelaanvragen', 'BES', 7, 1,'Om bestelaanvragen te kunnen verwerken tot opdrachten');
DEF_FAC_FUNCTIE2('WEB_BESBOR', 'Backoffice:Bestelopdrachten','BES', 7, 1,'Om bestelopdrachten/leveringen af te kunnen handelen');
DEF_FAC_FUNCTIE2('WEB_BEZBAC', 'Backoffice:Bezoekers', 'BEZ', 0, 0,'Om ontvangst van verwachte bezoekers te kunnen registreren');
DEF_FAC_FUNCTIE2('WEB_PRSMAN', 'Backoffice:Personenbeheer', 'PRS', 7, 0,'Om medewerkers te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_PRSUSE', 'Backoffice:Persoonsgegevens','PRS', 7, 0,'Om additionele gegevens van medewerkers te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_RELMAN', 'Backoffice:Relatiebeheer', 'PRS', 3, 0,'Om de gegevens van externe relaties/bedrijven te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_ALGMAN', 'Backoffice:Vastgoedbeheer', 'ALG', 11, 0,'Om de vastgoedgegevens te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_ALGUSE', 'Backoffice:Ruimtegebruik', 'ALG', 15, 0,'Om het ruimtegebruik te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_OBJMAN', 'Backoffice:Objectbeheer', 'INS', 15, 1,'Om objectgegevens te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_OBJUSE', 'Backoffice:Objectgebruik', 'INS', 11, 1,'Om ge/verbruiksgegevens van objecten te registreren');
DEF_FAC_FUNCTIE('WEB_SLEBOF', 'Backoffice:Sleutelbeheer', 'SLE', 0, 0,'Om cilinders en sleutels te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_CNTBUS', 'Backoffice:Contracten', 'CNT', 0, 0,'Om contractgegevens te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_SCHBOF', 'Backoffice:Schoonmaakprogramma','SCH', 0, 0,'Om schoonmaakprogramma''s te kunnen beheren');
DEF_FAC_FUNCTIE('WEB_MRKBOF', 'Backoffice:Marktplaats', 'MRK', 0, 0, 'Om berichten op marktplaats te beheren.');
DEF_FAC_FUNCTIE2('WEB_RELMAN', 'Backoffice:Relatiebeheer', 'PRS', 3, 0,'Om de gegevens van externe relaties/bedrijven te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_ALGMAN', 'Backoffice:Vastgoedbeheer', 'ALG', 11, 0,'Om de vastgoedgegevens te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_ALGUSE', 'Backoffice:Ruimtegebruik', 'ALG', 15, 0,'Om het ruimtegebruik te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_OBJMAN', 'Backoffice:Objectbeheer', 'INS', 15, 1,'Om objectgegevens te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_OBJUSE', 'Backoffice:Objectgebruik', 'INS', 11, 1,'Om ge/verbruiksgegevens van objecten te registreren');
DEF_FAC_FUNCTIE2('WEB_SLEBOF', 'Backoffice:Sleutelbeheer', 'SLE', 0, 0,'Om cilinders en sleutels te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_CNTBUS', 'Backoffice:Contracten', 'CNT', 0, 0,'Om contractgegevens te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_SCHBOF', 'Backoffice:Schoonmaakprogramma','SCH', 0, 0,'Om schoonmaakprogramma''s te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_MRKBOF', 'Backoffice:Marktplaats', 'MRK', 0, 0, 'Om berichten op marktplaats te beheren.');
/* Management Info functions */
DEF_FAC_FUNCTIE('WEB_RESBAC', 'Info:Reserveringen', 'RES', 13, 1,'Om historische gegevens m.b.t. reservingen te kunnen raadplegen');
DEF_FAC_FUNCTIE('WEB_MLDBAC', 'Info:ServiceDesk', 'MLD', 5, 1,'Om historische gegevens m.b.t. meldingen en opdrachten te kunnen raadplegen');
DEF_FAC_FUNCTIE('WEB_BESBAC', 'Info:Bestellingen', 'BES', 5, 1,'Om historische gegevens m.b.t. bestellingen te kunnen raadplegen');
DEF_FAC_FUNCTIE('WEB_USRRAP', 'Info:Rapportages', 'REP', 0, 0,'Om voorgedefinieerde (vaste) rapportages te kunnen uitvoeren');
DEF_FAC_FUNCTIE2('WEB_RESBAC', 'Info:Reserveringen', 'RES', 13, 1,'Om historische gegevens m.b.t. reservingen te kunnen raadplegen');
DEF_FAC_FUNCTIE2('WEB_MLDBAC', 'Info:ServiceDesk', 'MLD', 5, 1,'Om historische gegevens m.b.t. meldingen en opdrachten te kunnen raadplegen');
DEF_FAC_FUNCTIE2('WEB_BESBAC', 'Info:Bestellingen', 'BES', 5, 1,'Om historische gegevens m.b.t. bestellingen te kunnen raadplegen');
DEF_FAC_FUNCTIE2('WEB_USRRAP', 'Info:Rapportages', 'REP', 0, 0,'Om voorgedefinieerde (vaste) rapportages te kunnen uitvoeren');
DEF_FAC_FUNCTIE('WEB_HLPADM', 'Beheer:WebHelp aanpassen', 'FAC', 0, 0,'Om als beheerder de Helpteksten aan te kunnen passen');
DEF_FAC_FUNCTIE('WEB_PRSSYS', 'Beheer:Gebruikersbeheer', 'FAC', 0, 0,'Om als beheerder de gebruikers te kunnen beheren');
DEF_FAC_FUNCTIE2('WEB_HLPADM', 'Beheer:WebHelp aanpassen', 'FAC', 0, 0,'Om als beheerder de Helpteksten aan te kunnen passen');
DEF_FAC_FUNCTIE2('WEB_PRSSYS', 'Beheer:Gebruikersbeheer', 'FAC', 0, 0,'Om als beheerder de gebruikers te kunnen beheren');
/* Message functions */
DEF_FAC_FUNCTIE('WEB_MSGBOF', 'Info:Berichten', 'FAC', 0, 0,'Om berichten te verzenden naar (groepen) personen die bekend zijn in Facilitor.');
DEF_FAC_FUNCTIE2('WEB_MSGBOF', 'Info:Berichten', 'FAC', 0, 0,'Om berichten te verzenden naar (groepen) personen die bekend zijn in Facilitor.');
/* User functions */
DEF_FAC_FUNCTIE('WEB_USER01', 'Overig 01', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 01');
DEF_FAC_FUNCTIE('WEB_USER02', 'Overig 02', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 02');
DEF_FAC_FUNCTIE('WEB_USER03', 'Overig 03', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 03');
DEF_FAC_FUNCTIE('WEB_USER04', 'Overig 04', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 04');
DEF_FAC_FUNCTIE('WEB_USER05', 'Overig 05', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 05');
DEF_FAC_FUNCTIE('WEB_USER06', 'Overig 06', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 06');
DEF_FAC_FUNCTIE('WEB_USER07', 'Overig 07', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 07');
DEF_FAC_FUNCTIE('WEB_USER08', 'Overig 08', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 08');
DEF_FAC_FUNCTIE('WEB_USER09', 'Overig 09', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 09');
DEF_FAC_FUNCTIE('WEB_USER10', 'Overig 10', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 10');
DEF_FAC_FUNCTIE2('WEB_USER01', 'Overig 01', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 01');
DEF_FAC_FUNCTIE2('WEB_USER02', 'Overig 02', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 02');
DEF_FAC_FUNCTIE2('WEB_USER03', 'Overig 03', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 03');
DEF_FAC_FUNCTIE2('WEB_USER04', 'Overig 04', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 04');
DEF_FAC_FUNCTIE2('WEB_USER05', 'Overig 05', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 05');
DEF_FAC_FUNCTIE2('WEB_USER06', 'Overig 06', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 06');
DEF_FAC_FUNCTIE2('WEB_USER07', 'Overig 07', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 07');
DEF_FAC_FUNCTIE2('WEB_USER08', 'Overig 08', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 08');
DEF_FAC_FUNCTIE2('WEB_USER09', 'Overig 09', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 09');
DEF_FAC_FUNCTIE2('WEB_USER10', 'Overig 10', 'WEB', 15, 1, 'Zelfdefinieerbare autorisatiefunctie 10');
/* Labels en messages */