Files
Database/PRS/PRS_TAB.SRC
Erik Groener 9f13c8bf2b DHLD#86034 Foutmelding EntraID: 'Login' veld niet uniek, configuratieprobleem
svn path=/Database/trunk/; revision=67524
2025-01-07 11:45:39 +00:00

1541 lines
52 KiB
Plaintext

#ifdef PRS // 13-03-96 AH
/* PRS_TAB.SRC
* $Revision$
* $Id$
*/
CREATE_TABLE(prs_relatietype, 0)
(
prs_relatietype_key
NUMBER (10) PRIMARY KEY,
prs_relatietype_omschrijving
VARCHAR2(100)
NOT_NULL(prs_relatietype_omschrijving, prs_c_prs_relatietype_omschr),
prs_relatietype_aanmaak
DATE
DEFAULT SYSDATE,
prs_relatietype_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_prs_relatietype_oms UNIQUE(prs_relatietype_omschrijving, prs_relatietype_verwijder)
);
CREATE_TABLE(prs_bedrijf,0)
(
prs_bedrijf_key
NUMBER(10)
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(50),
prs_bedrijf_post_postcode
VARCHAR2(12),
prs_bedrijf_post_plaats
VARCHAR2(30),
prs_bedrijf_post_land
VARCHAR2(30),
prs_bedrijf_bezoek_adres
VARCHAR2(50),
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(1000),
prs_bedrijf_opmerking2
VARCHAR2(1000),
prs_bedrijf_uurloon
NUMBER(6,2),
prs_leverancier_nr
VARCHAR2(50),
prs_overeenkomst_nr
VARCHAR2(30),
prs_overeenkomst_datum
DATE,
prs_bedrijf_email
VARCHAR2(100),
prs_bedrijf_order_confirm /* 1=leverancier bevestigt opdrachtontvangst expliciet, 0/null=veronderstelt bevestigd (non-SOAP only) */
NUMBER(1),
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_mld_limiet
NUMBER(8,2),
-- fin_btwtabel_key
-- NUMBER(10)
-- CONSTRAINT prs_r_fin_btwtabel_key1 REFERENCES fin_btwtabel(fin_btwtabel_key),
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 huurder */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_huurder CHECK(prs_bedrijf_huurder IS NULL
OR prs_bedrijf_huurder = 1 ),
prs_bedrijf_bezoeker /* kan als bezoekend bedrijf worden aangemerkt */
NUMBER(1)
CONSTRAINT prs_c_prs_bedrijf_bezoeker CHECK(prs_bedrijf_bezoeker IS NULL
OR prs_bedrijf_bezoeker = 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 ),
prs_bedrijf_bes_factor /* FSN#19902, voor PRD, had bijna een flex kunnen zijn */
NUMBER(8,6)
DEFAULT 1,
CONSTRAINT prs_u_prs_bedrijf_naam_upper UNIQUE(prs_bedrijf_naam_upper, prs_bedrijf_verwijder),
prs_bedrijf_t_uitvoertijd
MLD_T_UITVOERTIJD
CONSTRAINT prs_c_prs_bedrijf_t_uitvtijd CHECK(prs_bedrijf_t_uitvoertijd.tijdsduur >= 0), /* of null */
prs_relatietype_key
NUMBER(10)
CONSTRAINT prs_r_prs_relatietype_key REFERENCES prs_relatietype(prs_relatietype_key),
prs_bedrijf_x
NUMBER(16,6),
prs_bedrijf_y
NUMBER(16,6),
prs_bedrijf_url
VARCHAR2(512)
);
ALTER TABLE prs_bedrijf MODIFY prs_bedrijf_t_uitvoertijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL);
ALTER TABLE ins_srtdeel
ADD
(
prs_bedrijf_key
NUMBER(10)
CONSTRAINT ins_r_prs_bedrijf_key2 REFERENCES prs_bedrijf(prs_bedrijf_key)
);
ALTER TABLE fac_import_app
ADD
(
prs_bedrijf_key
NUMBER(10)
CONSTRAINT fac_r_prs_bedrijf_key1 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE
);
/* Kruistabel met bedrijfsrelaties (use case Mareon): bedrijf 1 doet iets voor bedrijf 2 of andersom */
CREATE_TABLE(prs_bedrijf_bedrijf,0)
(
prs_bedrijf_bedrijf_key
NUMBER (10) PRIMARY KEY NOT NULL,
prs_bedrijf_key1
NUMBER (10)
CONSTRAINT prs_r_prs_bedrijf_bedrijf1 REFERENCES prs_bedrijf (prs_bedrijf_key) NOT NULL,
prs_bedrijf_externid1
VARCHAR2(256), -- optional remote key of 1
prs_bedrijf_externsyncdate1
DATE,
prs_bedrijf_key2
NUMBER (10)
CONSTRAINT prs_r_prs_bedrijf_bedrijf2 REFERENCES prs_bedrijf (prs_bedrijf_key) NOT NULL,
prs_bedrijf_externid2
VARCHAR2(256), -- optional remote key of 2
prs_bedrijf_externsyncdate2
DATE,
prs_bedrijf_bedrijf_startdatum
DATE
DEFAULT SYSDATE,
prs_bedrijf_bedrijf_einddatum
DATE,
prs_bedrijf_bedrijf_startdt2
DATE,
prs_bedrijf_bedrijf_einddt2
DATE,
prs_bedrijf_bedrijf_status
NUMBER(1) -- voor mld_opdr_teverzenden: 0=niet te verzenden 1=te verzenden
DEFAULT(0)
NOT NULL,
prs_bedrijf_bedrijf_charged
NUMBER(1) -- 0=niemand, 1=opdrachtnemer, 2=opdrachtgever
DEFAULT(0)
NOT NULL,
prs_bedrijf_bedrijf_chargemode
NUMBER(4), -- een codering voor de "premiummode" waaruit afgeleid kan worden hoe de kosten worden berekend (per opdracht, per bestelling, enz), enigszins futureproof
prs_bedrijf_bedrijf_fee1
NUMBER(6,2), -- bedrag in euro's tbv berekening icm chargemode
prs_bedrijf_bedrijf_fee2
NUMBER(6,2), -- bedrag in euro's tbv berekening icm chargemode
prs_bedrijf_bedrijf_fee3
NUMBER(6,2), -- bedrag in euro's tbv berekening icm chargemode
prs_bedrijf_bedrijf_fee4
NUMBER(6,2), -- bedrag in euro's tbv berekening icm chargemode (voor aannemer)
-- In FIN_TAB.SRC:
-- fin_btwtabelwaarde_key -- default btw
-- NUMBER(10)
-- CONSTRAINT prs_r_fin_btwtabelwaarde_key2 REFERENCES fin_btwtabelwaarde(fin_btwtabelwaarde_key),
prs_bedrijf_bedrijf_g_pct -- G-percentage
NUMBER(3)
CONSTRAINT prs_c_bedrijf_bedrijf_g_pct CHECK(prs_bedrijf_bedrijf_g_pct BETWEEN 0 AND 100),
prs_bedrijf_bedrijf_account1
VARCHAR2(60),
prs_bedrijf_bedrijf_account2
VARCHAR2(60)
);
/* Kruistabel met elektronische adressen van een bedrijf, toegepast door PutOrders
* voor Bestellingen, Contracten en Opdrachten enz, zie prs_bedrijfadres_type.
* Bij Opdrachten kan er per opdrachttype een ander adres zijn, het record met mld_typeopdr_key NULL
* is de fallback voor de niet benoemde opdrachttypes.
* prs_bedrijf_key2 is optioneel het bedrijf van de opdrachtGEVER, in (pseudo-)multicompany omgevingen
* Type E is voor Mareon (ERP), en is vooralsnog alleen voor interne bedrijven (opdrachtgevers)
*/
CREATE_TABLE(prs_bedrijfadres, 0) (
prs_bedrijfadres_key
NUMBER(10)
CONSTRAINT prs_k_prs_bedrijfadres_key PRIMARY KEY,
prs_bedrijf_key -- opdrachtnemer
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key6 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE,
prs_bedrijf_key2 -- optioneel specifiek voor deze opdrachtgever
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key8 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE,
alg_district_key -- optioneel specifiek voor dit district
NUMBER(10)
CONSTRAINT prs_r_alg_district_key REFERENCES alg_district(alg_district_key) ON DELETE CASCADE,
alg_locatie_key -- optioneel specifiek voor deze locatie
NUMBER(10)
CONSTRAINT prs_r_alg_locatie_key REFERENCES alg_locatie(alg_locatie_key) ON DELETE CASCADE,
ins_discipline_key -- optioneel specifiek voor deze discipline
NUMBER(10)
CONSTRAINT ins_r_ins_discipline_key REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE,
prs_bedrijfadres_type /* O=Order, B=Bestelling, V=Voorraadinfo, C=Contract, N=Notificatie, I=IOT, R=Catering, E=ERP (Mareon) */
VARCHAR2(3), /* OG=Order generiek, BOF BestelOrderGeneriek enz. */
-- In MLD_TAB.SRC:
-- mld_typeopdr_key
-- NUMBER(10) CONSTRAINT prs_r_mld_typeopdr_key REFERENCES mld_typeopdr(mld_typeopdr_key) ON DELETE CASCADE,
prs_bedrijfadres_url /* voor digitale verzending */
VARCHAR2(512),
prs_bedrijfadres_sender
VARCHAR2(512),
prs_bedrijfadres_replyaddress
VARCHAR2(512),
prs_bedrijfadres_ordermode /* bitwise, TBD */
NUMBER(3) DEFAULT 0,
prs_bedrijfadres_soapversion /* future use, eg 1.1 or 1.2 */
VARCHAR2(10),
prs_bedrijfadres_soapaction
VARCHAR2(128),
prs_bedrijfadres_certificate
VARCHAR2(255),
prs_bedrijfadres_xsl
VARCHAR2(256),
prs_bedrijfadres_charset
VARCHAR2(32),
prs_bedrijfadres_plugin
VARCHAR2(320),
prs_bedrijfadres_plugindata // naar eigen inzicht voor de plugin, bijvoorbeeld refreshtoken
VARCHAR2(4000),
prs_bedrijfadres_error_handler
NUMBER(1)
DEFAULT 0
NOT NULL,
prs_bedrijfadres_ext
VARCHAR2(10),
prs_bedrijfadres_username
VARCHAR2(128),
prs_bedrijfadres_password
VARCHAR2(320),
prs_bedrijfadres_privkey
VARCHAR2(4000),
prs_bedrijfadres_authmethod /* 0=http.open, 1=Forces basic, 2=custom header, 3=add to xml, 4=oAuth basic >5=future use */
NUMBER(3)
DEFAULT 0
NOT NULL,
prs_bedrijfadres_oa_token_url -- oAuth parameter
VARCHAR2(512),
prs_bedrijfadres_oa_scope -- oAuth parameter
VARCHAR2(512),
prs_bedrijfadres_oa_resource -- oAuth parameter
VARCHAR2(512),
-- prs_bedrijfadres_lockuser_key
-- NUMBER(10)
-- CONSTRAINT prs_r_prs_bedrijfadres_lckusr REFERENCES prs_perslid(prs_perslid_key),
prs_bedrijfadres_locksecret
VARCHAR2(128),
prs_bedrijfadres_lockexpire
NUMBER(10),
prs_bedrijfadres_attachfile
VARCHAR2(256),
prs_bedrijfadres_flexfiles /* 0=default (volgens S("puo_order_flexfiles")), 1=wel, 2=niet */
NUMBER(3)
DEFAULT 0
NOT NULL,
prs_bedrijfadres_encoding /* 0=text/xml, 1=multipart/form-data, 2=application/json, 3=text/html, 4=application/x-www-form-urlencoded */
NUMBER(3)
DEFAULT 0
NOT NULL,
prs_bedrijfadres_loglevel
NUMBER(1)
DEFAULT 0
NOT NULL,
prs_bedrijfadres_startdatum
DATE
DEFAULT SYSDATE
NOT NULL
);
CREATE_TABLE(prs_bedrijfadres_srtnoti, 0)
(
prs_bedrijfadres_srtnoti_key
NUMBER(10)
PRIMARY KEY,
prs_bedrijfadres_key
NUMBER(10)
CONSTRAINT prs_r_bedrijfadres_key2
REFERENCES prs_bedrijfadres(prs_bedrijfadres_key) ON DELETE CASCADE,
fac_srtnotificatie_key
NUMBER(10)
REFERENCES fac_srtnotificatie(fac_srtnotificatie_key) ON DELETE CASCADE,
prs_bedrijfadres_method -- optionele overrule method
VARCHAR2(16),
prs_bedrijfadres_url -- optionele overrule endpoint
VARCHAR2(512),
prs_bedrijfadres_srtnoti_aanmaak
DATE
DEFAULT SYSDATE NOT NULL
);
CREATE_TABLE(prs_kostenplaatsgrp,0) (
prs_kostenplaatsgrp_key
NUMBER (10) PRIMARY KEY,
prs_kostenplaatsgrp_nr
VARCHAR2(30),
prs_kostenplaatsgrp_oms
VARCHAR2(60)
NOT NULL,
prs_kostenplaatsgrp_limiet
NUMBER(8),
prs_kostenplaatsgrp_limperiode /* 0(of NULL)=geen(oneindig), 1=maand, 2=jaar */
NUMBER(1),
prs_kostenplaatsgrp_fin_limit1
NUMBER(8),
prs_kostenplaatsgrp_fin_limit2
NUMBER(8),
-- prs_perslid_key
-- NUMBER(10)
-- CONSTRAINT prs_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key),
prs_kostenplaatsgrp_aanmaak
DATE
DEFAULT SYSDATE
);
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,
prs_kostenplaats_limiet --- Indien leeg, zie prs_kostenplaatsdisc
NUMBER(8),
prs_kostenplaats_limietperiode -- 0(of NULL)=geen(oneindig) (default), 1=maand, 2=jaar
NUMBER(1),
prs_kostenplaats_extern -- 0=intern, 1=extern (gebruikt bij prijsberekeningen)
NUMBER(1)
DEFAULT 0,
prs_kostenplaats_externnr
VARCHAR2(256),
prs_kostenplaats_extsyncdate
DATE,
prs_kostenplaats_fiat -- 0=geen, 1=wel fiattering
NUMBER(1)
DEFAULT 1
CONSTRAINT prs_c_prs_kostenplaat_fiat CHECK(prs_kostenplaats_fiat IS NOT NULL)
CONSTRAINT prs_c_prs_kostenplaat_fiat1 CHECK(prs_kostenplaats_fiat IN (0,1)),
ins_discipline_key
NUMBER(10)
CONSTRAINT prs_r_ins_discipline_key2 REFERENCES ins_tab_discipline(ins_discipline_key),
CONSTRAINT prs_u_prs_kostenplaats_upper UNIQUE(prs_kostenplaats_upper, prs_kostenplaats_verwijder, ins_discipline_key)
);
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)
);
ALTER TABLE ins_srtcontrole ADD
(
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT ins_r_prs_kostenplaats_key1 REFERENCES prs_kostenplaats(prs_kostenplaats_key)
);
ALTER TABLE ins_srtcontroledl_xcp ADD
(
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT ins_r_prs_kostenplaats_key2 REFERENCES prs_kostenplaats(prs_kostenplaats_key)
);
/* disciplineafhankelijke afdelingsbudgetten (=kostenplaatsbudgetten),
* vergelijkbaar met fac_profielwaarde voor persoonlijke budgetten
* als prs_kostenplaats_limiet gevuld is, dan wordt die gebruikt
* als die leeg is wordt hier gekeken of er een limiet voor de catalogus is
* en zo nee, dan is er dus geen limiet.
* De periode is in alle gevallen prs_kostenplaats_limietperiode
*/
CREATE_TABLE(prs_kostenplaatsdisc, 0) (
prs_kostenplaatsdisc_key
NUMBER(10) PRIMARY KEY,
prs_kostenplaats_key
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaats_key4 REFERENCES prs_kostenplaats(prs_kostenplaats_key) ON DELETE CASCADE,
ins_discipline_key
NUMBER(10)
REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE,
prs_kostenplaatsdisc_limiet
NUMBER(8)
NOT NULL,
prs_kostenplaatsdisc_aanmaak
DATE
DEFAULT SYSDATE
);
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(15)
NOT_NULL(prs_afdeling_naam, prs_c_prs_afdeling_naam),
prs_afdeling_upper
VARCHAR2(15)
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_externid /* voor koppelingen met externe systemen, bijvoorbeeld een externe GUID */
VARCHAR2(256),
prs_afdeling_externsyncdate
DATE,
prs_afdeling_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_afdeling_aanmaak, prs_c_prs_afdeling_aanmaak),
prs_afdeling_verwijder
DATE
DEFAULT NULLDATUM,
-- prs_perslid_key_verantw -- afdelingsverantwoordelijke (irt o.a. meldingen-instemming)
-- NUMBER(10)
-- CONSTRAINT prs_r_prs_perslid_key22 REFERENCES prs_perslid(prs_perslid_key),
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))
);
ALTER TABLE alg_terreinsector ADD
(
prs_afdeling_key
NUMBER(10)
CONSTRAINT alg_r_prs_afdeling1 REFERENCES prs_afdeling(prs_afdeling_key)
);
CREATE_TABLE(prs_srtperslid,0)
(
prs_srtperslid_key
NUMBER(10)
CONSTRAINT prs_k_prs_srtperslid_key PRIMARY KEY,
prs_srtperslid_omschrijving
VARCHAR2(100)
NOT_NULL(prs_srtperslid_omschrijving, prs_c_prs_srtperslid_omschr),
prs_srtperslid_upper
VARCHAR2(100)
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(8)
NOT_NULL(prs_werkplek_volgnr, prs_c_prs_werkplek_volgnr),
prs_werkplek_omschrijving
VARCHAR2(30),
prs_werkplek_type
NUMBER(1)
DEFAULT 0
CONSTRAINT prs_c_prs_werkplek_type CHECK(prs_werkplek_type IN (0,1,2)), /* 0=vast, 1=flex, 2=tbd*/
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_externnr
VARCHAR2(256),
prs_werkplek_externsyncdate
DATE,
prs_werkplek_dwgx
NUMBER(16,3),
prs_werkplek_dwgy
NUMBER(16,3),
prs_werkplek_dwgz
NUMBER(16,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_getekend
DATE
DEFAULT NULLDATUM,
CONSTRAINT prs_u_prs_werkplek_volgnr UNIQUE(prs_alg_ruimte_key, prs_werkplek_volgnr)
);
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(60)
NOT_NULL(prs_perslid_naam, prs_c_prs_perslid_naam),
prs_perslid_upper
VARCHAR2(60)
NOT_NULL(prs_perslid_upper, prs_c_prs_perslid_upper),
prs_perslid_tussenvoegsel
VARCHAR2(15),
prs_perslid_voorletters
VARCHAR2(15),
prs_perslid_voornaam
VARCHAR2(30),
prs_perslid_titel
VARCHAR2(15),
prs_perslid_geslacht
NUMBER(1), -- 1=man; 0=vrouw (others=others)
prs_perslid_initialen
VARCHAR2(10),
prs_perslid_nr
VARCHAR2(16),
prs_perslid_oslogin
VARCHAR2(256)
CONSTRAINT prs_c_prs_perslid_oslogin UNIQUE,
prs_perslid_oslogin2
VARCHAR2(30)
CONSTRAINT prs_c_prs_perslid_oslogin2 UNIQUE,
prs_perslid_salt
VARCHAR2(32),
prs_perslid_wachtwoord_hash
VARCHAR2(128),
prs_perslid_wachtwoord_exp
DATE,
prs_perslid_authenticatie
VARCHAR2(128),
prs_perslid_authenticatie_exp
DATE,
prs_perslid_otpsecret
VARCHAR2(128),
prs_perslid_otpcounter
NUMBER(10),
prs_perslid_apikey
VARCHAR2(128),
prs_perslid_flags -- documentatie in appl/shared/user.inc
NUMBER(10)
DEFAULT 0,
prs_perslid_lang
VARCHAR2(3),
prs_perslid_dienstverband
NUMBER(5,2)
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(20),
prs_perslid_mobiel
VARCHAR2(20),
prs_perslid_email
VARCHAR2(200),
prs_perslid_ingids /* is zichtbaar in telefoongids */
NUMBER(1)
DEFAULT 1
CONSTRAINT prs_c_prs_perslid_ingids CHECK(prs_perslid_ingids IS NULL
OR prs_perslid_ingids = 1 ),
prs_perslid_visibility
NUMBER(3) /* levels coded, opt-in */
DEFAULT 0
NOT NULL,
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),
prs_perslid_systeemadres /* alleen voor systeembeheerders en voor SYSTEM-personen. Bevat de SOAP-url voor terugkoppeling (MAYF#20525)*/
VARCHAR2(200),
-- mld_adres_key
-- NUMBER(10)
-- CONSTRAINT prs_r_mld_adres_key2 REFERENCES mld_adres(mld_adres_key),
prs_perslid_login
DATE,
alg_onroerendgoed_keys /* de actueel geregistreerde plaats; key, type en bezetdatum horen bij elkaar */
NUMBER(10),
alg_onroerendgoed_type
VARCHAR2(1)
CONSTRAINT prs_c_alg_onroerendgoed_type CHECK(alg_onroerendgoed_type IN ('E', 'D', 'L', 'G', 'T', 'V', 'R', 'W')),
prs_perslid_bezetdatum
DATE,
prs_perslid_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_perslid_aanmaak, prs_c_prs_perslid_aanmaak),
prs_perslid_verwijder
DATE
DEFAULT NULLDATUM,
prs_perslid_inactief
DATE,
prs_perslid_options // JSON
VARCHAR2(4000),
prs_perslid_credentials_datum /* wanneer voor het laatst gewijzigd. Oudere sessie ongeldig */
DATE
DEFAULT SYSDATE NOT NULL,
prs_perslid_externid /* voor koppelingen met externe systemen, bijvoorbeeld een externe GUID */
VARCHAR2(256),
prs_perslid_externsyncdate
DATE,
prs_perslid_externoslogin -- SCIM only, not uppercased or length-limited
VARCHAR2(256),
prs_perslid_terms_datum
DATE,
prs_perslid_terms_version /* filename of accepted terms of condition */
VARCHAR2(200),
prs_perslid_timezone
VARCHAR2(40),
prs_perslid_lcid
NUMBER(4),
prs_perslid_opmerking
VARCHAR2 (320),
prs_perslid_loglevel
NUMBER(1)
DEFAULT 0
NOT NULL,
prs_perslid_key_verantw -- fallback als elke structuur faalt (irt o.a. meldingen-instemming)
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key23 REFERENCES prs_perslid(prs_perslid_key),
prs_kostenplaats_key -- optioneel een (default) persoonlijke kostenplaats
NUMBER(10)
CONSTRAINT prs_r_prs_kostenplaats_key5 REFERENCES prs_kostenplaats(prs_kostenplaats_key),
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_job ADD (
prs_perslid_key NUMBER(10) -- owner
CONSTRAINT fac_r_prs_perslid_key12
REFERENCES prs_perslid(prs_perslid_key),
prs_perslid_key_receiver NUMBER(10)
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,
prs_bedrijfadres_key
NUMBER(10)
CONSTRAINT prs_r_bedrijfadres_key1
REFERENCES prs_bedrijfadres(prs_bedrijfadres_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 fac_session ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key2 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_widget_page ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_bookmark ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key3 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_bookmark ADD (
prs_perslid_key_auth
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key4 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE fac_menu ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key7 REFERENCES prs_perslid (prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_usrrap ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key6 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_gui_counter ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_guicnt_perslid_key REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
ALTER TABLE fac_gui_counter
ADD CONSTRAINT fac_u_fac_gui_counter UNIQUE (fac_gui_counter_group,
fac_gui_counter_date,
fac_gui_counter_refkey,
prs_perslid_key,
fac_gui_counter_info);
ALTER TABLE alg_gebouw ADD (
prs_perslid_key_verantw
NUMBER(10)
CONSTRAINT alg_r_prs_perslid_key1 REFERENCES prs_perslid(prs_perslid_key),
prs_perslid_key_verantw2
NUMBER(10)
CONSTRAINT alg_r_prs_perslid_key2 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE alg_terreinsector ADD
(
prs_perslid_key_verantw
NUMBER(10)
CONSTRAINT alg_r_prs_perslid_key3 REFERENCES prs_perslid(prs_perslid_key),
prs_perslid_key_verantw2
NUMBER(10)
CONSTRAINT alg_r_prs_perslid_key4 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE alg_onroerendgoed_note ADD
(
prs_perslid_key
NUMBER (10)
CONSTRAINT alg_r_prs_perslid_key5 REFERENCES prs_perslid (prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE prs_bedrijfadres
ADD prs_bedrijfadres_lockuser_key
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijfadres_lckser REFERENCES prs_perslid(prs_perslid_key);
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 prs_afdeling ADD
(
prs_perslid_key_verantw
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key22 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE fac_import ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key5 REFERENCES prs_perslid(prs_perslid_key)
);
ALTER TABLE ins_deel
ADD
( prs_perslid_key_beh
NUMBER(10)
CONSTRAINT ins_r_prs_perslid_key_beh REFERENCES prs_perslid (prs_perslid_key)
);
ALTER TABLE ins_scenario
ADD
( prs_perslid_key
NUMBER(10)
CONSTRAINT ins_r_prs_perslid_key0 REFERENCES prs_perslid(prs_perslid_key)
);
/* Dat iemand ooit geinspecteerd heeft is geen reden om die niet te mogen verwijderen
en de inspectie blijft evenzogoed als je niet meer weet wie het gedaan heeft,
vandaar on delete set null */
ALTER TABLE ins_deelsrtcontrole
ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT ins_r_prs_perslid_key REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE fac_kenmwaarden
ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key8 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE,
CONSTRAINT fac_c_prs_perslid_key1 CHECK(prs_perslid_key IS NOT NULL)
);
ALTER TABLE imp_schedule ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT imp_r_perslid REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE fac_kenmwaarden
ADD
CONSTRAINT fac_u_fac_kenmwaarden UNIQUE(fac_kenmwaarden_module, fac_kenmwaarden_refkey, fac_kenmwaarden_kenmerk_key, prs_perslid_key);
ALTER TABLE fac_email_setting
ADD prs_perslid_key_auth
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key10 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)
);
ALTER TABLE fac_audit ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key9 REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE ins_deel_note
ADD
(
prs_perslid_key
NUMBER(10)
REFERENCES prs_perslid (prs_perslid_key) ON DELETE SET NULL
);
ALTER TABLE prs_kostenplaatsgrp
ADD prs_kostenplaatsgrp_fiat2_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key18 REFERENCES prs_perslid(prs_perslid_key);
ALTER TABLE prs_kostenplaatsgrp
ADD prs_kostenplaatsgrp_fiat3_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key19 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),
prs_collega_vervaldatum
DATE
);
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)),
prs_perslidkostenplaats_aanmk
DATE
DEFAULT SYSDATE
);
// 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(8,5)
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_ingangsdatum
DATE
DEFAULT SYSDATE
NOT NULL,
prs_ruimteafdeling_einddatum
DATE,
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_ingangsdatum, prs_ruimteafdeling_verwijder),
CONSTRAINT prs_c_ruimteafdeling_van_tot CHECK(prs_ruimteafdeling_einddatum IS NULL OR (prs_ruimteafdeling_einddatum IS NOT NULL AND prs_ruimteafdeling_einddatum > prs_ruimteafdeling_ingangsdatum))
);
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_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) ON DELETE CASCADE,
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_volgnr -- UWVA#18996
NUMBER(2),
prs_perslidwerkplek_externnr
VARCHAR2(256),
prs_perslidwerkplek_extsyncd
DATE,
prs_perslidwerkplek_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_perslidwerkplek_aanmaak, prs_c_prs_perslidwp_aanmaak),
CONSTRAINT prs_u_perslidwerkplek UNIQUE(prs_perslid_key, prs_werkplek_key)
);
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)
NOT NULL
,prs_kenmerk_omschrijving
VARCHAR2(50)
,prs_kenmerk_upper
VARCHAR2(50)
,prs_kenmerk_code
VARCHAR2(60)
,prs_kenmerk_hint
VARCHAR2(255)
,prs_kenmerk_default
VARCHAR2(4000)
,prs_kenmerk_show_expr
VARCHAR2(4000)
,prs_kenmerk_dimensie
VARCHAR2(10)
,prs_kenmerk_kenmerktype
VARCHAR2(1)
,prs_kenmerk_systeem -- &1 = systeemkm, &8 = anonimiseren
NUMBER(2)
DEFAULT 0
NOT NULL
,prs_kenmerk_toonbaar
NUMBER(1)
,prs_kenmerk_inlijst
NUMBER(1)
DEFAULT 0 NOT NULL
,prs_kenmerk_uniek
NUMBER(1)
,prs_kenmerk_regexp
VARCHAR2(255)
,prs_kenmerk_verplicht
NUMBER(1)
,prs_kenmerk_groep
NUMBER(1)
DEFAULT 0 NOT NULL
,prs_kenmerk_lengte
NUMBER(4)
,prs_kenmerk_dec
NUMBER(2)
,prs_kenmerk_nmin
NUMBER(10)
,prs_kenmerk_nmax
NUMBER(10)
,fac_kenmerkdomein_key
NUMBER(10)
CONSTRAINT prs_r_kenmerkdomein_key1 REFERENCES fac_kenmerkdomein(fac_kenmerkdomein_key)
,prs_kenmerk_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_kenmerk_aanmaak, prs_c_prs_kenmerk_aanmaak)
,prs_kenmerk_verwijder
DATE
DEFAULT NULLDATUM
,prs_srtperslid_key
NUMBER(10)
CONSTRAINT prs_r_prs_srtperslid_key3 REFERENCES prs_srtperslid(prs_srtperslid_key)
,fac_functie_key
NUMBER(10)
CONSTRAINT fac_r_prs_kenmerk_functie REFERENCES fac_functie (fac_functie_key)
);
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)
,prs_kenmerklink_waarde
VARCHAR2(4000)
,prs_kenmerklink_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(prs_kenmerklink_aanmaak, prs_c_prs_kenmerklink_aanm)
,prs_kenmerklink_verwijder
DATE
DEFAULT NULLDATUM
,CONSTRAINT prs_u_prs_kenmerklink_key UNIQUE(prs_link_key, prs_kenmerk_key, prs_kenmerklink_verwijder)
);
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(200),
prs_contactpersoon_functie
VARCHAR2(60),
prs_contactpersoon_opmerking
VARCHAR2(255),
prs_contactpersoon_uurloon
NUMBER(6,2),
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),
prs_contactpersoon_externnr
VARCHAR2(256),
prs_contactpersoon_extsyncdate
DATE,
prs_contactpersoon_aanmaak
DATE
DEFAULT SYSDATE,
prs_contactpersoon_verwijder
DATE
);
ALTER TABLE ins_deel_uitgifte ADD
(
prs_perslid_key
NUMBER(10)
CONSTRAINT ins_r_prs_perslid_key1 REFERENCES prs_perslid (prs_perslid_key) ON DELETE CASCADE,
prs_contactpersoon_key
NUMBER (10)
CONSTRAINT ins_r_prs_contactpersoon_key REFERENCES prs_contactpersoon(prs_contactpersoon_key) ON DELETE CASCADE
);
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,
prs_dienst_hint
VARCHAR2(1000)
);
ALTER TABLE ins_srtcontrole ADD
(
prs_dienst_key NUMBER(10)
CONSTRAINT ins_r_prs_dienst_key1 REFERENCES prs_dienst(prs_dienst_key)
);
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_perslid_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key21 REFERENCES prs_perslid(prs_perslid_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,
prs_bedrijf_voor_key
NUMBER(10)
CONSTRAINT prs_r_prs_bedrijf_key7 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE,
prs_bdl_t_uitvoertijd
MLD_T_UITVOERTIJD
CONSTRAINT prs_c_prs_bdl_t_uitvoertijd CHECK(prs_bdl_t_uitvoertijd.tijdsduur >= 0), /* of null */
mld_autoorder
NUMBER(1)
DEFAULT 1
NOT NULL,
CONSTRAINT prs_u_prs_bedrijfdienstloc_key UNIQUE (prs_bedrijf_key, prs_perslid_key, prs_dienst_key, alg_locatie_key, alg_gebouw_key,prs_bedrijf_voor_key),
CONSTRAINT prs_c_prs_bedrijfdienstloc CHECK (alg_locatie_key IS NULL OR alg_gebouw_key IS NULL),
CONSTRAINT prs_c_prs_bdlbp1 CHECK ((prs_bedrijf_key IS NOT NULL AND prs_perslid_key IS NULL) OR (prs_bedrijf_key IS NULL AND prs_perslid_key IS NOT NULL))
);
ALTER TABLE prs_bedrijfdienstlocatie MODIFY prs_bdl_t_uitvoertijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL);
/*
* Om een kennisbankitem afhankelijk te kunnen maken van een afdeling/bedrijf
* afdeling is optioneel. Toepassing is melder-afhankelijk maken van faqs
* maar mogelijk is dit ooit ook nog wel anders bruikbaar (bv voor leveranciers)
*/
CREATE_TABLE(prs_prsfaq, 0)
(
prs_prsfaq_key
NUMBER(10)
CONSTRAINT prs_k_prsfaq_key PRIMARY KEY,
prs_bedrijf_key
NUMBER(10)
NOT NULL
CONSTRAINT prs_r_prs_bedrijf_key9 REFERENCES prs_bedrijf(prs_bedrijf_key) ON DELETE CASCADE,
prs_afdeling_key /* optionele verbijzondering binnen dit bedrijf */
NUMBER(10)
CONSTRAINT prs_r_prs_afdeling_key2 REFERENCES prs_afdeling(prs_afdeling_key) ON DELETE CASCADE,
fac_faq_key
NUMBER(10)
NOT NULL
CONSTRAINT prs_r_fac_faq_key REFERENCES fac_faq(fac_faq_key) ON DELETE CASCADE
);
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),
prs_project_datum /* altijd handig */
DATE
-- 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,
prs_kostensoortgrp_altcode
VARCHAR2(60),
prs_kostensoortgrp_verwijder
DATE
);
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)
NOT NULL
CONSTRAINT prs_r_prs_kostensoortgrp_key REFERENCES prs_kostensoortgrp(prs_kostensoortgrp_key),
prs_kostensoort_aanmaak
DATE DEFAULT SYSDATE,
prs_kostensoort_altcode
VARCHAR2(60),
prs_kostensoort_eind
DATE,
prs_kostensoort_verwijder
DATE
-- fin_btwtabelwaarde_key
-- NUMBER(10)
-- CONSTRAINT prs_r_fin_btwtabelwaarde_key REFERENCES fin_btwtabelwaarde (fin_btwtabelwaarde_key)
);
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,
prs_kostencombinatie_aanmaak
DATE
DEFAULT SYSDATE
);
CREATE_TABLE(prs_perslid_inzetbaar, 0)
(
prs_perslid_inzetbaar_key
NUMBER(10)
CONSTRAINT prs_k_prs_inzetbaar_key PRIMARY KEY,
prs_perslid_key
NUMBER(10)
NOT_NULL(prs_perslid_key, prs_c_prs_perslid_key6)
CONSTRAINT prs_r_prs_perslid_key17 REFERENCES prs_perslid(prs_perslid_key),
prs_perslid_inzetbaar_van
NUMBER(4)
NOT_NULL(prs_perslid_inzetbaar_van, prs_c_prs_perslid_inzet_van)
CONSTRAINT prs_c_prs_perslid_inzet_van2 CHECK(prs_perslid_inzetbaar_van>=0 AND prs_perslid_inzetbaar_van<1440),
prs_perslid_inzetbaar_tot
NUMBER(4)
NOT_NULL(prs_perslid_inzetbaar_tot, prs_c_prs_perslid_inzet_tot)
CONSTRAINT prs_c_prs_perslid_inzet_tot2 CHECK(prs_perslid_inzetbaar_tot>=0 AND prs_perslid_inzetbaar_tot<1440),
prs_perslid_inzetbaar_dag -- 0=zondag, 1=maandag, 2=dinsdag, 3=woensdag, 4=donderdag, 5=vrijdag, 6=zaterdag
NUMBER(1)
NOT_NULL(prs_perslid_inzetbaar_dag, prs_c_prs_perslid_inzet_dag),
alg_locatie_key /* future use */
NUMBER(10)
CONSTRAINT prs_r_alg_locatie_key5 REFERENCES alg_locatie(alg_locatie_key),
prs_perslid_inzetbaar_plaats /* unstructured variant of alg_locatie_key */
VARCHAR2 (200),
prs_perslid_inzetbaar_plaats_x /* x of _plaats */
NUMBER(16,6),
prs_perslid_inzetbaar_plaats_y /* y of _plaats */
NUMBER(16,6),
prs_perslid_inzetbaar_radius
NUMBER (6)
);
CREATE_TABLE(prs_perslid_tabs, 0)
(
prs_perslid_tabs_key
NUMBER(10)
CONSTRAINT prs_k_prs_perslid_tabs_key PRIMARY KEY,
prs_perslid_tabs_code
VARCHAR2(32) NOT NULL,
prs_perslid_tabs_aanmaak
DATE DEFAULT SYSDATE,
prs_perslid_key
NUMBER(10)
CONSTRAINT prs_r_prs_perslid_key20 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
CREATE_TABLE(prs_perslid_cols, 0)
(
prs_perslid_cols_key
NUMBER(10)
CONSTRAINT fac_k_prs_perslid_cols_key PRIMARY KEY,
prs_perslid_tabs_key
NUMBER(10)
CONSTRAINT fac_r_perslid_cols_tabs_key REFERENCES prs_perslid_tabs(prs_perslid_tabs_key)
ON DELETE CASCADE,
prs_perslid_cols_volgnr
NUMBER(10)
NOT NULL,
prs_perslid_cols_column_name
VARCHAR2(128) NOT NULL,
prs_perslid_cols_visible /* V;Visible; I;Invisible */
VARCHAR2(1)
DEFAULT 'V'
NOT NULL
CONSTRAINT prs_c_perslid_cols_visible CHECK (prs_perslid_cols_visible IN ('V', 'I')),
prs_perslid_cols_combine /* 0;False 1;True */
NUMBER(1)
DEFAULT 0
NOT NULL
CONSTRAINT prs_c_perslid_cols_combine CHECK (prs_perslid_cols_combine IN (0, 1)),
CONSTRAINT prs_u_prs_perslid_cols1 UNIQUE(prs_perslid_tabs_key, prs_perslid_cols_column_name)
);
REGISTERONCE('$Id$')
#endif // PRS