Files
Database/INS/INS_TAB.SRC
Peter Feij cd072afb6f FSN#1141
svn path=/Database/trunk/; revision=8907
2005-02-22 12:30:46 +00:00

883 lines
30 KiB
Plaintext

#ifdef INS
/* $History: INS_TAB.SRC $
*
* ***************** Version 51 *****************
* User: Pf Date: 22-02-05 Time: 14:31
* Updated in $/Facilitor/SRC/SQL/INS
* FSN#1141
*
* ***************** Version 50 *****************
* User: Pf Date: 22-02-05 Time: 13:03
* Updated in $/Facilitor/SRC/SQL/INS
* FSN#1141
*
* ***************** Version 49 *****************
* User: Pf Date: 22-02-05 Time: 12:33
* Updated in $/Facilitor/SRC/SQL/INS
* UWVA#14/FSN#1140
*
* ***************** Version 48 *****************
* User: Pf Date: 16-12-04 Time: 17:12
* Updated in $/Facilitor/SRC/SQL/INS
* CONN#306 (slightly related)
*
* ***************** Version 47 *****************
* User: Pf Date: 9-12-04 Time: 17:06
* Updated in $/Facilitor/SRC/SQL/INS
* CONN#278
*
* ***************** Version 46 *****************
* User: Pf Date: 10-09-04 Time: 10:34
* Updated in $/Facilitor/SRC/SQL/INS
* CONN#237
*
* ***************** Version 45 *****************
* User: Pf Date: 7-09-04 Time: 15:04
* Updated in $/Facilitor/SRC/SQL/INS
*
* ***************** Version 44 *****************
* User: Pf Date: 30-08-04 Time: 13:12
* Updated in $/Facilitor/SRC/SQL/INS
* CONN#237; ins_srtdiscipline uses _verwijder mechanism too
*
* ***************** Version 43 *****************
* User: Pf Date: 26-08-04 Time: 14:16
* Updated in $/Facilitor/SRC/SQL/INS
* CONN#237
*
* ***************** Version 42 *****************
* User: Pf Date: 25-08-04 Time: 18:26
* Updated in $/Facilitor/SRC/SQL/INS
* conn#237
*
*/
CREATE_TABLE(ins_srtdiscipline,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtdiscipline_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtdiscipline_key PRIMARY KEY,
ins_srtdiscipline_module
VARCHAR2(3)
DEFAULT 'INS'
NOT_NULL(ins_srtdiscipline_module, ins_c_ins_srtdisc_module),
ins_srtdiscipline_omschrijving
VARCHAR2(30)
NOT_NULL(ins_srtdiscipline_omschrijving, ins_c_ins_srtdisc_omschr),
ins_srtdiscipline_prefix
VARCHAR2(3),
ins_srtdiscipline_alg
NUMBER(1) DEFAULT(1)
CONSTRAINT ins_c_ins_srtdiscipline_alg CHECK(ins_srtdiscipline_alg IN (0,1)),
ins_srtdiscipline_ins
NUMBER(1) DEFAULT(1)
CONSTRAINT ins_c_ins_srtdiscipline_ins CHECK(ins_srtdiscipline_ins IN (0,1)),
ins_srtdiscipline_mld
NUMBER(1) DEFAULT (0)
CONSTRAINT ins_c_ins_srtdiscipline_mld CHECK(ins_srtdiscipline_mld IN (0,1)),
ins_srtdiscipline_bes /* reserved for future use */
NUMBER(1) DEFAULT (0)
CONSTRAINT ins_c_ins_srtdiscipline_bes CHECK(ins_srtdiscipline_bes IN (0,1)),
ins_srtdiscipline_prs /* reserved for future use */
NUMBER(1) DEFAULT (0)
CONSTRAINT ins_c_ins_srtdiscipline_prs CHECK(ins_srtdiscipline_prs IN (0,1)),
ins_srtdiscipline_res /* reserved for future use */
NUMBER(1) DEFAULT (0)
CONSTRAINT ins_c_ins_srtdiscipline_res CHECK(ins_srtdiscipline_res IN (0,1)),
ins_srtdiscipline_cnt /* reserved for future use */
NUMBER(1) DEFAULT (0)
CONSTRAINT ins_c_ins_srtdiscipline_cnt CHECK(ins_srtdiscipline_cnt IN (0,1)),
ins_srtdiscipline_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtdiscipline_aanmaak, ins_c_ins_srtdisc_aanmaak),
ins_srtdiscipline_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_srtdisc_omschr UNIQUE (ins_srtdiscipline_omschrijving,
ins_srtdiscipline_module)
);
CREATE_TABLE(ins_tab_discipline,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_discipline_key
NUMBER(10)
CONSTRAINT ins_k_ins_discipline_key PRIMARY KEY,
ins_discipline_module
VARCHAR2(3)
DEFAULT 'INS'
NOT_NULL(ins_discipline_module, ins_c_ins_discipline_module),
ins_discipline_omschrijving
VARCHAR2(30)
NOT_NULL(ins_discipline_omschrijving, ins_c_ins_discipline_omschr),
ins_discipline_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_discipline_aanmaak, ins_c_ins_discipline_aanmaak),
ins_discipline_verwijder
DATE
DEFAULT NULLDATUM,
ins_discipline_min_level
NUMBER(1),
ins_discipline_kostensoort
VARCHAR2(7),
ins_srtdiscipline_key
NUMBER(10)
//NOT_NULL(ins_srtdiscipline_key, ins_c_ins_srtdiscipline_key1)
CONSTRAINT ins_r_ins_srtdiscipline_key1 REFERENCES ins_srtdiscipline /* ON DELETE RESTRICTED */,
CONSTRAINT ins_u_ins_discipline_omschr UNIQUE (ins_discipline_omschrijving,
ins_srtdiscipline_key,
ins_discipline_verwijder,
ins_discipline_module)
);
ALTER TABLE fac_groeprechten
ADD CONSTRAINT fac_r_groeprechten_disc (ins_discipline_key)
REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE;
CREATE_TABLE(ins_srtgroep,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtgroep_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtgroep_key PRIMARY KEY,
ins_discipline_key
NUMBER(10)
NOT_NULL(ins_discipline_key, ins_r_ins_discipline_key1)
CONSTRAINT ins_r_ins_discipline_key2 REFERENCES ins_tab_discipline,
ins_srtgroep_module
VARCHAR2(3)
DEFAULT 'INS'
NOT_NULL(ins_srtgroep_module, ins_c_ins_srtgroep_module),
ins_srtgroep_omschrijving
VARCHAR2(60)
NOT_NULL(ins_srtgroep_omschrijving, ins_c_ins_srtgroep_omschr),
ins_srtgroep_upper
VARCHAR2(60)
#ifndef MS_SQL
NOT_NULL(ins_srtgroep_upper, ins_c_ins_srtgroep_upper)
#endif
,
ins_srtgroep_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtgroep_aanmaak, ins_c_ins_srtgroep_aanmaak),
ins_srtgroep_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_srtgroep_upper UNIQUE(ins_discipline_key, ins_srtgroep_upper, ins_srtgroep_verwijder, ins_srtgroep_module)
);
CREATE_TABLE(ins_srtdeel,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtdeel_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtdeel_key PRIMARY KEY,
ins_srtgroep_key
NUMBER(10)
NOT_NULL(ins_srtgroep_key, ins_r_ins_srtgroep_key1)
CONSTRAINT ins_r_ins_srtgroep_key2 REFERENCES ins_srtgroep,
ins_srtdeel_module
VARCHAR2(3)
DEFAULT 'INS'
NOT_NULL(ins_srtdeel_module, ins_c_ins_srtdeel_module),
ins_srtdeel_code
VARCHAR2(10)
NOT_NULL(ins_srtdeel_code, ins_c_ins_srtdeel_code),
ins_srtdeel_code_upper
VARCHAR2(10)
#ifndef MS_SQL
NOT_NULL(ins_srtdeel_code_upper, ins_c_ins_srtdeel_upcode)
#endif
,
ins_srtdeel_omschrijving
VARCHAR2(60)
NOT_NULL(ins_srtdeel_omschrijving, ins_c_ins_srtdeel_omschrijving),
ins_srtdeel_upper
VARCHAR2(60)
#ifndef MS_SQL
NOT_NULL(ins_srtdeel_upper, ins_c_ins_srtdeel_upper)
#endif
,
ins_srtdeel_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtdeel_aanmaak, ins_c_ins_srtdeel_aanmaak),
ins_srtdeel_verwijder
DATE
DEFAULT NULLDATUM,
ins_srtdeel_volgnr
NUMBER(3),
ins_srtdeel_prijs
NUMBER(8,2),
ins_srtdeel_btw
NUMBER(3),
ins_srtdeel_eenheid
VARCHAR2(30),
ins_srtdeel_dimensie
NUMBER(1),
ins_srtdeel_acadsymbol /* ACADSYMBOL vanuit INV_TAB veplaatst */
VARCHAR2(256),
ins_srtdeel_acad_tagvalue /* TAGVALUE vanuit ACAD */
VARCHAR2(30),
ins_srtdeel_cadlayer
VARCHAR2(256),
ins_srtdeel_cadlaylinetype
VARCHAR2(256),
ins_srtdeel_cadlaycolor
NUMBER(3)
CONSTRAINT ins_c_ins_srtdeel_cadlaycolor CHECK(ins_srtdeel_cadlaycolor > 0 AND
ins_srtdeel_cadlaycolor < 256),
ins_srtdeel_opmaat /* 0 = niet op maat getekend, 1 = wel op maat getekend */
NUMBER(1)
DEFAULT 0
/* 24-06-96/KTH: module-afhankelijke UNIQUE verplaatst naar ins_uni.src */
/* UNIQUE(ins_srtdeel_upper,ins_srtdeel_verwijder, ins_srtdeel_module) */
);
/* New table for relations between object types; designed for key management (formerly SLE)*/
CREATE_TABLE(ins_srtdeel_srtdeel, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtdeel_srtdeel_key NUMBER(10) primary key,
ins_srtdeel_key_1 NUMBER(10) not null references ins_srtdeel,
ins_srtdeel_key_2 NUMBER(10) not null references ins_srtdeel,
ins_module VARCHAR2(3),
CONSTRAINT ins_u_ins_srtdeel_srtdeel UNIQUE (ins_srtdeel_key_1, ins_srtdeel_key_2)
);
/* 03-09-1998/BIV log #1993
Tabel ins_srtelement is overbodig geworden...
CREATE_TABLE(ins_srtonderdeel,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtonderdeel_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtonderdeel_key PRIMARY KEY,
ins_srtdeel_key
NUMBER(10)
NOT_NULL(ins_srtdeel_key, ins_r_ins_srtdeel_key1)
CONSTRAINT ins_r_ins_srtdeel_key2 REFERENCES ins_srtdeel,
ins_srtonderdeel_omschrijving
VARCHAR2(30)
NOT_NULL(ins_srtonderdeel_omschrijving, ins_c_ins_srtonderdeel_omschr),
ins_srtonderdeel_upper
VARCHAR2(30)
NOT_NULL(ins_srtonderdeel_upper, ins_c_ins_srtonderdeel_upper),
ins_srtonderdeel_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtonderdeel_aanmaak, ins_c_ins_srtonderdeel_aanmaak),
ins_srtonderdeel_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_srtonderdeel_upper UNIQUE(ins_srtdeel_key, ins_srtonderdeel_upper, ins_srtonderdeel_verwijder)
);
*/
/* 03-09-1998/BIV log #1993
Tabel ins_srtelement is overbodig geworden...
CREATE_TABLE(ins_srtelement,INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtelement_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtelement_key PRIMARY KEY,
ins_srtonderdeel_key
NUMBER(10)
NOT_NULL(ins_srtonderdeel_key, ins_r_ins_srtonderdeel_key1)
CONSTRAINT ins_r_ins_srtonderdeel_key2 REFERENCES ins_srtonderdeel,
ins_srtelement_omschrijving
VARCHAR2(30)
NOT_NULL(ins_srtelement_omschrijving, ins_c_ins_srtelement_omschr),
ins_srtelement_upper
VARCHAR2(30)
NOT_NULL(ins_srtelement_upper, ins_c_ins_srtelement_upper),
ins_srtelement_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtelement_aanmaak, ins_c_ins_srtelement_aanmaak),
ins_srtelement_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_srtelement_upper UNIQUE(ins_srtonderdeel_key, ins_srtelement_upper, ins_srtelement_verwijder)
);
*/
CREATE_TABLE(ins_deel,INS_NORMAAL_PRIVILEGE)
(
ins_deel_key
NUMBER(10)
CONSTRAINT ins_k_ins_deel_key PRIMARY KEY,
ins_deel_module
VARCHAR2(3)
DEFAULT 'INS'
NOT_NULL(ins_deel_module, ins_c_ins_deel_module),
ins_srtdeel_key
NUMBER(10)
NOT_NULL(ins_srtdeel_key, ins_r_deel_srtdeel_key1)
CONSTRAINT ins_r_deel_srtdeel_key2 REFERENCES ins_srtdeel,
ins_alg_ruimte_key
NUMBER(10),
ins_alg_ruimte_type
VARCHAR2(1),
/*
* INS_ALG_RUIMTE_TYPE heeft de volgende waarden:
* 'R' : als INS_ALG_RUIMTE_KEY een ruimte aanduidt.
* 'T' : als INS_ALG_RUIMTE_KEY een terreinsector aanduidt.
* 'W' : als INS_ALG_RUIMTE_KEY een werkplek aanduidt.
* 'A' : als INS_ALG_RUIMTE_KEY een afdeling aanduidt.
* 'P' : als INS_ALG_RUIMTE_KEY een persoon aanduidt.
* Dit wordt in de B_IU-trigger gecontroleerd.
*/
ins_deel_aantal
NUMBER(6)
DEFAULT 1
/* NOT_NULL(ins_deel_aantal, ins_c_ins_deel_aantal1) */
CONSTRAINT ins_c_ins_deel_aantal2 CHECK
(ins_deel_aantal is not null and ins_deel_aantal > 0),
ins_deel_omschrijving
VARCHAR2(30)
NOT_NULL(ins_deel_omschrijving, ins_c_ins_deel_omschrijving),
ins_deel_opmerking
VARCHAR2(320),
ins_deel_upper
VARCHAR2(30),
ins_deel_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_deel_aanmaak, ins_c_ins_deel_aanmaak),
ins_deel_verwijder
DATE
DEFAULT NULLDATUM,
ins_deel_getekend
DATE
DEFAULT NULLDATUM,
ins_discipline_key
NUMBER(10)
/* I.o.m. MB is deze constraint verwijderd
NOT_NULL(ins_discipline_key, ins_r_ins_deel_discipline1) */
CONSTRAINT ins_r_ins_deel_discipline2 REFERENCES ins_tab_discipline(ins_discipline_key),
ins_alg_locatie_key
NUMBER(10)
CONSTRAINT ins_r_ins_deel_locatie2 REFERENCES alg_locatie(alg_locatie_key),
/* 03/09/1988/BIV - # 1993 */
ins_deel_parent_key
NUMBER(10)
CONSTRAINT ins_r_ins_deel_key REFERENCES ins_deel(ins_deel_key),
ins_deel_omtrek
NUMBER(8,2),
ins_deel_oppervlak
NUMBER(8,2),
CONSTRAINT ins_u_ins_deel_upper2 UNIQUE(ins_alg_locatie_key,
ins_deel_parent_key, ins_srtdeel_key, ins_deel_upper,
ins_deel_verwijder)
);
/* 03-09-1998/BIV log #1993
Tabel ins_onderdeel is overbodig geworden...
CREATE_TABLE(ins_onderdeel,INS_NORMAAL_PRIVILEGE)
(
ins_onderdeel_key
NUMBER(10)
CONSTRAINT ins_k_ins_onderdeel_key PRIMARY KEY,
ins_srtonderdeel_key
NUMBER(10)
NOT_NULL(ins_srtonderdeel_key, ins_r_ond_srtonderdeel_key1)
CONSTRAINT ins_r_ond_srtonderdeel_key2 REFERENCES ins_srtonderdeel,
ins_deel_key
NUMBER(10)
NOT_NULL(ins_deel_key, ins_r_ins_deel_key1)
CONSTRAINT ins_r_ins_deel_key2 REFERENCES ins_deel,
ins_alg_onroerendgoed_key
NUMBER(10),
ins_onderdeel_aantal
NUMBER(6)
DEFAULT 1
NOT_NULL(ins_onderdeel_aantal, ins_c_ins_onderdeel_aantal1)
CONSTRAINT ins_c_ins_onderdeel_aantal2 CHECK(ins_onderdeel_aantal > 0),
ins_onderdeel_omschrijving
VARCHAR2(30)
NOT_NULL(ins_onderdeel_omschrijving, ins_c_ins_onderdeel_omschr),
ins_onderdeel_fabrikaat
VARCHAR2(30),
ins_onderdeel_type
VARCHAR2(30),
ins_onderdeel_serienr
VARCHAR2(20),
ins_onderdeel_bouwjaar
NUMBER(4)
CONSTRAINT ins_c_ins_onderdeel_bouwjaar CHECK(ins_onderdeel_bouwjaar >=0),
ins_onderdeel_capaciteit
VARCHAR2(20),
ins_onderdeel_prijs
NUMBER(11,2)
CONSTRAINT ins_c_ins_onderdeel_prijs CHECK(ins_onderdeel_prijs >=0),
ins_onderdeel_levensduur
NUMBER(4)
CONSTRAINT ins_c_ins_onderdeel_levensduur CHECK(ins_onderdeel_levensduur >=0),
ins_onderdeel_opmerking
VARCHAR2(320),
ins_onderdeel_upper
VARCHAR2(30),
ins_onderdeel_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_onderdeel_aanmaak, ins_c_ins_onderdeel_aanmaak),
ins_onderdeel_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_onderdeel_upper UNIQUE(ins_deel_key, ins_srtonderdeel_key, ins_onderdeel_upper, ins_alg_onroerendgoed_key, ins_onderdeel_verwijder)
);
*/
/* 03-09-1998/BIV log #1993
Tabel ins_element is overbodig geworden...
CREATE_TABLE(ins_element,INS_NORMAAL_PRIVILEGE)
(
ins_element_key
NUMBER(10)
CONSTRAINT ins_k_ins_element_key PRIMARY KEY,
ins_srtelement_key
NUMBER(10)
NOT_NULL(ins_srtelement_key, ins_r_elem_srtelement_key1)
CONSTRAINT ins_r_elem_srtelement_key2 REFERENCES ins_srtelement,
ins_onderdeel_key
NUMBER(10)
NOT_NULL(ins_onderdeel_key, ins_r_ins_onderdeel_key1)
CONSTRAINT ins_r_ins_onderdeel_key2 REFERENCES ins_onderdeel,
ins_element_aantal
NUMBER(6)
DEFAULT 1
NOT_NULL(ins_element_aantal, ins_c_ins_element_aantal1)
CONSTRAINT ins_c_ins_element_aantal2 CHECK(ins_element_aantal > 0),
ins_element_omschrijving
VARCHAR2(30)
NOT_NULL(ins_element_omschrijving, ins_c_ins_element_omschrijving),
ins_element_fabrikaat
VARCHAR2(30),
ins_element_type
VARCHAR2(30),
ins_element_serienr
VARCHAR2(20),
ins_element_bouwjaar
NUMBER(4)
CONSTRAINT ins_c_ins_element_bouwjaar CHECK(ins_element_bouwjaar >=0),
ins_element_capaciteit
VARCHAR2(20),
ins_element_prijs
NUMBER(11,2)
CONSTRAINT ins_c_ins_element_prijs CHECK(ins_element_prijs >=0),
ins_element_levensduur
NUMBER(4)
CONSTRAINT ins_c_ins_element_levensduur CHECK(ins_element_levensduur >=0),
ins_element_opmerking
VARCHAR2(320),
ins_element_upper
VARCHAR2(30),
ins_element_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_element_aanmaak, ins_c_ins_element_aanmaak),
ins_element_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_element_upper UNIQUE(ins_srtelement_key, ins_onderdeel_key,
ins_element_upper, ins_element_verwijder)
);
*/
#if 0 // 14/01/1998 AH Hier wordt nu INS_KENMERK-tabellen voor gebruikt
/* Systeemtabel voor attributen */
CREATE_TABLE(ins_attribute, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_attribute_main_key
NUMBER(10)
CONSTRAINT ins_k_ins_attribute_main_key PRIMARY KEY,
ins_srtinst_keys
NUMBER(10),
ins_srtinst_type
VARCHAR2(1)
CONSTRAINT ins_c_ins_srtinst_type CHECK(ins_srtinst_type = 'D' OR
ins_srtinst_type = 'G' OR
ins_srtinst_type = 'S'),
ins_attribute_volgorde
NUMBER(2),
ins_attribute_key
NUMBER(1)
CONSTRAINT ins_c_ins_attribute_key CHECK(ins_attribute_key >= 0 AND
ins_attribute_key <= 9),
ins_attribute_label
VARCHAR(15)
NOT_NULL(ins_attribute_label, ins_c_ins_attribute_label),
ins_attribute_type
VARCHAR(1)
CONSTRAINT ins_c_ins_attribute_type CHECK(ins_attribute_type = 'N' OR
ins_attribute_type = 'C' OR
ins_attribute_type = 'R'),
ins_attribute_length
NUMBER(2)
NOT_NULL(ins_attribute_length, ins_c_ins_attribute_length),
ins_attribute_required
NUMBER(1)
CONSTRAINT ins_c_ins_attribute_required CHECK(ins_attribute_required = 0 OR
ins_attribute_required = 1),
ins_attribute_min
NUMBER(10),
ins_attribute_max
NUMBER(10),
ins_attribute_dec
NUMBER(2),
ins_attribute_table
VARCHAR2(30),
ins_attribute_column
VARCHAR2(30),
ins_attribute_column_txt
VARCHAR2(30),
ins_attribute_unit
VARCHAR2(10),
ins_attribute_toonbaar
NUMBER(1)
CONSTRAINT ins_c_ins_attribute_toonbaar CHECK(ins_attribute_toonbaar = 0 OR
ins_attribute_toonbaar = 1)
);
#endif // 0
#ifdef BEB // PF 28-04-99
/* Tijdelijke table voor INS213, omdat daar geen ruimte meer is voor een
* record-group. Deze tabel bevat de soortdelen voor de kolommen van de
* TPL-printout in INS213.
* Velden:
* - INS_SRTDEEL_KEY: de ins_srtdeel_key uit INS_SRTDEEL.
* - INS_SRTDEEL_OMSCHRIJVING: de omschrijving van het soortdeel uit INS_SRTDEEL.
* - INS_SRTDEEL_PRIJS: de prijs v/h soortdeel uit INS_SRTDEEL.
* - INS_SRTDEEL_EENHEID: de eenheid v/h soortdeel uit INS_SRTDEEL.
* - TOTAAL_AANTAL: Het totale aantal voor de gehele rapportage van alle bladen.
* - TOTAAL_KOSTEN: De totale kosten voor de gehele rapportage van alle bladen.
* - RECORD_KOSTEN: Het totale aantal voor een enkel district of locatie in
* de rapportage.
* - RECORD_KOSTEN: De totale kosten voor een enkel district of locatie in
* de rapportage.
*/
CREATE_TABLE(tmp_ins_srtdeel, INS_BASIS_PRIVILEGE)
(
ins_srtdeel_key
NUMBER(10),
ins_srtdeel_omschrijving
VARCHAR2(80),
ins_srtdeel_prijs
NUMBER(8,2),
ins_srtdeel_eenheid
VARCHAR2(15),
ins_srtdeel_volgnr
NUMBER(3),
totaal_aantal
NUMBER(5),
totaal_kosten
NUMBER(20,2),
record_aantal
NUMBER(5),
record_kosten
NUMBER(20,2)
);
#endif // BEB
CREATE_TABLE(ins_import, INS_BASIS_PRIVILEGE)
(
ins_import_key
NUMBER(10)
CONSTRAINT ins_k_ins_import_key PRIMARY KEY,
alg_ruimte_acadkey
VARCHAR2(10),
ins_srtdeel_acadsymbol
VARCHAR2(8),
ins_srtdeel_acad_tagvalue
VARCHAR2(30),
ins_import_aanmaak
DATE
DEFAULT SYSDATE
CONSTRAINT ins_c_ins_import_aanmaak NOT NULL,
ins_import_verwijder
DATE
DEFAULT NULLDATUM
);
/* Tabellen voor INS_KENMERK-zaken */
CREATE_TABLE(ins_refsrtkenmerk, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_refsrtkenmerk_key
NUMBER(10)
CONSTRAINT ins_k_ins_refsrtkenmerk_key PRIMARY KEY,
ins_refsrtkenmerk_omschrijving
VARCHAR2(50)
NOT_NULL(ins_refsrtkenmerk_omschrijving, ins_c_ins_refsrtkenmerk_omschr),
ins_refsrtkenmerk_upper
VARCHAR2(50)
#ifndef MS_SQL
NOT_NULL(ins_refsrtkenmerk_upper, ins_c_ins_refsrtkenmerk_upper)
#endif
,
ins_refsrtkenmerk_objectnaam
VARCHAR2(30)
NOT_NULL(ins_refsrtkenmerk_objectnaam, ins_c_ins_refsrtkenm_objnaam),
ins_refsrtkenmerk_kolomnaam
VARCHAR2(30)
NOT_NULL(ins_refsrtkenmerk_kolomnaam, ins_c_ins_refsrtkenm_kolnaam),
ins_refsrtkenmerk_kolomtxt
VARCHAR2(30)
NOT_NULL(ins_refsrtkenmerk_kolomtxt, ins_c_ins_refsrtkenm_kolomtxt),
fac_usrtab_key
NUMBER(10)
-- NOT_NULL(fac_usrtab_key, fac_c_fac_usrtab_key2)
CONSTRAINT fac_r_fac_usrtab_key2 REFERENCES fac_usrtab(fac_usrtab_key),
ins_refsrtkenmerk_aanmaak
DATE
DEFAULT SYSDATE
CONSTRAINT ins_c_ins_refsrtkenmerk_aanm NOT NULL,
ins_refsrtkenmerk_verwijder
DATE
DEFAULT NULLDATUM
, CONSTRAINT ins_u_ins_refsrtkenmerk_upper UNIQUE(ins_refsrtkenmerk_upper, ins_refsrtkenmerk_verwijder)
);
CREATE_TABLE(ins_srtkenmerk, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_srtkenmerk_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtkenmerk_key PRIMARY KEY,
ins_srtkenmerk_omschrijving
VARCHAR2(50)
NOT_NULL(ins_srtkenmerk_omschrijving, ins_c_ins_srtkenmerk_omschr),
ins_srtkenmerk_upper
VARCHAR2(50)
#ifndef MS_SQL
NOT_NULL(ins_srtkenmerk_upper, ins_c_ins_srtkenmerk_upper)
#endif
,
ins_srtkenmerk_dimensie
VARCHAR2(10),
ins_srtkenmerk_kenmerktype
VARCHAR2(1)
CONSTRAINT ins_c_ins_srtkenmerk_kenmtype CHECK(ins_srtkenmerk_kenmerktype = 'C'
OR ins_srtkenmerk_kenmerktype = 'N'
OR ins_srtkenmerk_kenmerktype = 'D'
OR ins_srtkenmerk_kenmerktype = 'R'
OR ins_srtkenmerk_kenmerktype = 'X'
OR ins_srtkenmerk_kenmerktype = 'L'
OR ins_srtkenmerk_kenmerktype = 'Q'),
ins_srtkenmerk_systeem
NUMBER(1)
CONSTRAINT ins_c_ins_srtkenmerk_systeem CHECK(ins_srtkenmerk_systeem IS NULL
OR ins_srtkenmerk_systeem = 1),
ins_srtkenmerk_lengte
NUMBER(3)
CONSTRAINT ins_c_ins_srtkenmerk_lengte CHECK(ins_srtkenmerk_lengte >= 1
AND ins_srtkenmerk_lengte <= 255),
ins_srtkenmerk_dec
NUMBER(3),
ins_srtkenmerk_nmin
NUMBER(10),
ins_srtkenmerk_nmax
NUMBER(10),
ins_refsrtkenmerk_key
NUMBER(10)
CONSTRAINT ins_r_ins_refsrtkenmerk_key1 REFERENCES ins_refsrtkenmerk(ins_refsrtkenmerk_key),
ins_srtkenmerk_aanmaak
DATE
DEFAULT SYSDATE
CONSTRAINT ins_c_ins_srtkenmerk_aanm NOT NULL,
ins_srtkenmerk_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_srtkenmerk_upper UNIQUE (ins_srtkenmerk_upper, ins_srtkenmerk_verwijder),
CONSTRAINT ins_c_ins_srtkenmerk_max_min CHECK(ins_srtkenmerk_nmax >= ins_srtkenmerk_nmin),
CONSTRAINT ins_r_ins_refsrtkenmerk_key2 CHECK(ins_srtkenmerk_kenmerktype <> 'R'
OR ins_refsrtkenmerk_key IS NOT NULL),
CONSTRAINT ins_c_ins_srtkenmerk_dec CHECK(ins_srtkenmerk_dec >= 0
AND ins_srtkenmerk_dec <= ins_srtkenmerk_lengte)
);
CREATE_TABLE(ins_kenmerk, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_kenmerk_key
NUMBER(10)
CONSTRAINT ins_k_ins_kenmerk_key PRIMARY KEY,
ins_srtkenmerk_key
NUMBER(10)
NOT_NULL(ins_srtkenmerk_key, ins_r_ins_srtkenmerk_key1)
CONSTRAINT ins_r_ins_srtkenmerk_key2 REFERENCES ins_srtkenmerk(ins_srtkenmerk_key),
ins_srtinstallatie_key
NUMBER(10),
ins_kenmerk_niveau
VARCHAR2(1)
/* NOT_NULL(ins_kenmerk_niveau, ins_c_ins_kenmerk_niveau1) */
CONSTRAINT ins_c_ins_kenmerk_niveau2 CHECK
(ins_kenmerk_niveau is not null and (ins_kenmerk_niveau = 'D'
OR ins_kenmerk_niveau = 'G'
OR ins_kenmerk_niveau = 'S')),
ins_kenmerk_verplicht
NUMBER(1)
CONSTRAINT ins_c_ins_kenmerk_verplicht CHECK(ins_kenmerk_verplicht IS NULL
OR ins_kenmerk_verplicht = 1),
ins_kenmerk_toonbaar
NUMBER(1)
CONSTRAINT ins_c_ins_kenmerk_toonbaar CHECK(ins_kenmerk_toonbaar IS NULL
OR ins_kenmerk_toonbaar = 1),
ins_kenmerk_volgnummer
NUMBER(3),
ins_kenmerk_locatiekolom
VARCHAR2(30),
ins_kenmerk_uniek
NUMBER(1),
ins_kenmerk_default
VARCHAR2(255),
ins_kenmerk_aanmaak
DATE
DEFAULT SYSDATE
CONSTRAINT ins_c_ins_kenmerk_aanmaak NOT NULL,
ins_kenmerk_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_r_ins_srtinstallatie_key1 CHECK(ins_srtinstallatie_key IS NOT NULL
OR ins_kenmerk_niveau = 'D'),
CONSTRAINT ins_u_ins_kenmerk UNIQUE(ins_srtkenmerk_key, ins_srtinstallatie_key, ins_kenmerk_niveau)
);
/* De waarde mag in de tabel NULL zijn, maar om de database niet
* overbodig te vullen worden de NULL-records after-statement weer verwijderd.
*/
CREATE_TABLE(ins_kenmerkdeel, INS_NORMAAL_PRIVILEGE)
(
ins_kenmerkdeel_key
NUMBER(10)
CONSTRAINT ins_k_ins_kenmerkdeel_key PRIMARY KEY,
ins_deel_key
NUMBER(10)
NOT_NULL(ins_deel_key, ins_r_ins_kenmerk_deel_key1),
ins_kenmerk_key
NUMBER(10)
NOT_NULL(ins_kenmerk_key, ins_r_ins_kenmerk_key1)
CONSTRAINT ins_r_ins_kenmerk_key2 REFERENCES ins_kenmerk(ins_kenmerk_key),
ins_kenmerkdeel_waarde
VARCHAR2(255),
ins_kenmerkdeel_aanmaak
DATE
DEFAULT SYSDATE
CONSTRAINT ins_c_ins_kenmerkdeel_aanmaak NOT NULL,
ins_kenmerkdeel_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_kenmerkdeel UNIQUE(ins_kenmerk_key, ins_deel_key, ins_kenmerkdeel_verwijder)
);
/* De velden aanmaak en verwijder zijn hier toegevoegd om het mechanisme van
* CASCADE verwijderen in triggers op te kunnen lossen. In de after-statement-trigger
* van INS_DEELKOPPELING worden de logisch-verwijderde deelkoppelingen echt verwijderd.
*/
CREATE_TABLE(ins_deelkoppeling, INS_NORMAAL_PRIVILEGE)
(
ins_deelkoppeling_key
NUMBER(10)
CONSTRAINT ins_k_ins_deelkoppeling_key PRIMARY KEY,
ins_deelkoppeling_van_key
NUMBER(10)
NOT_NULL(ins_deelkoppeling_van_key, ins_r_deelkoppeling_van_key1)
CONSTRAINT ins_r_deelkoppeling_van_key2 REFERENCES ins_deel(ins_deel_key),
ins_deelkoppeling_naar_key
NUMBER(10)
NOT_NULL(ins_deelkoppeling_naar_key, ins_r_deelkoppeling_naar_key1)
CONSTRAINT ins_r_deelkoppeling_naar_key2 REFERENCES ins_deel(ins_deel_key),
ins_deelkoppeling_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_deelkoppeling_aanmaak, ins_c_deelkoppeling_aanmaak),
ins_deelkoppeling_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_c_deelkoppeling_van_naar CHECK(ins_deelkoppeling_van_key <> ins_deelkoppeling_naar_key),
CONSTRAINT ins_u_deelkoppeling_van_naar UNIQUE(ins_deelkoppeling_van_key, ins_deelkoppeling_naar_key)
);
CREATE_TABLE(ins_compositie, INS_BIBLIOTHEEK_PRIVILEGE)
(
ins_compositie_key
NUMBER(10)
CONSTRAINT ins_k_ins_compositie_key PRIMARY KEY,
ins_compositie_naam
VARCHAR2(10)
NOT_NULL(ins_compositie_naam, ins_c_ins_compositie_naam),
ins_compositie_upper
VARCHAR2(10)
#ifndef MS_SQL
NOT_NULL(ins_compositie_upper, ins_c_ins_compositie_upper)
#endif
,
ins_compositie_omschrijving
VARCHAR2(255),
ins_compositie_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_compositie_aanmaak, ins_c_ins_compositie_aanmaak),
ins_compositie_verwijder
DATE
DEFAULT NULLDATUM,
CONSTRAINT ins_u_ins_compositie_upper UNIQUE(ins_compositie_upper, ins_compositie_verwijder)
);
CREATE_TABLE(ins_srtdeel_compositie, INS_NORMAAL_PRIVILEGE)
(
ins_srtdeel_comp_key
NUMBER(10)
CONSTRAINT ins_k_ins_srtdeel_comp_key PRIMARY KEY,
ins_srtdeel_key
NUMBER(10)
NOT_NULL(ins_srtdeel_key, ins_r_ins_srtdeel_key1)
CONSTRAINT ins_r_ins_srtdeel_key2 REFERENCES ins_srtdeel(ins_srtdeel_key),
ins_compositie_key
NUMBER(10)
NOT_NULL(ins_compositie_key, ins_r_ins_compositie_key)
CONSTRAINT ins_r_ins_compositie_key2 REFERENCES ins_compositie(ins_compositie_key),
ins_srtdeel_comp_offsetX
NUMBER(6,2)
DEFAULT 0,
ins_srtdeel_comp_offsetY
NUMBER(6,2)
DEFAULT 0,
ins_srtdeel_comp_offsetR
NUMBER(6,2)
DEFAULT 0,
ins_srtdeel_comp_aanmaak
DATE
DEFAULT SYSDATE
NOT_NULL(ins_srtdeel_comp_aanmaak, ins_c_ins_srtdeel_comp_aanmaak),
ins_srtdeel_comp_verwijder
DATE
DEFAULT NULLDATUM
);
CREATE_TABLE(ins_verbinding, INS_NORMAAL_PRIVILEGE)
(
ins_verbinding_sessionid
NUMBER(10),
ins_deel_key
NUMBER(10),
ins_verbinding_level
NUMBER(3),
CONSTRAINT ins_u_ins_verbinding_key UNIQUE(ins_verbinding_sessionid, ins_deel_key)
);
#endif // INS