Files
Database/PRS/PRS_TAB.SRC
Peter Feij 766af780de FSN#18275
svn path=/Database/trunk/; revision=10391
2010-09-06 13:11:52 +00:00

887 lines
29 KiB
Plaintext

#ifdef PRS // 13-03-96 AH
/* PRS_TAB.SRC
* $Revision: 130 $
* $Modtime: 6-09-10 14:59 $
*/
CREATE_TABLE(prs_bedrijf,0)
(
prs_bedrijf_key
NUMBER(10) _IDENTITY(10000000,1)
CONSTRAINT prs_k_prs_bedrijf_key PRIMARY KEY,
prs_bedrijf_naam
VARCHAR2(60)
NOT_NULL(prs_bedrijf_naam, prs_c_prs_bedrijf_naam),
prs_bedrijf_naam_upper
VARCHAR2(60)
NOT_NULL(prs_bedrijf_naam_upper, prs_c_prs_bedrijf_naam_upper),
prs_bedrijf_post_adres
VARCHAR2(35),
prs_bedrijf_post_postcode
VARCHAR2(12),
prs_bedrijf_post_plaats
VARCHAR2(30),
prs_bedrijf_post_land
VARCHAR2(30),
prs_bedrijf_bezoek_adres
VARCHAR2(35),
prs_bedrijf_bezoek_postcode
VARCHAR2(12),
prs_bedrijf_bezoek_plaats
VARCHAR2(30),
prs_bedrijf_bezoek_land
VARCHAR2(30),
prs_bedrijf_telefoon
VARCHAR2(20),
prs_bedrijf_fax
VARCHAR2(20),
prs_bedrijf_telefoon2
VARCHAR2(20),
prs_bedrijf_contact_persoon
VARCHAR2(30),
prs_bedrijf_contact_telefoon
VARCHAR2(20),
prs_bedrijf_contact_fax
VARCHAR2(20),
prs_bedrijf_opmerking
VARCHAR2(320),
prs_bedrijf_opmerking2
VARCHAR2(320),
prs_bedrijf_uurloon
NUMBER(6,2),
prs_leverancier_nr
VARCHAR2(50),
prs_overeenkomst_nr
VARCHAR2(20),
prs_overeenkomst_datum
DATE,
prs_bedrijf_email
VARCHAR2(100),
prs_bedrijf_XSL
VARCHAR2(256),
prs_bedrijf_order_adres
VARCHAR2(256),
prs_bedrijf_order_mode /* tbv mail: 1=attachment, 0=in body */
NUMBER(1) DEFAULT 0,
prs_bedrijf_order_certificate
VARCHAR2(255),
prs_bedrijf_mldorder_adres
VARCHAR2(256),
prs_bedrijf_image_loc
VARCHAR2(256),
prs_bedrijf_details_loc
VARCHAR2(256),
prs_bedrijf_xmldetails_loc
VARCHAR2(256),
prs_bedrijf_xmlcatalogus_loc
VARCHAR2(256),
prs_bedrijf_bes_limiet
NUMBER(8,2),
prs_bedrijf_bes_kosten
NUMBER(8,2),
prs_bedrijf_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_bedrijf_aanmaak, prs_c_prs_bedrijf_aanmaak),
prs_bedrijf_verwijder
DATE
DEFAULT NULLDATUM,
prs_bedrijf_leverancier -- bedrijf is leverancier (o.a. voor LEV)
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_leverancier CHECK(prs_bedrijf_leverancier IS NULL
OR prs_bedrijf_leverancier = 1 ),
prs_bedrijf_uitvoerende /* bedrijf is uitvoerende in opdrachten */
NUMBER(1)
DEFAULT 1 /* LOG#1691 */
CONSTRAINT prs_c_prs_bedrijf_uitvoerende CHECK(prs_bedrijf_uitvoerende IS NULL
OR prs_bedrijf_uitvoerende = 1 ),
prs_bedrijf_contract /* een contract kan worden afgesloten met bedrijf */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_contract CHECK(prs_bedrijf_contract IS NULL
OR prs_bedrijf_contract = 1 ),
prs_bedrijf_intern /* is onderdeel van de eigen organisatie */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_intern CHECK(prs_bedrijf_intern IS NULL
OR prs_bedrijf_intern = 1 ),
prs_bedrijf_huurder /* is onderdeel van de eigen organisatie */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_huurder CHECK(prs_bedrijf_huurder IS NULL
OR prs_bedrijf_huurder = 1 ),
prs_bedrijf_ingids /* is zichtbaar in telefoongids */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_ingids CHECK(prs_bedrijf_ingids IS NULL
OR prs_bedrijf_ingids = 1 ),
CONSTRAINT prs_u_prs_bedrijf_naam_upper UNIQUE(prs_bedrijf_naam_upper, prs_bedrijf_verwijder)
);
ALTER TABLE ins_srtdeel
ADD
(
prs_bedrijf_key
NUMBER(10)
CONSTRAINT bes_r_prs_bedrijf_key2 REFERENCES prs_bedrijf(prs_bedrijf_key)
);
CREATE_TABLE(prs_kostenplaatsgrp,0) (
prs_kostenplaatsgrp_key
NUMBER (10) PRIMARY KEY,
prs_kostenplaatsgrp_oms
VARCHAR2(60)
NOT NULL
--, prs_perslid_key
-- NUMBER(10)
-- CONSTRAINT prs_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key)
);
CREATE_TABLE(prs_kostenplaats,0) (
prs_kostenplaats_key
NUMBER (10) PRIMARY KEY,
prs_kostenplaats_nr
VARCHAR2(30) NOT NULL,
prs_kostenplaats_upper
VARCHAR2(30),
prs_kostenplaats_omschrijving
VARCHAR2(60),
-- prs_perslid_key
-- NUMBER(10)
-- CONSTRAINT prs_r_prs_perslid_key9 REFERENCES prs_perslid(prs_perslid_key),
prs_kostenplaats_module
VARCHAR2(3) NOT NULL
CONSTRAINT prs_c_prs_kostenplaats CHECK (prs_kostenplaats_module IN ('PRS', 'ALG', 'PRJ')),
prs_kostenplaats_begin
DATE DEFAULT SYSDATE,
prs_kostenplaats_eind
DATE,
prs_kostenplaatsgrp_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaatsgrp_key REFERENCES prs_kostenplaatsgrp(prs_kostenplaatsgrp_key) ON DELETE SET NULL,
prs_kostenplaats_aanmaak
DATE DEFAULT SYSDATE,
prs_kostenplaats_verwijder
DATE,
CONSTRAINT prs_u_prs_kostenplaats_upper UNIQUE(prs_kostenplaats_upper, prs_kostenplaats_verwijder)
);
ALTER TABLE alg_gebouw ADD
(
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT alg_r_prs_afdeling_kostenp1 REFERENCES prs_kostenplaats(prs_kostenplaats_key)
);
ALTER TABLE alg_terreinsector ADD
(
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT alg_r_prs_afdeling_kostenp2 REFERENCES prs_kostenplaats(prs_kostenplaats_key)
);
CREATE_TABLE(prs_afdeling,0)
(
prs_afdeling_key
NUMBER(10)
CONSTRAINT prs_k_prs_afdeling_key PRIMARY KEY,
prs_bedrijf_key
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key3 REFERENCES prs_bedrijf(prs_bedrijf_key),
prs_afdeling_parentkey
NUMBER(10)
CONSTRAINT prs_r_prs_afdeling_parentkey REFERENCES prs_afdeling(prs_afdeling_key),
prs_afdeling_naam
VARCHAR2(10)
NOT_NULL(prs_afdeling_naam, prs_c_prs_afdeling_naam),
prs_afdeling_upper
VARCHAR2(10)
NOT_NULL(prs_afdeling_upper, prs_c_prs_afdeling_upper),
prs_afdeling_omschrijving
VARCHAR2(60),
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT alg_r_prs_afdeling_kostenp REFERENCES prs_kostenplaats(prs_kostenplaats_key),
-- mld_adres_key
-- NUMBER(10)
-- CONSTRAINT alg_r_mld_adres_key2 REFERENCES mld_adres(mld_adres_key),
prs_afdeling_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_afdeling_aanmaak, prs_c_prs_afdeling_aanmaak),
prs_afdeling_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_prs_afdeling_upper UNIQUE(prs_afdeling_upper, prs_afdeling_parentkey, prs_bedrijf_key, prs_afdeling_verwijder),
CONSTRAINT prs_c_prs_afdeling_parent
CHECK ((prs_afdeling_parentkey IS NULL AND prs_bedrijf_key IS NOT NULL)
OR (prs_afdeling_parentkey IS NOT NULL AND prs_bedrijf_key IS NULL))
);
CREATE_TABLE(prs_srtperslid,0)
(
prs_srtperslid_key
NUMBER(10)
CONSTRAINT prs_k_prs_srtperslid_key PRIMARY KEY,
prs_srtperslid_omschrijving
VARCHAR2(60)
NOT_NULL(prs_srtperslid_omschrijving, prs_c_prs_srtperslid_omschr),
prs_srtperslid_upper
VARCHAR2(60)
NOT_NULL(prs_srtperslid_upper, prs_c_prs_srtperslid_upper),
prs_bedrijf_key
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key REFERENCES prs_bedrijf(prs_bedrijf_key),
prs_srtperslid_uurloon
NUMBER(6,2),
prs_srtperslid_opp
NUMBER(9,2)
CONSTRAINT prs_c_prs_srtperslid_opp CHECK(prs_srtperslid_opp >= 0),
prs_srtperslid_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_srtperslid_aanmaak, prs_c_prs_srtperslid_aanmaak),
prs_srtperslid_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_prs_srtperslid_upper UNIQUE(prs_srtperslid_upper, prs_srtperslid_verwijder)
);
CREATE_TABLE(prs_werkplek,0)
(
prs_werkplek_key
NUMBER(10)
CONSTRAINT prs_k_prs_werkplek_key PRIMARY KEY,
prs_werkplek_module
VARCHAR2(3),
prs_werkplek_volgnr
NUMBER(3)
NOT_NULL(prs_werkplek_volgnr, prs_c_prs_werkplek_volgnr),
prs_werkplek_omschrijving
VARCHAR2(30),
prs_werkplek_vastopp
NUMBER(1)
CONSTRAINT prs_c_prs_werkplek_vastopp CHECK(prs_werkplek_vastopp IS NULL
OR prs_werkplek_vastopp = 1),
prs_werkplek_opp
NUMBER(8,2)
CONSTRAINT prs_c_prs_werkplek_opp CHECK(prs_werkplek_opp >= 0
OR prs_werkplek_opp IS NULL),
prs_werkplek_virtueel
NUMBER(1)
DEFAULT 0
CONSTRAINT prs_c_werkplek_virtueel1 CHECK (prs_werkplek_virtueel=0 OR prs_werkplek_virtueel=1),
prs_alg_ruimte_key
NUMBER(10)
NOT_NULL(prs_alg_ruimte_key, prs_r_prs_alg_ruimte_key1),
-- CONSTRAINT prs_r_prs_alg_ruimte_key2 REFERENCES alg_ruimte(alg_ruimte_key),
prs_werkplek_dwgx
NUMBER(10,3),
prs_werkplek_dwgy
NUMBER(10,3),
prs_werkplek_dwgz
NUMBER(10,3),
prs_werkplek_dwgrotatie
NUMBER(5,1),
prs_werkplek_dwgschaal
NUMBER(5,2),
prs_werkplek_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_werkplek_aanmaak, prs_c_prs_werkplek_aanmaak),
prs_werkplek_verwijder
DATE
DEFAULT NULLDATUM,
prs_werkplek_getekend
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_prs_werkplek_volgnr UNIQUE(prs_alg_ruimte_key, prs_werkplek_volgnr, prs_werkplek_verwijder)
);
CREATE_TABLE(prs_perslid,0)
(
prs_perslid_key
NUMBER(10)
CONSTRAINT prs_k_prs_perslid_key PRIMARY KEY,
prs_perslid_module
VARCHAR2(3),
prs_srtperslid_key
NUMBER(10)
NOT_NULL(prs_srtperslid_key, prs_r_prs_srtperslid_key1)
CONSTRAINT prs_r_prs_srtperslid_key2 REFERENCES prs_srtperslid(prs_srtperslid_key),
prs_afdeling_key
NUMBER(10)
NOT_NULL(prs_afdeling_key, prs_c_prs_prs_afdeling_key)
CONSTRAINT prs_r_prs_afdeling_key REFERENCES prs_afdeling(prs_afdeling_key),
prs_perslid_naam
VARCHAR2(30)
NOT_NULL(prs_perslid_naam, prs_c_prs_perslid_naam),
prs_perslid_upper
VARCHAR2(30)
NOT_NULL(prs_perslid_upper, prs_c_prs_perslid_upper),
prs_perslid_tussenvoegsel
VARCHAR2(15),
prs_perslid_voorletters
VARCHAR2(10),
prs_perslid_voornaam
VARCHAR2(30),
prs_perslid_titel
VARCHAR2(15),
prs_perslid_initialen
VARCHAR2(10),
prs_perslid_init_upper
VARCHAR2(10),
prs_perslid_nr
VARCHAR2(16),
prs_perslid_oslogin
VARCHAR2(30)
CONSTRAINT prs_c_prs_perslid_oslogin UNIQUE,
prs_perslid_oslogin2
VARCHAR2(30)
CONSTRAINT prs_c_prs_perslid_oslogin2 UNIQUE,
prs_perslid_wachtwoord
VARCHAR2(30),
prs_perslid_wachtwoord_exp
DATE,
prs_perslid_authenticatie
VARCHAR2(128),
prs_perslid_authenticatie_exp
DATE,
prs_perslid_lang
VARCHAR2(3),
prs_perslid_dienstverband
NUMBER(3)
DEFAULT 100
CONSTRAINT prs_c_prs_perslid_dienstverb CHECK(prs_perslid_dienstverband BETWEEN 0 AND 100),
prs_perslid_opp
NUMBER(9,2)
CONSTRAINT prs_c_prs_perslid_opp CHECK(prs_perslid_opp >= 0),
prs_perslid_ingangsdatum
DATE
DEFAULT SYSDATE
NOT_NULL(prs_perslid_ingangsdatum, prs_c_prs_perslid_ingangsdatum),
prs_perslid_einddatum
DATE,
prs_perslid_uurloon
NUMBER(6,2)
CONSTRAINT prs_c_prs_perslid_uurloon CHECK(NVL(prs_perslid_uurloon, 0) >= 0),
prs_perslid_telefoonnr
VARCHAR2(15),
prs_perslid_mobiel
VARCHAR2(15),
prs_perslid_email
VARCHAR2(200),
fac_profiel_key
NUMBER (10)
CONSTRAINT prs_r_fac_profiel_key REFERENCES fac_profiel(fac_profiel_key),
// persoonlijke srtnotificatie-mode indien de fac_srtnotificatie.fac_srtnotificatie_usermode=1
// voor een notificatie die aan mij gericht is.
prs_perslid_srtnoti_mode
NUMBER(3),
-- mld_adres_key
-- NUMBER(10)
-- CONSTRAINT prs_r_mld_adres_key2 REFERENCES mld_adres(mld_adres_key),
prs_perslid_login
DATE,
prs_perslid_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_perslid_aanmaak, prs_c_prs_perslid_aanmaak),
prs_perslid_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_c_prs_perslid_datums CHECK(prs_perslid_einddatum >= prs_perslid_ingangsdatum)
);
// Without this column, that table is useless, but we must define it here, after prs_perslid.
ALTER TABLE fac_gebruikersgroep ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
CONSTRAINT fac_c_prs_perslid_key CHECK(prs_perslid_key IS NOT NULL)
);
ALTER TABLE fac_perfmon_sample ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key1 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_notificatie ADD(
prs_perslid_key_sender
NUMBER(10)
REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
prs_perslid_key_receiver
NUMBER(10)
REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_activiteit ADD (
prs_perslid_key
NUMBER (10)
REFERENCES prs_perslid(prs_perslid_key),
fac_activiteit_user_key
NUMBER(10)
REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE fac_tracking ADD (
prs_perslid_key
NUMBER (10)
REFERENCES prs_perslid (prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE fac_nieuws ADD (
prs_perslid_key
NUMBER(10)
REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE fac_faq ADD (
prs_perslid_key
NUMBER(10)
REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE prs_kostenplaatsgrp ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE prs_kostenplaats ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key9 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE fac_setting ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT prs_perslid_key12 REFERENCES prs_perslid (prs_perslid_key)
);
COMMENT ON COLUMN prs_kostenplaats.prs_perslid_key IS 'Budgethouder';
// key_alt is een vervanger voor key als frontend
// Dit is een operationele tabel, verwijderveld zinloos
//
CREATE_TABLE(prs_collega,0)
(
prs_collega_key
NUMBER(10)
CONSTRAINT prs_k_prs_collega_key PRIMARY KEY,
prs_perslid_key
NUMBER(10)
NOT_NULL(prs_perslid_key, prs_r_prs_perslid_key12)
CONSTRAINT prs_r_prs_perslid_key13 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
prs_perslid_key_alt
NUMBER(10)
NOT_NULL(prs_perslid_key_alt, prs_r_prs_perslid_key14)
CONSTRAINT prs_r_prs_perslid_key15 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
prs_collega_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_collega_aanmaak, prs_c_prs_collega_aanmaak)
);
CREATE_TABLE(prs_perslidkostenplaats,0)
(
prs_perslidkostenplaats_key
NUMBER(10) PRIMARY KEY,
prs_perslid_key
NUMBER(10) NOT NULL
CONSTRAINT prs_r_prs_perslid_key10 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaats_key1 REFERENCES prs_kostenplaats(prs_kostenplaats_key) ON DELETE CASCADE,
prs_perslidkostenplaats_boeken
NUMBER(1)
DEFAULT 1
CONSTRAINT prs_c_prs_pkp_boeken CHECK(prs_perslidkostenplaats_boeken IN (0,1)),
prs_perslidkostenplaats_inzage
NUMBER(1)
DEFAULT 1
CONSTRAINT prs_c_prs_pkp_inzage CHECK(prs_perslidkostenplaats_inzage IN (0,1))
);
// Had voor hetzelfde geld prs_afdelingruimte geheten
CREATE_TABLE(prs_ruimteafdeling,0)
(
prs_ruimteafdeling_key
NUMBER(10)
CONSTRAINT prs_k_prs_ruimteafdeling_key PRIMARY KEY,
prs_afdeling_key
NUMBER(10)
NOT_NULL(prs_afdeling_key, prs_c_prs_afdeling_key3)
CONSTRAINT prs_r_prs_ra_afdeling_key REFERENCES prs_afdeling(prs_afdeling_key),
alg_ruimte_key
NUMBER(10)
NOT_NULL(alg_ruimte_key, prs_c_alg_ruimte_key)
CONSTRAINT prs_r_alg_ruimte_key1 REFERENCES alg_ruimte(alg_ruimte_key),
prs_ruimteafdeling_bezetting
NUMBER(3)
DEFAULT 100
CONSTRAINT prs_c_prs_riumteafd_bezetting2 CHECK
(prs_ruimteafdeling_bezetting is not null AND prs_ruimteafdeling_bezetting BETWEEN 0 AND 100),
prs_ruimteafdeling_aanmaak
DATE
DEFAULT SYSDATE,
prs_ruimteafdeling_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_ruimteafdeling UNIQUE(prs_afdeling_key, alg_ruimte_key, prs_ruimteafdeling_verwijder)
);
CREATE_TABLE(prs_perslidwerkplek,0)
(
prs_perslidwerkplek_key
NUMBER(10)
CONSTRAINT prs_k_prs_perslidwerkplek_key PRIMARY KEY,
prs_perslid_key
NUMBER(10)
NOT_NULL(prs_perslid_key, prs_c_prs_perslid_key3)
CONSTRAINT prs_r_prs_perslid_key REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
// prs_afdeling_key
// NUMBER(10)
// CONSTRAINT prs_r_prs_pw_afdeling_key REFERENCES prs_afdeling(prs_afdeling_key),
prs_werkplek_key
NUMBER(10)
NOT_NULL(prs_werkplek_key, prs_c_prs_perslidwp_key)
CONSTRAINT prs_r_prs_werkplek_key REFERENCES prs_werkplek(prs_werkplek_key),
prs_perslidwerkplek_bezetting
NUMBER(3)
DEFAULT 100
CONSTRAINT prs_c_prs_perslidwp_bezetting2 CHECK
(prs_perslidwerkplek_bezetting is not null and prs_perslidwerkplek_bezetting BETWEEN 0 AND 100),
prs_perslidwerkplek_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_perslidwerkplek_aanmaak, prs_c_prs_perslidwp_aanmaak),
prs_perslidwerkplek_verwijder
DATE
DEFAULT NULLDATUM,
// CONSTRAINT prs_c_prs_perslidwp_koppeling CHECK(
// (prs_perslid_key IS NULL AND prs_afdeling_key IS NOT NULL) OR
// (prs_afdeling_key IS NULL AND prs_perslid_key IS NOT NULL)
// ),
CONSTRAINT prs_u_perslidwerkplek UNIQUE(prs_perslid_key, prs_werkplek_key, prs_perslidwerkplek_verwijder)
);
CREATE_TABLE(prs_refkenmerk,0)
(prs_refkenmerk_key
NUMBER(10)
CONSTRAINT prs_k_prs_refkenmerk_key PRIMARY KEY
,prs_refkenmerk_omschrijving
VARCHAR2(50)
CONSTRAINT prs_c_prs_refkenm_omschr CHECK(prs_refkenmerk_omschrijving IS NOT NULL)
,prs_refkenmerk_upper
VARCHAR2(50)
CONSTRAINT prs_c_prs_refkenm_upper CHECK(prs_refkenmerk_upper IS NOT NULL)
CONSTRAINT prs_u_prs_refkenmerk_upper UNIQUE
,prs_refkenmerk_objectnaam
VARCHAR2(2000)
CONSTRAINT prs_c_prs_refkenm_objnaam CHECK(prs_refkenmerk_objectnaam IS NOT NULL)
,prs_refkenmerk_kolomnaam
VARCHAR2(30)
CONSTRAINT prs_c_prs_refkenm_kolnaam CHECK(prs_refkenmerk_kolomnaam IS NOT NULL)
,prs_refkenmerk_kolomtxt
VARCHAR2(30)
CONSTRAINT prs_c_prs_refkenm_kolomtxt CHECK(prs_refkenmerk_kolomtxt IS NOT NULL)
,fac_usrtab_key
NUMBER(10)
CONSTRAINT fac_r_fac_usrtab_key4 REFERENCES fac_usrtab(fac_usrtab_key)
,prs_refkenmerk_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_refkenmerk_aanmaak, prs_c_prs_refkenmerk_aanmaak)
,prs_refkenmerk_verwijder
DATE
DEFAULT NULLDATUM
);
CREATE_TABLE(prs_kenmerk,0)
(prs_kenmerk_key
NUMBER(10)
CONSTRAINT prs_k_prs_kenmerk_key PRIMARY KEY
,prs_kenmerk_niveau
VARCHAR2(1)
CONSTRAINT prs_c_prs_kenmerk_niveau2 CHECK
(prs_kenmerk_niveau IS NOT NULL and prs_kenmerk_niveau IN ('P','A','B','C'))
,prs_kenmerk_volgnr
NUMBER(3)
,prs_kenmerk_omschrijving
VARCHAR2(50)
,prs_kenmerk_upper
VARCHAR2(50)
,prs_kenmerk_hint
VARCHAR2(255)
,prs_kenmerk_default
VARCHAR2(255)
,prs_kenmerk_dimensie
VARCHAR2(10)
,prs_kenmerk_kenmerktype
VARCHAR2(1)
CONSTRAINT prs_c_prs_kenmerk_type2 CHECK
(prs_kenmerk_kenmerktype IN ('C','N','D','R','X','L','Q','F','M','E','S'))
,prs_kenmerk_systeem
NUMBER(1)
,prs_kenmerk_toonbaar
NUMBER(1)
,prs_kenmerk_uniek
NUMBER(1)
,prs_kenmerk_verplicht
NUMBER(1)
,prs_kenmerk_lengte
NUMBER(3)
,prs_kenmerk_dec
NUMBER(2)
,prs_kenmerk_nmin
NUMBER(10)
,prs_kenmerk_nmax
NUMBER(10)
,prs_refkenmerk_key
NUMBER(10)
CONSTRAINT prs_r_refkenmerk_key1 REFERENCES prs_refkenmerk(prs_refkenmerk_key)
,prs_kenmerk_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_kenmerk_aanmaak, prs_c_prs_kenmerk_aanmaak)
,prs_kenmerk_verwijder
DATE
DEFAULT NULLDATUM
,CONSTRAINT prs_r_refkenmerk_key2 CHECK(prs_kenmerk_kenmerktype <> 'R' OR prs_refkenmerk_key IS NOT NULL)
);
CREATE_TABLE(prs_kenmerklink,0)
(prs_kenmerkLink_key
NUMBER(10)
CONSTRAINT prs_k_prs_kenmerklink_key PRIMARY KEY
,prs_link_key
NUMBER(10)
,prs_kenmerklink_niveau
VARCHAR2(1)
,prs_kenmerk_key
NUMBER(10),
CONSTRAINT prs_u_prs_kenmerklink_key UNIQUE(prs_link_key, prs_kenmerk_key)
,prs_kenmerklink_waarde
VARCHAR2(255)
,prs_kenmerklink_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_kenmerklink_aanmaak, prs_c_prs_kenmerklink_aanm)
,prs_kenmerklink_verwijder
DATE
DEFAULT NULLDATUM
);
CREATE_TABLE(prs_perslideenheid, 0)
(
prs_perslideenheid_key
NUMBER(10)
PRIMARY KEY,
prs_perslid_key
NUMBER(10)
NOT_NULL(prs_perslid_key, prs_c_prs_perslid_key1)
CONSTRAINT prs_r_prs_perslid_key7 REFERENCES prs_perslid(prs_perslid_key),
prs_afdeling_key
NUMBER(10)
NOT_NULL(prs_afdeling_key, prs_c_prs_afdeling_key2)
CONSTRAINT prs_r_prs_afdeling_key3 REFERENCES prs_afdeling(prs_afdeling_key),
CONSTRAINT prs_u_prs_perslideenheid_key UNIQUE (prs_perslid_key, prs_afdeling_key)
);
CREATE_TABLE(prs_perslidafdeling, 0)
(
prs_perslidafdeling_key
NUMBER(10)
PRIMARY KEY,
prs_perslid_key
NUMBER(10)
NOT_NULL(prs_perslid_key, prs_c_prs_perslid_key2)
CONSTRAINT prs_r_prs_perslid_key6 REFERENCES prs_perslid(prs_perslid_key),
prs_afdeling_key
NUMBER(10)
NOT_NULL(prs_afdeling_key, prs_c_prs_afdeling_key)
CONSTRAINT prs_r_prs_afdeling_key2 REFERENCES prs_afdeling(prs_afdeling_key),
CONSTRAINT prs_u_prs_perslidafdeling_key UNIQUE (prs_perslid_key, prs_afdeling_key)
);
CREATE_TABLE(prs_contactpersoon, 0)
(
prs_contactpersoon_key
NUMBER(10)
PRIMARY KEY,
prs_contactpersoon_naam
VARCHAR2(30)
NOT_NULL(prs_contactpersoon_naam, prs_c_contactpersoon_naam),
prs_contactpersoon_tussenv
VARCHAR2(15),
prs_contactpersoon_voorletters
VARCHAR2(10),
prs_contactpersoon_voornaam
VARCHAR2(30),
prs_contactpersoon_aanhef
VARCHAR2(30),
prs_contactpersoon_titel
VARCHAR2(10),
prs_contactpersoon_telefoon_1
VARCHAR2(30),
prs_contactpersoon_telefoon_2
VARCHAR2(30),
prs_contactpersoon_fax
VARCHAR2(30),
prs_contactpersoon_email
VARCHAR2(50),
prs_contactpersoon_functie
VARCHAR2(30),
prs_contactpersoon_opmerking
VARCHAR2(255),
prs_bedrijf_key
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key4 REFERENCES prs_bedrijf(prs_bedrijf_key),
prs_perslid_key /* kan eventueel een Facilitor user zijn */
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key16 REFERENCES prs_perslid(prs_perslid_key)
);
CREATE_TABLE(prs_contactpersoon_locatie, 0)
(
prs_contactpersoon_locatie_key
NUMBER(10)
PRIMARY KEY,
prs_contactpersoon_key
NUMBER(10)
CONSTRAINT prs_r_prs_contactpersoon_key REFERENCES prs_contactpersoon(prs_contactpersoon_key) ON DELETE CASCADE,
alg_locatie_key
NUMBER(10)
CONSTRAINT prs_r_alg_locatie_key3 REFERENCES alg_locatie(alg_locatie_key)
);
CREATE_TABLE(prs_dienst, 0)
(
prs_dienst_key
NUMBER(10)
PRIMARY KEY,
prs_dienst_omschrijving
VARCHAR2(60)
NOT_NULL(prs_dienst_omschrijving, prs_c_prs_dienst_omschrijving)
CONSTRAINT prs_c_prs_dienst_omschr UNIQUE
);
CREATE_TABLE(prs_bedrijfdienstlocatie, 0) /* intussen feitelijk prs_bedrijfdienstgebouw_of_locatie */
(
prs_bedrijfdienstlocatie_key
NUMBER(10)
PRIMARY KEY,
prs_bedrijf_key
NUMBER(10)
NOT_NULL(prs_bedrijf_key, prs_c_prs_bedrijf_key2)
CONSTRAINT prs_r_prs_bedrijf_key5 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE,
prs_dienst_key
NUMBER(10)
NOT_NULL(prs_dienst_key, prs_c_prs_dienst_key1)
CONSTRAINT prs_r_prs_dienst_key1 REFERENCES prs_dienst(prs_dienst_key) ON DELETE CASCADE,
alg_locatie_key
NUMBER(10)
CONSTRAINT prs_r_alg_locatie_key4 REFERENCES alg_locatie(alg_locatie_key) ON DELETE CASCADE,
alg_gebouw_key
NUMBER(10)
CONSTRAINT prs_r_alg_gebouw_key1 REFERENCES alg_gebouw(alg_gebouw_key) ON DELETE CASCADE,
CONSTRAINT prs_u_prs_bedrijfdienstloc_key UNIQUE (prs_bedrijf_key, prs_dienst_key, alg_locatie_key, alg_gebouw_key),
CONSTRAINT prs_c_prs_bedrijfdienstloc CHECK (alg_locatie_key IS NULL OR alg_gebouw_key IS NULL)
);
CREATE_TABLE(prs_project,0) (
prs_project_key
NUMBER(10) PRIMARY KEY,
prs_project_omschrijving
VARCHAR2(60)
NOT NULL,
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaats_key2 REFERENCES prs_kostenplaats(prs_kostenplaats_key)
-- mld_adres_key
-- NUMBER(10)
-- CONSTRAINT prs_r_mld_adres_key3 REFERENCES mld_adres(mld_adres_key)
);
CREATE_TABLE(prs_kostensoortgrp,0) (
prs_kostensoortgrp_key
NUMBER (10) PRIMARY KEY,
prs_kostensoortgrp_oms
VARCHAR2(60)
NOT NULL
);
CREATE_TABLE(prs_kostensoort,0) (
prs_kostensoort_key
NUMBER (10) PRIMARY KEY,
prs_kostensoort_oms -- code
VARCHAR2(60)
NOT NULL,
prs_kostensoort_upper
VARCHAR2(60),
prs_kostensoort_opmerking -- omschrijving
VARCHAR2(255),
prs_kostensoort_refcode -- bv grootboeknr
VARCHAR2(60),
prs_kostensoort_doorbelasten -- 1=Ja
NUMBER(1) DEFAULT(1)
CONSTRAINT prs_c_prs_kostensoort_doorbel CHECK(prs_kostensoort_doorbelasten IN (0,1)),
prs_kostensoort_btw -- BTW doorbelasten 1=Incl.
NUMBER(1) DEFAULT(1)
CONSTRAINT prs_c_prs_kostensoort_btw CHECK(prs_kostensoort_btw IN (0,1)),
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaats_key3 REFERENCES prs_kostenplaats(prs_kostenplaats_key),
prs_kostensoortgrp_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostensoortgrp_key REFERENCES prs_kostensoortgrp(prs_kostensoortgrp_key) ON DELETE SET NULL,
prs_kostensoort_aanmaak
DATE DEFAULT SYSDATE
);
ALTER TABLE ins_tab_discipline ADD
(
prs_kostensoort_key
NUMBER(10)
CONSTRAINT ins_r_prs_kostensoort_key1 REFERENCES prs_kostensoort(prs_kostensoort_key)
);
CREATE_TABLE(prs_kostencombinatie,0) (
prs_kostencombinatie_key
NUMBER (10) PRIMARY KEY,
prs_kostenplaatsgrp_key
NUMBER(10) NOT NULL
CONSTRAINT prs_r_prs_kostenplaatsgrp_key2 REFERENCES prs_kostenplaatsgrp(prs_kostenplaatsgrp_key) ON DELETE CASCADE,
prs_kostensoort_key
NUMBER(10) NOT NULL
CONSTRAINT prs_r_prs_kostensoort_key1 REFERENCES prs_kostensoort(prs_kostensoort_key) ON DELETE CASCADE
);
CREATE_TABLE(prs_staffel, 0)
(
prs_staffel_key
NUMBER (10) PRIMARY KEY,
prs_bedrijf_key
NUMBER (10) NOT NULL REFERENCES prs_bedrijf (prs_bedrijf_key) ON DELETE CASCADE,
prs_staffel_grenswaarde
NUMBER (12),
prs_staffel_korting
NUMBER (12, 6) NOT NULL
);
REGISTERONCE('$Workfile: PRS_TAB.SRC $','$Revision: 130 $')
#endif // PRS