#ifdef MLD // 13-03-96 AH /* $Revision$ * $Id$ */ CREATE_TABLE(mld_behandelgroep,0) ( mld_behandelgroep_key NUMBER(10) CONSTRAINT mld_k_behandelgroep_key PRIMARY KEY, mld_behandelgroep_naam VARCHAR2(30) NOT_NULL(mld_behandelgroep_naam, mld_c_behandelgroep_naam), mld_behandelgroep_oms VARCHAR2(1000), CONSTRAINT mld_u_behandelgroep_naam UNIQUE (mld_behandelgroep_naam) ); /* fac_activiteit_key verwijst optioneel naar een activiteit en daarmee mld_opdr, waarmee * aangegeven kan worden dat automatisch na een melding van deze discipline zo'n opdracht moet * worden aangemaakt, CONN#3513 */ CREATE_TABLE(mld_disc_params, 0) ( mld_disc_params_key NUMBER(10) CONSTRAINT mld_k_mld_disc_params_key PRIMARY KEY, mld_ins_discipline_key NUMBER(10) NOT_NULL(mld_ins_discipline_key, mld_c_ins_discipline_key1) CONSTRAINT mld_r_ins_discipine_key1 REFERENCES ins_tab_discipline(ins_discipline_key), mld_disc_params_factuurmarge NUMBER(8,2) DEFAULT 0, mld_disc_params_factuurappr NUMBER(1) DEFAULT 0, mld_disc_params_factuurpct NUMBER DEFAULT 0, mld_disc_params_factuurgrens -- hieronder vinden we het best (excl btw) NUMBER(8), mld_disc_params_factmatchmode -- 2-weg of 3-weg matching? NUMBER(1) CONSTRAINT mld_c_disc_params1 CHECK(mld_disc_params_factmatchmode IN (2,3)), -- leeg mag ook fac_activiteit_key NUMBER(10) CONSTRAINT mld_r_fac_activiteit_key1 REFERENCES fac_activiteit(fac_activiteit_key), mld_disc_params_notify NUMBER(2) -- valid are 0, 1 and 2 DEFAULT 1, mld_disc_params_noti_dagen NUMBER(2), mld_disc_params_opdr_kosten -- bitwise valid are 0, 1, 2 and 4. Opdr kosten verplicht bij (0 = niet verplicht, 1 = save + 2 = afmelden, 4 = afronden) NUMBER(1), mld_disc_params_directklaar NUMBER(1), mld_disc_params_frontendprio NUMBER(1), mld_disc_params_kanpubliek NUMBER(1) -- valid are 0, 1 DEFAULT 0 NOT NULL, mld_disc_params_bonotify NUMBER(2) -- BO notificatie accept 0=niet, 1=bof, 2=bo3, 3=bo3 (aanmaak nieuwe melding) en dan bof (accepteren melding) DEFAULT 0, mld_disc_params_bhgnotify NUMBER(1) -- valid are 0, 1, 2, 3 DEFAULT 1 NOT NULL, mld_disc_params_benotify NUMBER(1) -- valid are 0, 1 DEFAULT 0 NOT NULL, mld_disc_params_nobnotify NUMBER(1) -- valid are 0, 1 DEFAULT 1 NOT NULL, mld_disc_params_offhours NUMBER(1) DEFAULT 0 NOT NULL, mld_disc_params_fenotes NUMBER(2) -- bitwise valid are 0, 1, 2 and 3 (0,1 = (default) niet/wel + 0,2 = vast/keuze) DEFAULT 0, mld_disc_params_eigen_kp NUMBER(1) -- valid are 0, 1 DEFAULT 0, mld_disc_params_startdatum -- if null then matches setting mld_stdmelding_startdatum NUMBER(1), mld_disc_params_bestellimiet NUMBER(11,2) DEFAULT 100000, mld_disc_params_offerteauto -- Automatische offerteafhandeling Ja/Nee(1/0) NUMBER(1) DEFAULT 1, mld_disc_params_keten -- Call can be assigned to another category {0=no (default) | 1=yes} NUMBER(1) DEFAULT 0, mld_behandelgroep_key NUMBER(10) CONSTRAINT mld_r_behandelgroep_key1 REFERENCES mld_behandelgroep(mld_behandelgroep_key), mld_disc_params_bestellimiet2 NUMBER(11,2) DEFAULT 1000000, mld_disc_params_bestellimiet3 NUMBER(11,2) DEFAULT 1000000, mld_disc_params_bestellimiet4 NUMBER(11,2) DEFAULT 1000000, mld_disc_params_bestellimiet5 NUMBER(11,2) DEFAULT 1000000, mld_disc_params_emailnw1 VARCHAR2(200), mld_disc_params_emailnw2 VARCHAR2(200), mld_disc_params_emailnw3 VARCHAR2(200), mld_disc_params_emailnw4 VARCHAR2(200), mld_disc_params_smsnw1 VARCHAR2(15), mld_disc_params_smsnw2 VARCHAR2(15), mld_disc_params_smsnw3 VARCHAR2(15), mld_disc_params_smsnw4 VARCHAR2(15), mld_disc_params_pgb /* 0=Geen van beiden, 1=Alleen pgb, 2=Alleen agb, 3=Beiden, pgb en agb */ NUMBER(1), mld_disc_params_srtgroep /* &1=Primaire vakgroep, &2=Behandelteam, &4=Primair heeft behandelteams (0, 4 en 6 zijn hiermee dus ongeldige/onlogische waarden) */ NUMBER(1) DEFAULT(1) NOT NULL CONSTRAINT mld_c_mld_disc_params_srtgroep CHECK(mld_disc_params_srtgroep IN (1,5,2,3,7)), mld_disc_params_primairbeh NUMBER(1) DEFAULT(1) NOT NULL, mld_disc_params_mldgroup NUMBER(3) DEFAULT(0) NOT NULL ); CREATE_TABLE(mld_oorzaak,0) ( mld_oorzaak_key NUMBER(10) CONSTRAINT mld_k_mld_oorzaak_key PRIMARY KEY, mld_oorzaak_omschrijving VARCHAR2(30) NOT_NULL(mld_oorzaak_omschrijving, mld_c_mld_oorzaak_omschrijving), mld_oorzaak_upper VARCHAR2(30) NOT_NULL(mld_oorzaak_upper, mld_c_mld_oorzaak_upper), mld_oorzaak_aanmaak DATE DEFAULT SYSDATE NOT_NULL(mld_oorzaak_aanmaak, mld_c_mld_oorzaak_aanmaak), mld_oorzaak_verwijder DATE DEFAULT NULLDATUM, CONSTRAINT mld_u_mld_oorzaak_upper UNIQUE(mld_oorzaak_upper, mld_oorzaak_verwijder) ); CREATE_TABLE(mld_meldbron,0) ( mld_meldbron_key NUMBER(10) CONSTRAINT mld_k_mld_meldbron_key PRIMARY KEY, mld_meldbron_omschrijving VARCHAR2(30) NOT_NULL(mld_meldbron_omschrijving, mld_c_mld_meldbron_omschr), mld_meldbron_upper VARCHAR2(30) NOT_NULL(mld_meldbron_upper, mld_c_mld_meldbron_upper), mld_meldbron_default NUMBER(1), mld_meldbron_aanmaak DATE DEFAULT SYSDATE NOT_NULL(mld_meldbron_aanmaak, mld_c_mld_meldbron_aanmaak), mld_meldbron_verwijder DATE DEFAULT NULLDATUM, CONSTRAINT mld_u_mld_meldbron_upper UNIQUE(mld_meldbron_upper, mld_meldbron_verwijder) ); CREATE_TABLE(mld_standaardopdr,0) ( mld_standaardopdr_key NUMBER(10) CONSTRAINT mld_k_mld_standaardopdr_key PRIMARY KEY, mld_standaardopdr_omschrijving VARCHAR2(320) NOT_NULL(mld_standaardopdr_omschrijving, mld_c_mld_standaardopdr_omschr), mld_standaardopdr_afk VARCHAR2(30) NOT_NULL(mld_standaardopdr_afk, mld_c_mld_standaardopdr_afk), mld_standaardopdr_afk_upper VARCHAR2(30) NOT_NULL(mld_standaardopdr_afk_upper, mld_c_mld_stdopdr_afk_upper), mld_standaardopdr_uren NUMBER(8,2), mld_standaardopdr_materiaal NUMBER(9,2), mld_standaardopdr_aanmaak DATE DEFAULT SYSDATE NOT_NULL(mld_standaardopdr_aanmaak, mld_c_mld_stdopdr_aanmaak), mld_standaardopdr_verwijder DATE DEFAULT NULLDATUM, CONSTRAINT mld_u_mld_stdopdr_afk_upper UNIQUE(mld_standaardopdr_afk_upper, mld_standaardopdr_verwijder) ); CREATE_TABLE(mld_typeopdr,0) ( mld_typeopdr_key NUMBER(10) CONSTRAINT mld_k_mld_typeopdr_key PRIMARY KEY, mld_typeopdr_omschrijving VARCHAR2(30) NOT_NULL(mld_typeopdr_omschrijving, mld_c_mld_typeopdr_omschr), mld_typeopdr_upper VARCHAR2(30) NOT_NULL(mld_typeopdr_upper, mld_c_mld_typeopdr_upper), mld_typeopdr_module VARCHAR2(3) NOT_NULL(mld_typeopdr_module, mld_c_mld_typeopdr_module), mld_typeopdr_decentraal NUMBER(1) DEFAULT(0) CONSTRAINT mld_c_mld_typeopdr_decentraal CHECK(mld_typeopdr_decentraal IN (0,1,2)), /*0=centraal, 1=beide, 2=decentraal*/ mld_typeopdr_afmelden_extern NUMBER(1) DEFAULT(0) CONSTRAINT mld_c_mld_typeopdr_afm_extern CHECK(mld_typeopdr_afmelden_extern IN (0,1,2)), /* 0=not visible | 1=visible for ORDBO2 | 2=visible and changeble by ORDBO2 */ mld_typeopdr_kosten NUMBER(1) DEFAULT(0) CONSTRAINT mld_c_mld_typeopdr_kosten CHECK(mld_typeopdr_kosten IN (0,1)), mld_typeopdr_sluitmelding NUMBER(1) DEFAULT(0) CONSTRAINT mld_c_mld_typeopdr_sluitm CHECK(mld_typeopdr_sluitmelding IN (0,1,2)), /*0=niet, 1=vragen, 2=vanzelf*/ mld_typeopdr_annuleermelding NUMBER(1) DEFAULT(0) NOT NULL CONSTRAINT mld_c_mld_typeopdr_annulm CHECK(mld_typeopdr_annuleermelding IN (0,1,2)), /*0=niet, 1=vragen, 2=vanzelf*/ mld_typeopdr_matchtype NUMBER(1) DEFAULT(2) CONSTRAINT mld_c_mld_typeopdr_match CHECK(mld_typeopdr_matchtype IN (0,1,2,3,4,5,6,7)), /*0=altijd ok, 1=mld_opdr_totaal, 2=termijnen, 3=mld_opdr_uren(per week), 4=geen kosten, 5=aantal x prijs, 6=mld_opdr_uren(totaal),7=max aantal uren */ mld_typeopdr_uren NUMBER(1) DEFAULT 1 NOT NULL CONSTRAINT ins_c_mld_typeopdr_uren CHECK(mld_typeopdr_uren IN (0, 1, 2, 3, 4, 5)), mld_typeopdr_materiaal NUMBER(1) DEFAULT 1 NOT NULL CONSTRAINT ins_c_mld_typeopdr_materiaal CHECK(mld_typeopdr_materiaal IN (0, 1, 2, 3)), /* 0=Geen materiaal, 1=Optioneel totaalbedrag, 2=Materialenlijst, 3=Verplichte materialenlijst */ mld_typeopdr_totaal NUMBER(1) DEFAULT 1 NOT NULL CONSTRAINT ins_c_mld_typeopdr_totaal CHECK(mld_typeopdr_totaal IN (0, 1, 2)), mld_typeopdr_factuur NUMBER(1) DEFAULT 3 NOT NULL CONSTRAINT ins_c_mld_typeopdr_factuur CHECK(mld_typeopdr_factuur IN (0, 1, 2, 3, 4)), mld_typeopdr_afmeldmarge /* aantal dagen dat afmeldtijdstip vroeger mag zijn dan sysdate */ NUMBER(2), mld_typeopdr_zichtbaarfe /* of deze opdrachten zichtbaar zijn voor de melders (1) of niet (0/null) */ NUMBER(1), mld_typeopdr_offertelimiet /* boven dit bedrag is een offerte vereist (met name voor niet-offerteopdrachten) */ NUMBER(8), mld_typeopdr_isofferte /* of deze opdrachten een offerte zijn (AAIT#22177) */ NUMBER(1) DEFAULT (0) CONSTRAINT mld_c_mld_typeopdr_isofferte CHECK(mld_typeopdr_isofferte IN (0,1)), mld_typeopdr_typeopdr_key /* de mld_typeopdr_key voor vervolgopdracht (indien dit een offerte was) */ NUMBER(10) CONSTRAINT mld_r_typeopdr_key1 REFERENCES mld_typeopdr(mld_typeopdr_key), mld_typeopdr_slamode NUMBER(1) -- 1: Leverancier-SLA, 2=Melding-SLA DEFAULT 1 NOT NULL, mld_typeopdr_contract /* of bij deze opdrachten een contract moet (3), kan (2) of niet kan (0) worden opgegeven */ NUMBER(1) DEFAULT (2) CONSTRAINT mld_c_mld_typeopdr_contract CHECK(mld_typeopdr_contract IN (0,2,3)), mld_typeopdr_bez NUMBER(1) DEFAULT(0) CONSTRAINT mld_c_mld_typeopdr_bez CHECK(mld_typeopdr_bez IN (0,1)), mld_typeopdr_afhandeling /* Afhandeling verplicht bij afmelden opdracht van dit opdrachttype (0=Nee/1=Ja) */ NUMBER(1) DEFAULT 0, mld_typeopdr_gvs NUMBER(11,2) DEFAULT 1000000, mld_typeopdr_fvs NUMBER(11,2) DEFAULT 0, mld_typeopdr_accept NUMBER(1) /* -- valid are 0, 1 */ DEFAULT 1 NOT NULL, mld_typeopdr_kosten_verplicht /* bitwise valid are 0, 1, 2 and 4. Opdr kosten verplicht bij (0 = niet verplicht, 1 = save + 2 = afmelden, 4 = afronden) */ NUMBER(1), mld_typeopdr_sequential /* Strikte sequentiele opdracht afhandeling en/of Hold (BITAND1 is (kan pauzeren en hervatten) en BITAND2 is strikt sequentieel) */ NUMBER(1) DEFAULT 0 NOT NULL, mld_typeopdr_image VARCHAR2(255 CHAR), CONSTRAINT mld_u_mld_typeopdr_upper UNIQUE(mld_typeopdr_upper, mld_typeopdr_module) ); ALTER TABLE prs_bedrijfadres ADD ( mld_typeopdr_key NUMBER(10) CONSTRAINT prs_r_mld_typeopdr_key REFERENCES mld_typeopdr(mld_typeopdr_key) ON DELETE CASCADE ); /* -- 0 = ignore mld_opdr_totaal (factuur altijd goed) -- 1 = match met mld_opdr_totaal (binnen marges, 1 factuur per opdracht) -- 2 = termijnfacturen (totaal van facturen matchen met mld_opdr_totaal) -- 3 = match met urenregistratie in mld_opdr_uren (nieuw) */ CREATE_TABLE(mld_stdmeldinggroep,0) ( mld_stdmeldinggroep_key NUMBER(10) CONSTRAINT mld_k_mld_stdmeldinggroep_key PRIMARY KEY, mld_stdmeldinggroep_naam VARCHAR2(30) NOT_NULL(mld_stdmeldinggroep_naam, mld_c_mld_stdmeldinggroep_naam), mld_stdmeldinggroep_oms VARCHAR2(1000), mld_stdmeldinggroep_image VARCHAR2(255), mld_stdmeldinggroep_color VARCHAR2 (60), CONSTRAINT mld_u_stdmeldinggroep_naam UNIQUE (mld_stdmeldinggroep_naam) ); CREATE_TABLE(mld_stdmelding,0) ( mld_stdmelding_key NUMBER(10) CONSTRAINT mld_k_mld_stdmelding_key PRIMARY KEY, mld_ins_discipline_key NUMBER(10) NOT_NULL(mld_ins_discipline_key, mld_c_ins_discipline_key) CONSTRAINT mld_r_ins_discipline_key REFERENCES ins_tab_discipline(ins_discipline_key), mld_stdmelding_omschrijving VARCHAR2(60) NOT_NULL(mld_stdmelding_omschrijving, mld_c_mld_stdmelding_omschr), mld_stdmelding_upper VARCHAR2(60) NOT_NULL(mld_stdmelding_upper, mld_c_mld_stdmelding_upper), mld_stdmelding_hint VARCHAR2(1000), mld_stdmelding_default_disc NUMBER(10) CONSTRAINT mld_r_ins_discipline_key5 REFERENCES ins_tab_discipline(ins_discipline_key), mld_stdmelding_t_accepttijd /* pr3 */ MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmelding_t_accept CHECK(mld_stdmelding_t_accepttijd.tijdsduur >= 0), mld_stdmelding_t_accept_pr1 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmelding_t_accept1 CHECK(mld_stdmelding_t_accept_pr1.tijdsduur >= 0), mld_stdmelding_t_accept_pr2 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmelding_t_accept2 CHECK(mld_stdmelding_t_accept_pr2.tijdsduur >= 0), mld_stdmelding_t_accept_pr4 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmelding_t_accept4 CHECK(mld_stdmelding_t_accept_pr4.tijdsduur >= 0), mld_stdmelding_t_uitvoertijd /* pr3 */ MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmeld_t_uitvtijd CHECK(mld_stdmelding_t_uitvoertijd.tijdsduur >= 0), mld_stdmelding_t_uitvtijd_pr1 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmeld_t_uitvtijd1 CHECK(mld_stdmelding_t_uitvtijd_pr1.tijdsduur >= 0), mld_stdmelding_t_uitvtijd_pr2 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmeld_t_uitvtijd2 CHECK(mld_stdmelding_t_uitvtijd_pr2.tijdsduur >= 0), mld_stdmelding_t_uitvtijd_pr4 MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmeld_t_uitvtijd4 CHECK(mld_stdmelding_t_uitvtijd_pr4.tijdsduur >= 0), mld_stdmelding_planbaar -- 0: einddatum wordt berekend, 1: de einddatum van de melding is default leeg, 2: veld is verborgen, +4: toon actiedatum NUMBER(1) DEFAULT 0 NOT NULL, mld_stdmelding_planbaarfe -- 0: niet in te vullen door FE NUMBER(1) DEFAULT 0 NOT NULL, mld_stdmelding_thirdparty -- 1: external person can be used in call NUMBER(1) DEFAULT 0 NOT NULL, mld_stdmelding_slabewaken NUMBER(1) -- 0: overschrijden van SLA is niet erg DEFAULT 1 NOT NULL, mld_stdmelding_notfrontend NUMBER(1) -- 1 : niet zichtbaar voor front end webusers DEFAULT 0, mld_stdmelding_prseigen NUMBER(1) DEFAULT 0, -- 1: alleen op ruimte van eigen afdeling mld_stdmelding_notify -- valid are 0 and 1, only used when mld_disc_params_notify=2 NUMBER(2) DEFAULT 1, mld_stdmelding_volgnr NUMBER(3), mld_stdmeldinggroep_key -- reference to mld_stdmeldinggroep NUMBER(10) CONSTRAINT mld_r_mld_stdmeldinggroep_key REFERENCES mld_stdmeldinggroep(mld_stdmeldinggroep_key), ins_srtinst_verplichtstatus NUMBER(2), alg_onrgoed_niveau -- level of onrgoed of objects to display with new melding and/or required level VARCHAR2(1) CONSTRAINT mld_c_alg_onrgoed_niveau CHECK (alg_onrgoed_niveau IN ('L','G','V','R')), alg_onrgoed_obj_niveau -- level of onrgoed which should be selected before chosing objects VARCHAR2(1) CONSTRAINT mld_c_alg_onrgoed_obj_niveau CHECK (alg_onrgoed_obj_niveau IN ('A','L','G','V','R')), alg_org_obj_niveau -- level of organisation from which objects can be chosen (-1=alle, 0=bedrijf, ...., 9=geen) NUMBER(1) DEFAULT -1 CONSTRAINT mld_c_alg_org_objniveau CHECK (alg_org_obj_niveau IN (-1,0,1,2,3,4,5,8)), mld_stdmelding_freetext -- 0:geen omschrijving, 1:optionele omschrijving, 2:verplichte omschrijving NUMBER(1) DEFAULT 1, mld_stdmelding_afmeldtext -- bij afmelden 1:optionele opmerking, 2:verplichte opmerking NUMBER(1) DEFAULT 1, mld_stdmelding_doublecheck -- controleer op dubbelen bij invoer/acceptatie 0:niet, 1:FE/FO, 2:BO, 3:FE/FO/BO NUMBER(4), mld_stdmelding_kopieerbaar -- 0/null: een melding kan niet gekopieerd worden, 1: kan wel gekopieerd worden. NUMBER(1), mld_stdmelding_kto -- 0,1,2,3: 1-bit=niet/wel, 2-bit=vast/aanpasbaar NUMBER(1), prs_kostensoort_key NUMBER(10) CONSTRAINT ins_r_prs_kostensoort_key2 REFERENCES prs_kostensoort(prs_kostensoort_key), prs_kostenplaats_key NUMBER(10) CONSTRAINT mld_r_prs_kostenplaats_key3 REFERENCES prs_kostenplaats (prs_kostenplaats_key), mld_stdmelding_autoorder -- (1: probeer automatisch opdracht te maken) NUMBER(1), mld_stdmelding_autoorderamount -- Opdrachtbedrag voor automatisch aangemaakte opdrachten (default 0). NUMBER(12,2), mld_typeopdr_key -- wat voor een opdrachttype als autoorder of anders default NUMBER(10) CONSTRAINT mld_r_mld_typeopdr1 REFERENCES mld_typeopdr(mld_typeopdr_key), mld_stdmelding_vereisdienst -- (1: mag alleen als binnen scope dienst geleverd wordt) NUMBER(1), mld_stdmelding_regime -- afhandelingsregime NUMBER(2) DEFAULT 1 CONSTRAINT mld_c_stdmelding_regime CHECK (mld_stdmelding_regime IS NOT NULL AND mld_stdmelding_regime IN (1,2,3)), -- 1=kantoortijden, 2=openingstijden, 3=24x7 mld_stdmelding_malusbasis -- eenmalige boete/korting bij overschrijding NUMBER(8,2), mld_stdmelding_malus -- boete/korting bij overschrijding [per periode] NUMBER(8,2), mld_stdmelding_malusmax NUMBER(8,2), mld_stdmelding_afhankelijk -- is de uitvoertijd afhankelijk van de ins_deel/alg_srtruimte (1) of niet (0) NUMBER(1) DEFAULT 0 CONSTRAINT mld_c_stdmelding_afhankelijk CHECK (mld_stdmelding_afhankelijk IN (0,1)), prs_dienst_key NUMBER(10) CONSTRAINT mld_r_prs_dienst_key1 REFERENCES prs_dienst(prs_dienst_key), bes_ins_discipline_key -- verwijzing naar de bes_discipline indien ins_srtdiscipline_bes=1 NUMBER(10) CONSTRAINT mld_r_bes_discipline_key1 REFERENCES ins_tab_discipline(ins_discipline_key), mld_stdmelding_image VARCHAR2(255 CHAR), mld_stdmelding_color VARCHAR2 (60 CHAR), mld_stdmelding_vervaldatum DATE, mld_stdmelding_aanmaak DATE DEFAULT SYSDATE, mld_stdmelding_verwijder DATE, mld_stdmelding_opdrtypevast -- 0: standaard opdrachttype NUMBER(1) -- 1: verplicht opdrachttype DEFAULT 0, mld_stdmelding_directklaar NUMBER(1), mld_stdmelding_kanverwijzen --0..127: 0: nee, +1: melding, +2: opdracht, +4: reservering, +8: bestelling, +16: bestelopdr, +32: contract, +64: factuur NUMBER(4) DEFAULT 0, mld_stdmelding_subject -- 0:geen onderwerp, 1:optionele onderwerp, 2:verplichte onderwerp NUMBER(1) DEFAULT 1 NOT_NULL(mld_stdmelding_subject, mld_c_mld_stdmelding_subject), mld_stdmelding_externurl VARCHAR2(1024), mld_stdmelding_enddate_empty -- Einddatum opdracht leeglaten (0=Nee(Default) | 1=Ja) NUMBER(1) DEFAULT 0 CONSTRAINT mld_c_stdmelding_enddate_empty CHECK (mld_stdmelding_enddate_empty IN (0,1)) CONSTRAINT mld_c_stdmelding_enddate_empt2 CHECK (mld_stdmelding_enddate_empty IS NOT NULL), mld_stdmelding_prsafdobj NUMBER(1) DEFAULT 0 NOT NULL, mld_stdmelding_code VARCHAR2(60) CONSTRAINT mld_u_mld_stdmelding_code UNIQUE, mld_stdmelding_externnr VARCHAR2(256), mld_stdmelding_externsyncdate DATE, mld_stdmelding_notes // 0:geen notities, &1=FE, &2=FOBO, &4=UITV NUMBER(1) DEFAULT 7 NOT_NULL(mld_stdmelding_notes, mld_c_mld_stdmelding_notes), -- in CAD_TAB.SRC: -- cad_thema_key -- NUMBER(10) -- CONSTRAINT mld_r_cad_thema_key1 REFERENCES cad_thema(cad_thema_key), CONSTRAINT mld_u_mld_stdmelding UNIQUE(mld_ins_discipline_key, mld_stdmelding_omschrijving, mld_stdmelding_verwijder) ); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_accepttijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_accept_pr1 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_accept_pr2 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_accept_pr4 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvoertijd DEFAULT MLD_T_UITVOERTIJD(2, 1); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvoertijd NOT_NULL(mld_stdmelding_t_uitvoertijd.tijdsduur, mld_c_stdmelding_t_uitvtijd); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvoertijd NOT_NULL(mld_stdmelding_t_uitvoertijd.eenheid, mld_c_stdmelding_t_eenheid_uit); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr1 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr2 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr4 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE ins_srtcontrole ADD ( mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key7 REFERENCES mld_stdmelding ); CREATE_TABLE(mld_stdmelding_srtinst, 0) ( mld_stdmelding_srtinst_key NUMBER(10) CONSTRAINT mld_k_stdmelding_srtinst_key PRIMARY KEY, mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key8 REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE NOT_NULL(mld_stdmelding_key, mld_c_stdmelding_key1), ins_srtinstallatie_key -- optional reference to objecttype (level defined by _niveau) NUMBER(10), ins_srtinstallatie_niveau -- level of _srtinst_key VARCHAR2(1) CONSTRAINT mld_c_mld_srtinst_niveau CHECK (ins_srtinstallatie_niveau IN ('D','G','S')), mld_stdmelding_srtinst_aanmaak DATE DEFAULT SYSDATE, CONSTRAINT mld_u_mld_stdmelding_srtinst UNIQUE(mld_stdmelding_key, ins_srtinstallatie_niveau, ins_srtinstallatie_key) ); // Eventuele afwijkingen per srtruimte van SLA tijden. // Fungeert als COALESCE met alg_srtruimte. CREATE_TABLE(mld_stdmsrtruimte, 0) ( mld_stdmsrtruimte_key NUMBER(10) CONSTRAINT mld_k_mld_stdmsrtruimte_key PRIMARY KEY, alg_srtruimte_key NUMBER(10) CONSTRAINT alg_r_alg_srtruimte_key3 REFERENCES alg_srtruimte(alg_srtruimte_key) ON DELETE CASCADE NOT_NULL(alg_srtruimte_key, alg_c_srtruimte_key2), mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key5 REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE NOT_NULL(mld_stdmelding_key, mld_c_stdmelding_key), mld_stdmsrtruimte_malusbasis -- eenmalige boete/korting bij overschrijding NUMBER(8,2), mld_stdmsrtruimte_malus -- boete/korting bij overschrijding [per periode] NUMBER(8,2), mld_stdmsrtruimte_malusmax NUMBER(8,2), mld_stdmsrtruimte_t_accepttijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtruimte_t_acc CHECK(mld_stdmsrtruimte_t_accepttijd.tijdsduur >= 0), mld_stdmsrtruimte_t_uitvtijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtruimte_t_uitv CHECK(mld_stdmsrtruimte_t_uitvtijd.tijdsduur >= 0), CONSTRAINT mld_u_mld_stdmsrtruimte UNIQUE(alg_srtruimte_key, mld_stdmelding_key), mld_stdmsrtruimte_regime -- optioneel afwijkend afhandelingsregime (may be null) NUMBER(2) CONSTRAINT mld_c_stdmsrtruimte_regime CHECK (mld_stdmsrtruimte_regime IN (1,2,3)) -- 1=kantoortijden, 2=openingstijden, 3=24x7 ); ALTER TABLE mld_stdmsrtruimte MODIFY mld_stdmsrtruimte_t_accepttijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmsrtruimte MODIFY mld_stdmsrtruimte_t_uitvtijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); // Eventuele afwijkingen per srtgebouw van SLA tijden. // Fungeert als COALESCE met alg_srtgebouw. CREATE_TABLE(mld_stdmsrtgebouw, 0) ( mld_stdmsrtgebouw_key NUMBER(10) CONSTRAINT mld_k_mld_stdmsrtgebouw_key PRIMARY KEY, alg_srtgebouw_key NUMBER(10) CONSTRAINT alg_r_alg_srtgebouw_key2 REFERENCES alg_srtgebouw(alg_srtgebouw_key) ON DELETE CASCADE NOT_NULL(alg_srtgebouw_key, alg_c_srtgebouw_key2), mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key9 REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE NOT_NULL(mld_stdmelding_key, mld_c_stdmelding_key2), mld_stdmsrtgebouw_malusbasis -- eenmalige boete/korting bij overschrijding NUMBER(8,2), mld_stdmsrtgebouw_malus -- boete/korting bij overschrijding [per dag] NUMBER(8,2), mld_stdmsrtgebouw_malusmax NUMBER(8,2), mld_stdmsrtgebouw_t_accepttijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtgebouw_t_acc CHECK(mld_stdmsrtgebouw_t_accepttijd.tijdsduur >= 0), mld_stdmsrtgebouw_t_uitvtijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtgebouw_t_uitv CHECK(mld_stdmsrtgebouw_t_uitvtijd.tijdsduur >= 0), CONSTRAINT mld_u_mld_stdmsrtgebouw UNIQUE(alg_srtgebouw_key, mld_stdmelding_key), mld_stdmsrtgebouw_regime -- optioneel afwijkend afhandelingsregime (may be null) NUMBER(2) CONSTRAINT mld_c_stdmsrtgebouw_regime CHECK (mld_stdmsrtgebouw_regime IN (1,2,3)) -- 1=kantoortijden, 2=openingstijden, 3=24x7 ); ALTER TABLE mld_stdmsrtgebouw MODIFY mld_stdmsrtgebouw_t_accepttijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmsrtgebouw MODIFY mld_stdmsrtgebouw_t_uitvtijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); -- Eventuele afwijkingen per srtterreinsector van SLA tijden. -- Fungeert als COALESCE met alg_srtterreinsector. CREATE_TABLE(mld_stdmsrtterrein, 0) ( mld_stdmsrtterrein_key NUMBER(10) CONSTRAINT mld_k_mld_stdmsrtterrein_key PRIMARY KEY, alg_srtterreinsector_key NUMBER(10) CONSTRAINT alg_r_alg_srtterreinsec_key REFERENCES alg_srtterreinsector(alg_srtterreinsector_key) ON DELETE CASCADE NOT_NULL(alg_srtterreinsector_key, alg_c_srtterreinsector_key2), mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key10 REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE NOT_NULL(mld_stdmelding_key, mld_c_stdmelding_key3), mld_stdmsrtterrein_malusbasis -- eenmalige boete/korting bij overschrijding NUMBER(8,2), mld_stdmsrtterrein_malus -- boete/korting bij overschrijding [per dag] NUMBER(8,2), mld_stdmsrtterrein_malusmax NUMBER(8,2), mld_stdmsrtterrein_t_acctijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtterrein_t_acc CHECK(mld_stdmsrtterrein_t_acctijd.tijdsduur >= 0), mld_stdmsrtterrein_t_uitvtijd MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_stdmsrtterrein_t_uit CHECK(mld_stdmsrtterrein_t_uitvtijd.tijdsduur >= 0), CONSTRAINT mld_u_mld_stdmsrtterrein UNIQUE(alg_srtterreinsector_key, mld_stdmelding_key), mld_stdmsrtterrein_regime -- optioneel afwijkend afhandelingsregime (may be null) NUMBER(2) CONSTRAINT mld_c_stdmsrtterrein_regime CHECK (mld_stdmsrtterrein_regime IN (1,2,3)) -- 1=kantoortijden, 2=openingstijden, 3=24x7 ); ALTER TABLE mld_stdmsrtterrein MODIFY mld_stdmsrtterrein_t_acctijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_stdmsrtterrein MODIFY mld_stdmsrtterrein_t_uitvtijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); -- Kruistabel tussen KB(faq) en standaardmeldingen CREATE_TABLE(mld_stdmeldingfaq, 0) ( mld_stdmeldingfaq_key NUMBER(10) CONSTRAINT mld_k_stdmeldingfaq_key PRIMARY KEY, ins_discipline_key NUMBER(10) NOT_NULL(ins_discipline_key, mld_c_ins_discipline_key3) CONSTRAINT mld_r_mld_discipline_key1 REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE, mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key4 REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE, fac_faq_key NUMBER(10) NOT_NULL(fac_faq_key, mld_c_fac_faq_key) CONSTRAINT mld_r_fac_faq_key1 REFERENCES fac_faq(fac_faq_key) ON DELETE CASCADE ); CREATE_TABLE(mld_discipline_discipline, 0) -- Kruistabel voor ins_tab_discipline ( mld_discipline_discipline_key NUMBER (10) PRIMARY KEY NOT NULL, mld_discipline_key1 NUMBER(10) CONSTRAINT mld_k_mld_disc_disc_key1 REFERENCES ins_tab_discipline(ins_discipline_key) NOT NULL, mld_discipline_key2 NUMBER(10) CONSTRAINT mld_r_mld_disc_disc_key2 REFERENCES ins_tab_discipline(ins_discipline_key) NOT NULL ); CREATE_TABLE(mld_adres, 0) ( mld_adres_key NUMBER(10) CONSTRAINT mld_k_mld_adres_key PRIMARY KEY, mld_adres_naam VARCHAR2(60) NOT_NULL(mld_adres_naam, mld_c_mld_adres_naam), mld_adres_upper VARCHAR2(60) NOT_NULL(mld_adres_upper, mld_c_mld_adres_upper), mld_adres_bezoek_adres VARCHAR2(50), mld_adres_bezoek_postcode VARCHAR2(12), mld_adres_bezoek_plaats VARCHAR2(30), mld_adres_bezoek_land VARCHAR2(30), mld_adres_post_adres VARCHAR2(50), mld_adres_gebouw_ruimte VARCHAR2(30), mld_adres_post_postcode VARCHAR2(12), mld_adres_post_plaats VARCHAR2(30), mld_adres_post_land VARCHAR2(30), mld_adres_contactpersoon VARCHAR2(30), mld_adres_contactpers_telefoon VARCHAR2(15), mld_adres_contactpers_email VARCHAR2(200), mld_adres_contactpers_bureau VARCHAR2(20), mld_adres_telefoon VARCHAR2(15), mld_adres_email VARCHAR2(200), alg_locatie_key NUMBER(10) CONSTRAINT mld_r_alg_locatie_key3 REFERENCES alg_locatie (alg_locatie_key) ON DELETE CASCADE, mld_adres_aanmaak DATE DEFAULT SYSDATE, mld_adres_verwijder DATE, mld_adres_factuuradres NUMBER(1) CONSTRAINT mld_c_mld_adres_factuuradres CHECK(mld_adres_factuuradres IS NULL OR mld_adres_factuuradres = 1), mld_adres_opdrachtadres NUMBER(1) CONSTRAINT mld_c_mld_adres_opdrachtadres CHECK(mld_adres_opdrachtadres IS NULL OR mld_adres_opdrachtadres = 1), mld_adres_afleveradres NUMBER(1) CONSTRAINT mld_c_mld_adres_afleveradres CHECK(mld_adres_afleveradres IS NULL OR mld_adres_afleveradres = 1), CONSTRAINT mld_c_mld_adressen CHECK(mld_adres_factuuradres IS NOT NULL OR mld_adres_opdrachtadres IS NOT NULL OR mld_adres_afleveradres IS NOT NULL) ); ALTER TABLE alg_gebouw ADD mld_adres_key NUMBER(10) CONSTRAINT alg_r_mld_adres_key1 REFERENCES mld_adres(mld_adres_key); ALTER TABLE prs_bedrijf ADD ( mld_adres_key_lev NUMBER(10) CONSTRAINT prs_r_mld_adres_key1 REFERENCES mld_adres(mld_adres_key), mld_adres_key_fac NUMBER(10) CONSTRAINT prs_r_mld_adres_key_fac1 REFERENCES mld_adres(mld_adres_key) ); ALTER TABLE prs_afdeling ADD mld_adres_key NUMBER(10) CONSTRAINT alg_r_mld_adres_key2 REFERENCES mld_adres(mld_adres_key); ALTER TABLE prs_perslid ADD mld_adres_key NUMBER(10) CONSTRAINT prs_r_mld_adres_key2 REFERENCES mld_adres(mld_adres_key); ALTER TABLE prs_project ADD mld_adres_key NUMBER(10) CONSTRAINT prs_r_mld_adres_key3 REFERENCES mld_adres(mld_adres_key); /* Workflow tables */ CREATE_TABLE(mld_workflowstep, 0) ( mld_workflowstep_key NUMBER(10) CONSTRAINT mld_k_mld_workflowstep_key PRIMARY KEY, mld_workflowstep_start_key NUMBER(10) CONSTRAINT mld_r_mld_workflowstep_key1 REFERENCES mld_workflowstep(mld_workflowstep_key), mld_stdmelding_key NUMBER(10) NOT_NULL(mld_stdmelding_key, mld_c_mld_stdmelding_key2) CONSTRAINT mld_r_mld_stdmelding_key2 REFERENCES mld_stdmelding, mld_workflowstep_omschrijving VARCHAR2(60), mld_workflowstep_jointype NUMBER(2) -- 0 = AND, 1 = (X)OR, 2 = SYNC DEFAULT 0 NOT_NULL(mld_workflowstep_jointype, mld_c_mld_wfstep_jointype), mld_workflowstep_eindtype NUMBER(2) -- 0 = sla van stdmelding, 1 = max einddatum van rootmelding DEFAULT 0 NOT_NULL(mld_workflowstep_eindtype, mld_c_mld_workflowstep_eindtyp), mld_workflowstep_attachments NUMBER(3) DEFAULT 1 NOT NULL ); CREATE_TABLE(mld_workflowrule, 0) ( mld_workflowrule_key NUMBER(10) CONSTRAINT mld_k_mld_workflowrule_key PRIMARY KEY, mld_workflowstep_key NUMBER(10) NOT_NULL(mld_workflowstep_key, mld_c_mld_workflowstep_key1) CONSTRAINT mld_r_mld_workflowstep_key2 REFERENCES mld_workflowstep(mld_workflowstep_key) ON DELETE CASCADE, mld_workflowrule_omschrijving VARCHAR2(60), mld_workflowrule_result NUMBER(1) CONSTRAINT mld_c_mld_workflowrule_result CHECK(mld_workflowrule_result IN (0,1)), mld_workflowstep_next_key NUMBER(10) NOT_NULL(mld_workflowstep_next_key, mld_c_mld_workflowstep_key2) CONSTRAINT mld_r_mld_workflowstep_key3 REFERENCES mld_workflowstep(mld_workflowstep_key) ON DELETE CASCADE, mld_workflowrule_condition VARCHAR2(4000) -- should evaluate to TRUE in order to be executed ); CREATE_TABLE(mld_melding,0) ( mld_melding_key NUMBER(10) CONSTRAINT mld_k_mld_melding_key PRIMARY KEY, mld_melding_module VARCHAR2(3) NOT_NULL(mld_melding_module, mld_c_mld_melding_module), mld_ins_srtinst_keys NUMBER(10), mld_melding_parentkey -- moedermelding NUMBER(10) REFERENCES mld_melding(mld_melding_key), mld_melding_mldgroup_key NUMBER(10) REFERENCES mld_melding(mld_melding_key), mld_meldbron_key NUMBER(10) NOT_NULL(mld_meldbron_key, mld_r_mld_meldbron_key1) CONSTRAINT mld_r_mld_meldbron_key2 REFERENCES mld_meldbron, mld_meldbron_nr VARCHAR2(30), mld_oorzaak_key NUMBER(10) CONSTRAINT mld_r_mld_oorzaak_key REFERENCES mld_oorzaak, mld_alg_locatie_key NUMBER(10) CONSTRAINT mld_r_alg_locatie_key2 REFERENCES alg_locatie(alg_locatie_key), mld_alg_onroerendgoed_keys NUMBER(10), mld_melding_datum DATE NOT_NULL(mld_melding_datum, mld_c_mld_melding_datum), mld_melding_onderwerp /* optionele korte omschrijving */ VARCHAR2(80), mld_melding_omschrijving VARCHAR2(4000), mld_melding_opmerking VARCHAR2(4000), mld_melding_behandelaar_key NUMBER(10) CONSTRAINT mld_r_prs_perslid_key9 REFERENCES prs_perslid(prs_perslid_key), mld_melding_behandelaar2_key NUMBER(10) CONSTRAINT mld_r_prs_perslid_key12 REFERENCES prs_perslid(prs_perslid_key), mld_ins_discipline_key NUMBER(10) CONSTRAINT mld_r_ins_discipline_key4 REFERENCES ins_tab_discipline(ins_discipline_key), mld_stdmelding_key NUMBER(10) NOT_NULL(mld_stdmelding_key, mld_c_mld_stdmelding_key) CONSTRAINT mld_r_mld_stdmelding_key REFERENCES mld_stdmelding, mld_melding_t_uitvoertijd -- freeze van stdmelding-uitvoertijd ten tijde van melden MLD_T_UITVOERTIJD CONSTRAINT mld_c_mld_melding_t_uitvtijd CHECK (mld_melding_t_uitvoertijd.tijdsduur >= 0), mld_melding_t_accepttijd MLD_T_UITVOERTIJD, mld_melding_einddatum -- geplande einddatum, trigger vult eventueel DATE, mld_melding_actiedatum -- optionele datum voor volgende actie DATE, mld_melding_t_respijt MLD_T_UITVOERTIJD, -- tijdsduur die van de doorlooptijd afgetrokken wordt mld_melding_indult NUMBER(1) -- individueel vrijgesteld van SLA-meting/beoordeling (1) of niet (0) DEFAULT 0 CONSTRAINT mld_c_mld_melding_indult1 CHECK(mld_melding_indult IN (0, 1)) NOT_NULL(mld_melding_indult, mld_c_mld_melding_indult2), mld_melding_afgerond NUMBER(1) -- SLA-gegevens bevroren (1) of niet(0) DEFAULT 0 CONSTRAINT mld_c_mld_melding_afgerond1 CHECK(mld_melding_afgerond IN (0, 1)) NOT_NULL(mld_melding_afgerond, mld_c_mld_melding_afgerond2), mld_melding_einddatum_std -- SLA freeze einddatum, trigger vult eventueel DATE, mld_melding_acceptdatum_std -- sla freeze acceptatie DATE, mld_melding_geprint NUMBER(1) CONSTRAINT mld_c_mld_melding_geprint CHECK(mld_melding_geprint IS NULL OR mld_melding_geprint = 1), prs_kostenplaats_key NUMBER(10) CONSTRAINT mld_r_prs_kostenplaats_key1 REFERENCES prs_kostenplaats(prs_kostenplaats_key), mld_kosten_klant NUMBER(1) CONSTRAINT mld_c_mld_kosten_klant CHECK(mld_kosten_klant IS NULL OR mld_kosten_klant = 1), mld_melding_document VARCHAR2(512), mld_melding_ordernr VARCHAR2(30), prs_perslid_key NUMBER(10) CONSTRAINT mld_r_prs_perslid_key REFERENCES prs_perslid(prs_perslid_key), prs_afdeling_key NUMBER(10) CONSTRAINT mld_r_prs_afdeling_key REFERENCES prs_afdeling(prs_afdeling_key), prs_perslid_key_voor NUMBER(10) CONSTRAINT mld_r_prs_perslid_key1 REFERENCES prs_perslid(prs_perslid_key), CONSTRAINT mld_c_prs_perslid_key_voor CHECK(prs_perslid_key_voor IS NOT NULL), mld_melding_status NUMBER(10) CONSTRAINT mld_c_mld_status1 CHECK(mld_melding_status IN (0,1,2,4,5,6,7,99)), mld_adres_key NUMBER(10) CONSTRAINT mld_r_mld_adres_key1 REFERENCES mld_adres(mld_adres_key), mld_melding_spoed /* urgentie: 1 = kritiek, 2=hoog, 3=normaal, 4=laag, 5=hold(?), matcht mld_stdmelding_uitvoertijd_prX */ NUMBER(1), fac_activiteit_key NUMBER(10) CONSTRAINT fac_r_fac_activiteit1 REFERENCES fac_activiteit(fac_activiteit_key) ON DELETE CASCADE, mld_workflowstep_key NUMBER(10) CONSTRAINT mld_r_mld_workflowstep_key4 REFERENCES mld_workflowstep(mld_workflowstep_key), mld_melding_start_key NUMBER(10) CONSTRAINT mld_r_mld_melding_key4 REFERENCES mld_melding(mld_melding_key), mld_melding_kto_type /* M = melding, R = reservering, B = bestelling */ VARCHAR2(1), mld_melding_kto_key /* mld_melding_key, res_rsv_ruimte_key, bes_bestelling_key */ NUMBER(10), mld_melding_kto -- antwoord op de vraag indien mld_stdmelding_kto = 2|3: 0 = nee:niet meedoen, 1 = ja:meedoen NUMBER(1), mld_melding_kto_verstuurd -- Is er een kto uitnodiging verstuurd, zo ja registreer datum DATE, mld_melding_externnr /* voor koppelingen met externe systemen */ VARCHAR2(1000), mld_melding_externsyncdate /* voor koppelingen met externe systemen */ DATE, mld_melding_flag NUMBER(1), mld_melding_publiek NUMBER(1) DEFAULT 0 /* 0=niet publiek, 1=publiek, anderen met gelijkwaardige MLDUSE hebben readrecht hierop */ NOT NULL, mld_melding_actiecode NUMBER(3) DEFAULT 1 /* actie bij +1=behandelaar, +2=melder, +128 attentie */ NOT NULL, mld_melding_satisfaction NUMBER(2), mld_melding_satisfaction_op VARCHAR2(2000), prs_project_key /* future use: groepeer meldingen in een project (release) oid */ NUMBER(10) CONSTRAINT mld_r_prs_project_key1 REFERENCES prs_project(prs_project_key), /* in RES_TAB.src: res_rsv_ruimte_key NUMBER(10) CONSTRAINT mld_r_res_rsv_ruimte_key REFERENCES res_rsv_ruimte(res_rsv_ruimte_key) */ mld_melding_locked_user_key NUMBER(10), mld_melding_locked_date DATE, mld_melding_naam_ext VARCHAR2(60), mld_melding_email_ext VARCHAR2(100), mld_melding_tel_ext VARCHAR2(15), mld_melding_dwgx NUMBER(16,3), mld_melding_dwgy NUMBER(16,3), mld_melding_dwgz NUMBER(16,3), mld_melding_x NUMBER(16,6), mld_melding_y NUMBER(16,6), mld_melding_z NUMBER(16,6) ); ALTER TABLE mld_melding MODIFY mld_melding_t_uitvoertijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_melding MODIFY mld_melding_t_accepttijd DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); ALTER TABLE mld_melding MODIFY mld_melding_t_respijt DEFAULT MLD_T_UITVOERTIJD(NULL, NULL); COMMENT ON COLUMN mld_workflowrule.mld_workflowrule_result IS '0 is failure/rejection, 1 is success'; COMMENT ON COLUMN mld_melding.mld_workflowstep_key IS 'references the workflow step that this melding corresponds to'; COMMENT ON COLUMN mld_melding.mld_melding_start_key IS 'references the initiating mld_melding if this is a workflow step'; CREATE_TABLE(mld_opdr,0) ( mld_opdr_key NUMBER(10) CONSTRAINT mld_k_mld_opdr_key PRIMARY KEY, mld_opdr_module VARCHAR2(3) NOT_NULL(mld_opdr_module, mld_c_mld_opdr_module), mld_melding_key NUMBER(10) NOT_NULL(mld_melding_key, mld_r_mld_melding_key1) CONSTRAINT mld_r_mld_melding_key2 REFERENCES mld_melding ON DELETE CASCADE, mld_opdr_id /* optionele alternatieve referentie indien afwijkend van meldingkey/volgnr */ VARCHAR2(30), mld_alg_locatie_key NUMBER(10) CONSTRAINT mld_r_alg_locatie_key4 REFERENCES alg_locatie(alg_locatie_key), mld_alg_onroerendgoed_keys NUMBER(10), mld_uitvoerende_keys NUMBER(10) NOT_NULL(mld_uitvoerende_keys, mld_c_mld_uitvoerende_keys), mld_typeopdr_key NUMBER(10) NOT_NULL(mld_typeopdr_key, mld_r_mld_typeopdr_key1) CONSTRAINT mld_r_mld_typeopdr_key2 REFERENCES mld_typeopdr, mld_statusopdr_key NUMBER(10) CONSTRAINT mld_c_mld_statusopdr_key2 CHECK (mld_statusopdr_key BETWEEN 1 AND 10), mld_standaardopdr_key NUMBER(10) CONSTRAINT mld_r_mld_standaardopdr_key REFERENCES mld_standaardopdr, mld_opdr_omschrijving VARCHAR2(4000), mld_opdr_datumbegin DATE NOT_NULL(mld_opdr_datumbegin, mld_c_mld_opdr_datumbegin), mld_opdr_dagen /* deprecated DB7 */ NUMBER(4), mld_opdr_einddatum /* wordt op termijn vervanger van mld-opdr_dagen */ DATE, mld_opdr_plandatum /* (beoogd) tijdstip van feitelijke start-uitvoering */ DATE, mld_opdr_plandatum2 /* (beoogd) tijdstip van einddatum uitvoering */ DATE, mld_opdr_discipline_key NUMBER(10) NOT_NULL(mld_opdr_discipline_key, mld_c_mld_opdr_discipline_key1) CONSTRAINT mld_r_opdr_discipline_key1 REFERENCES ins_tab_discipline(ins_discipline_key), mld_opdr_werkzaamheden VARCHAR2(80), mld_opdr_uren NUMBER(7,2) DEFAULT 0 CONSTRAINT mld_c_mld_opdr_uren CHECK(mld_opdr_uren >= 0), mld_opdr_materiaal NUMBER(8,2) DEFAULT 0, mld_opdr_kosten /* excl BTW */ NUMBER(12,2) DEFAULT 0, mld_opdr_kosten_btw NUMBER(12,2) DEFAULT 0, mld_opdr_fiatbedrag /* Tot zover gefiatteerd */ NUMBER(11,2), prs_kostenplaats_key NUMBER(10) CONSTRAINT mld_r_prs_kostenplaats_key2 REFERENCES prs_kostenplaats(prs_kostenplaats_key), prs_kostensoort_key NUMBER(10) CONSTRAINT mld_r_prs_kostensoort_key1 REFERENCES prs_kostensoort (prs_kostensoort_key), mld_opdr_ordernr VARCHAR2(30), mld_opdr_contactpersoon VARCHAR2(30), mld_opdr_geprint NUMBER(1) CONSTRAINT mld_c_mld_opdr_geprint CHECK(mld_opdr_geprint IS NULL OR mld_opdr_geprint = 1), mld_opdr_teverzenden NUMBER(1) CONSTRAINT mld_c_mld_opdr_teverz CHECK(mld_opdr_teverzenden IS NULL OR mld_opdr_teverzenden = 1 OR mld_opdr_teverzenden = 2), /* NULL=niet verzenden, 1=verzende bij status 4 en 5, 2=altijd verzenden */ mld_opdr_teverzenden_datum DATE DEFAULT NULLDATUM, mld_opdr_verzonden DATE, mld_opdr_bedrijfopdr_volgnr NUMBER(10), mld_opdr_uurloon NUMBER(6,2), prs_perslid_key -- Internal contactperson NUMBER(10) CONSTRAINT mld_r_prs_perslid_key2 REFERENCES prs_perslid(prs_perslid_key), prs_contactpersoon_key -- External contactperson NUMBER(10) CONSTRAINT mld_r_prs_contactpersoon_key REFERENCES prs_contactpersoon(prs_contactpersoon_key) ON DELETE SET NULL, mld_opdr_opmerking_fiat VARCHAR2(4000), fac_activiteit_key NUMBER(10) CONSTRAINT fac_r_fac_activiteit2 REFERENCES fac_activiteit(fac_activiteit_key) ON DELETE CASCADE, mld_opdr_opmerking VARCHAR2(4000), mld_opdr_flag NUMBER(1), mld_opdr_approved NUMBER(11,2), mld_opdr_uren_refiat NUMBER(7,2) CONSTRAINT mld_c_mld_opdr_uren_refiat CHECK(mld_opdr_uren_refiat IS NULL OR mld_opdr_uren_refiat >= 0), mld_opdr_uurloon_refiat NUMBER(6,2), mld_opdr_materiaal_refiat NUMBER(8,2) CONSTRAINT mld_c_mld_opdr_mat_refiat CHECK(mld_opdr_materiaal_refiat IS NULL OR mld_opdr_materiaal_refiat >= 0), mld_opdr_kosten_refiat NUMBER(12,2), CONSTRAINT mld_c_mld_opdr_kosten_refiat CHECK(mld_opdr_kosten_refiat IS NULL OR mld_opdr_kosten_refiat >= 0), mld_statusopdr_key_refiat NUMBER(10) CONSTRAINT mld_c_mld_statusopdr_refiat CHECK (mld_statusopdr_key_refiat IN (5,6,8,9)), mld_opdr_approved_refiat NUMBER(11,2), mld_opdr_handfiat /* handmatig fiatteren verzocht (overrule-t evt limieten) */ NUMBER(1) CONSTRAINT mld_c_mld_opdr_handfiat CHECK(mld_opdr_handfiat IS NULL OR mld_opdr_handfiat = 1), mld_opdr_halted -- is de opdracht onderbroken {0=nee (default) | 1=ja} NUMBER(1) DEFAULT (0) NOT NULL CONSTRAINT mld_c_mld_opdr_halted CHECK(mld_opdr_halted IN (0, 1)), mld_opdr_meerwerk NUMBER(1) DEFAULT (0) CONSTRAINT mld_c_mld_opdr_meerwerk CHECK(mld_opdr_meerwerk IN (0, 1)), mld_opdr_externnr /* voor koppelingen met externe systemen */ VARCHAR2(1000), mld_opdr_externsyncdate /* voor koppelingen met externe systemen */ DATE, mld_opdr_laatstgezien DATE DEFAULT SYSDATE NOT NULL, mld_opdr_parent_key NUMBER(10) CONSTRAINT mld_r_mld_opdr_key4 REFERENCES mld_opdr(mld_opdr_key), mld_opdr_actiecode NUMBER(3) DEFAULT 1 /* actie bij +1=FOBO behandelaar, +2=melder, +4=uitvoerende, +128 attentie */ NOT NULL ); CREATE_TABLE(mld_vrije_dagen, 0) ( mld_vrije_dagen_key NUMBER(10) CONSTRAINT mld_k_mld_vrije_dagen_key PRIMARY KEY, mld_vrije_dagen_datum DATE NOT_NULL(mld_vrije_dagen_datum, mld_c_mld_vrije_dagen_datum) CONSTRAINT mld_u_mld_vrije_dagen_datum UNIQUE ); CREATE_TABLE(mld_melding_object, 0) ( mld_melding_object_key NUMBER(10) CONSTRAINT mld_k_mld_object_key PRIMARY KEY, mld_melding_key NUMBER(10) CONSTRAINT mld_r_mld_melding_key5 REFERENCES mld_melding(mld_melding_key) ON DELETE CASCADE NOT_NULL(mld_melding_key, mld_c_mld_melding_key), ins_deel_key NUMBER(10) CONSTRAINT mld_r_ins_deel_key1 REFERENCES ins_deel(ins_deel_key), mld_melding_object_aanmaak DATE DEFAULT SYSDATE NOT_NULL(mld_melding_object_aanmaak, mld_c_mld_object_aanmaak), mld_melding_object_verwijder DATE DEFAULT NULLDATUM ); CREATE_TABLE(mld_srtkenmerk, 0) ( mld_srtkenmerk_key NUMBER(10) CONSTRAINT mld_k_mld_srtkenmerk_key PRIMARY KEY , mld_srtkenmerk_omschrijving VARCHAR2(50) , mld_srtkenmerk_upper VARCHAR2(50) , mld_srtkenmerk_dimensie VARCHAR2(10) , mld_srtkenmerk_kenmerktype VARCHAR2(1) , mld_srtkenmerk_systeem -- &1 = systeemkm, &4 = confidential, &8 = anonimiseren NUMBER(2) DEFAULT 0 NOT NULL , mld_srtkenmerk_lengte NUMBER(4) , mld_srtkenmerk_dec NUMBER(3) , mld_srtkenmerk_nmin NUMBER(10) , mld_srtkenmerk_nmax NUMBER(10) , fac_kenmerkdomein_key NUMBER(10) CONSTRAINT mld_r_kenmerkdomein_key1 REFERENCES fac_kenmerkdomein(fac_kenmerkdomein_key) , mld_srtkenmerk_aanmaak DATE DEFAULT SYSDATE , mld_srtkenmerk_verwijder DATE DEFAULT NULLDATUM , mld_srtkenmerk_code VARCHAR2(60) , CONSTRAINT mld_c_mld_srtkenmerk_omschr CHECK(mld_srtkenmerk_omschrijving IS NOT NULL) , CONSTRAINT mld_srtkenmerk_omschrijving CHECK(mld_srtkenmerk_omschrijving IS NOT NULL) , CONSTRAINT mld_u_mld_srtkenmerk_upper UNIQUE(mld_srtkenmerk_upper, mld_srtkenmerk_verwijder) , CONSTRAINT mld_c_mld_srtkenmerk_kenmtype CHECK(mld_srtkenmerk_kenmerktype IN ('C','N','D','T','R','X','L','Q','F','M','E','S','l','B','V')) , CONSTRAINT mld_c_mld_srtkenmerk_lengte CHECK(mld_srtkenmerk_lengte >= 1 AND mld_srtkenmerk_lengte <= 4000) , CONSTRAINT mld_c_mld_srtkenmerk_max_min CHECK(mld_srtkenmerk_nmax >= mld_srtkenmerk_nmin) , CONSTRAINT mld_c_mld_srtkenmerk_dec CHECK(mld_srtkenmerk_dec >= 0 AND mld_srtkenmerk_dec <= mld_srtkenmerk_lengte) , CONSTRAINT mld_c_mld_srtkenmerk_aanm CHECK(mld_srtkenmerk_aanmaak IS NOT NULL) ); CREATE_TABLE(mld_kenmerk, 0) ( mld_kenmerk_key NUMBER(10) CONSTRAINT mld_k_mld_kenmerk_key PRIMARY KEY , mld_srtkenmerk_key NUMBER(10) , mld_stdmelding_key NUMBER(10) , mld_typeopdr_key NUMBER(10) , mld_kenmerk_niveau -- T=srTdiscipline, D=Discipline, S=Stdmelding, O=Opdrachttype, A=Alle meldingen en P=alle oPdrachten. VARCHAR2(1) , mld_kenmerk_omschrijving VARCHAR2(50) /* optionele overrule van srtkenmerk_omschrijving */ , mld_kenmerk_code VARCHAR2(60) , mld_kenmerk_verplicht NUMBER(1) , mld_kenmerk_groep NUMBER(1) DEFAULT 0 NOT NULL , mld_kenmerk_toonbaar NUMBER(1) , mld_kenmerk_inlijst NUMBER(1) DEFAULT 0 NOT NULL , mld_kenmerk_volgnummer NUMBER(3) NOT NULL , mld_kenmerk_uniek NUMBER(1) , mld_kenmerk_regexp VARCHAR2(255) , mld_kenmerk_hint VARCHAR2(255 CHAR) , mld_kenmerk_aanmaak DATE DEFAULT SYSDATE , mld_kenmerk_default VARCHAR2(4000) , mld_kenmerk_show_expr VARCHAR2(4000) , mld_kenmerk_verwijder DATE DEFAULT NULLDATUM , mld_kenmerk_verplicht_status NUMBER(2) , mld_kenmerk_obligation_fill /* 0=Altijd in te vullen, 1=Alleen invulbaar bij verplichting */ NUMBER(1) DEFAULT 0 NOT NULL , mld_kenmerk_onderbreken -- 0=Nee (default), 1=Ja, 2=Ja, wissen bij hervatten. NUMBER(1) DEFAULT 0 NOT NULL , mld_kenmerk_wissen NUMBER(1) DEFAULT 0 NOT NULL , fac_functie_key NUMBER(10) CONSTRAINT fac_r_mld_kenmerk_functie REFERENCES fac_functie (fac_functie_key) //, CONSTRAINT mld_r_mld_srtkenmerk_keys CHECK((mld_typeopdr_key IS NULL AND mld_stdmelding_key IS NOT NULL) // OR (mld_typeopdr_key IS NOT NULL AND mld_stdmelding_key IS NULL)) , CONSTRAINT mld_r_mld_srtkenmerk_key2 FOREIGN KEY(mld_srtkenmerk_key) REFERENCES mld_srtkenmerk(mld_srtkenmerk_key) , CONSTRAINT mld_c_mld_kenmerk_niveau1 CHECK(mld_kenmerk_niveau IS NOT NULL) , CONSTRAINT mld_c_mld_kenmerk_niveau2 CHECK(mld_kenmerk_niveau IN ('T','D','S','O','A','P')) , CONSTRAINT mld_c_mld_kenmerk_toonbaar CHECK(mld_kenmerk_toonbaar IS NULL OR mld_kenmerk_toonbaar = 1) , CONSTRAINT mld_c_mld_kenmerk_aanmaak CHECK(mld_kenmerk_aanmaak IS NOT NULL) , CONSTRAINT mld_u_mld_kenmerk UNIQUE(mld_srtkenmerk_key, mld_stdmelding_key, mld_typeopdr_key, mld_kenmerk_niveau, mld_kenmerk_omschrijving, mld_kenmerk_groep, mld_kenmerk_verwijder) , CONSTRAINT mld_r_mld_srtkenmerk_key3 FOREIGN KEY(mld_typeopdr_key) REFERENCES mld_typeopdr(mld_typeopdr_key) ON DELETE CASCADE ); CREATE_TABLE(mld_kenmerkmelding, 0) ( mld_kenmerkmelding_key NUMBER(10) CONSTRAINT mld_k_mld_kenmerkmelding_key PRIMARY KEY , mld_melding_key NUMBER(10) , mld_kenmerk_key NUMBER(10) , mld_kenmerkmelding_waarde VARCHAR2(4000) , mld_kenmerkmelding_aanmaak DATE DEFAULT SYSDATE , mld_kenmerkmelding_verwijder DATE DEFAULT NULLDATUM , CONSTRAINT mld_r_mld_kenmerk_melding_key1 CHECK(mld_melding_key IS NOT NULL) , CONSTRAINT mld_r_mld_kenmerk_key1 CHECK(mld_kenmerk_key IS NOT NULL) , CONSTRAINT mld_r_mld_kenmerk_key2 FOREIGN KEY(mld_kenmerk_key) REFERENCES mld_kenmerk(mld_kenmerk_key) , CONSTRAINT mld_c_mld_kenmerkmelding_aanm CHECK(mld_kenmerkmelding_aanmaak IS NOT NULL) , CONSTRAINT mld_u_mld_kenmerkmelding UNIQUE(mld_kenmerk_key, mld_melding_key, mld_kenmerkmelding_verwijder) , CONSTRAINT mld_r_kenmerk_melding FOREIGN KEY (mld_melding_key) REFERENCES mld_melding(mld_melding_key) ON DELETE CASCADE ); CREATE_TABLE(mld_kenmerkopdr, 0) ( mld_kenmerkopdr_key NUMBER(10) CONSTRAINT mld_k_mld_kenmerkopdr_key PRIMARY KEY, mld_opdr_key NUMBER(10), mld_kenmerk_key NUMBER(10), mld_kenmerkopdr_waarde VARCHAR2(4000), mld_kenmerkopdr_aanmaak DATE DEFAULT SYSDATE, mld_kenmerkopdr_verwijder DATE DEFAULT NULLDATUM, CONSTRAINT mld_r_mld_kenmerk_opdr_key1 CHECK(mld_opdr_key IS NOT NULL), CONSTRAINT mld_r_mld_kenmerk_key3 CHECK(mld_kenmerk_key IS NOT NULL), CONSTRAINT mld_r_mld_kenmerk_key4 FOREIGN KEY(mld_kenmerk_key) REFERENCES mld_kenmerk(mld_kenmerk_key), CONSTRAINT mld_c_mld_kenmerkopdr_aanm CHECK(mld_kenmerkopdr_aanmaak IS NOT NULL), CONSTRAINT mld_u_mld_kenmerkopdr UNIQUE(mld_kenmerk_key, mld_opdr_key, mld_kenmerkopdr_verwijder), CONSTRAINT mld_r_kenmerk_opdr FOREIGN KEY (mld_opdr_key) REFERENCES mld_opdr(mld_opdr_key) ON DELETE CASCADE ); /* Used to restrict the mld_typeopdr values for a ins_srtdiscipline or even ins_discipline * Voorwaarde was (MLD) dat srtdiscipline minstens gevuld was, en eventueel ins_discipline. * Voor CNT moet srtdiscipline leeg kunnen zijn. Ik wil er dus naartoe dat de specifiekste * geldt en de globalere dan dummy is (dont care) */ CREATE_TABLE(mld_typeopdr_srtdiscipline, 0) ( mld_typeopdr_srtdisc_key NUMBER(10) PRIMARY KEY, mld_typeopdr_key NUMBER(10) NOT_NULL(mld_typeopdr_key, mld_c_mld_typeopdr_key1) CONSTRAINT mld_r_mld_typeopdr_key3 REFERENCES mld_typeopdr(mld_typeopdr_key) ON DELETE CASCADE, ins_srtdiscipline_key NUMBER(10) CONSTRAINT mld_r_ins_srtdiscipline_key2 REFERENCES ins_srtdiscipline(ins_srtdiscipline_key) ON DELETE CASCADE, ins_discipline_key NUMBER(10) CONSTRAINT mld_r_ins_discipline_key3 REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE ); CREATE_TABLE(mld_deelwerk, 0) ( mld_deelwerk_key NUMBER(10) PRIMARY KEY, prs_perslid_key NUMBER(10) REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE, mld_deelwerk_datum DATE, mld_deelwerk_duur NUMBER(6), ins_deel_key NUMBER(10) REFERENCES ins_deel(ins_deel_key) ON DELETE CASCADE, fac_usrdata_key_activiteit NUMBER(10) REFERENCES fac_usrdata(fac_usrdata_key), fac_usrdata_key_opdrachtgever NUMBER(10) REFERENCES fac_usrdata(fac_usrdata_key), mld_deelwerk_km NUMBER(4), mld_deelwerk_opmerking VARCHAR2(100) ); CREATE_TABLE(mld_deelwerkmateriaal, 0) ( mld_deelwerkmateriaal_key NUMBER(10) PRIMARY KEY, mld_deelwerk_key NUMBER(10) REFERENCES mld_deelwerk(mld_deelwerk_key) ON DELETE CASCADE, fac_usrdata_key_materiaal NUMBER(10) REFERENCES fac_usrdata(fac_usrdata_key), mld_deelwerkmateriaal_aantal NUMBER(6) ); CREATE_TABLE(mld_melding_note, 0) ( mld_melding_note_key NUMBER (10) PRIMARY KEY, mld_melding_key NUMBER (10) NOT NULL REFERENCES mld_melding (mld_melding_key) ON DELETE CASCADE, mld_melding_note_aanmaak DATE DEFAULT SYSDATE, mld_melding_note_wijzigdatum DATE, prs_perslid_key NUMBER (10) REFERENCES prs_perslid (prs_perslid_key) ON DELETE SET NULL, fac_note_group_key NUMBER (10) REFERENCES fac_note_group(fac_note_group_key) ON DELETE SET NULL, mld_melding_note_omschrijving VARCHAR2 (4000 CHAR), mld_melding_note_flag NUMBER (2) DEFAULT 0, // &1=FE, &2= unused (Altijd zichtbaar voor FOBO), +4=UITV (redefined DB41) mld_melding_note_parent_key NUMBER (10) DEFAULT NULL REFERENCES mld_melding_note (mld_melding_note_key) ON DELETE CASCADE ); CREATE_TABLE(mld_opdr_note, 0) ( mld_opdr_note_key NUMBER (10) PRIMARY KEY, mld_opdr_key NUMBER (10) NOT NULL REFERENCES mld_opdr (mld_opdr_key) ON DELETE CASCADE, mld_opdr_note_aanmaak DATE DEFAULT SYSDATE, mld_opdr_note_wijzigdatum DATE, prs_perslid_key NUMBER (10) REFERENCES prs_perslid (prs_perslid_key) ON DELETE SET NULL, fac_note_group_key NUMBER (10) REFERENCES fac_note_group(fac_note_group_key) ON DELETE SET NULL, mld_opdr_note_omschrijving VARCHAR2 (4000 CHAR), mld_opdr_note_flag NUMBER (2) DEFAULT 4, // &1=FE, &2= unused (Altijd zichtbaar voor FOBO), +4=UITV mld_opdr_note_parent_key NUMBER (10) DEFAULT NULL REFERENCES mld_opdr_note (mld_opdr_note_key) ON DELETE CASCADE ); -- Improductieve opdrachten, alternatief van mld_opdr om uren op te registreren CREATE_TABLE(mld_impropdr, 0) ( mld_impropdr_key NUMBER (10) PRIMARY KEY, mld_impropdr_omschrijving VARCHAR2 (60) NOT NULL, mld_impropdr_code VARCHAR2 (10), mld_impropdr_onkosten NUMBER (1), -- 1=mag onkosten bij worden geboekt mld_impropdr_aanmaak DATE DEFAULT SYSDATE, mld_impropdr_verwijder DATE ); CREATE_TABLE(mld_opdr_uren, 0) ( mld_opdr_uren_key NUMBER(10) PRIMARY KEY NOT NULL, mld_opdr_uren_datum DATE NOT NULL, mld_opdr_key NUMBER(10) CONSTRAINT mld_r_mld_opdr_key1 REFERENCES mld_opdr(mld_opdr_key) ON DELETE CASCADE, mld_impropdr_key NUMBER(10) CONSTRAINT mld_r_mld_impropdr_key1 REFERENCES mld_impropdr(mld_impropdr_key), prs_perslid_key NUMBER(10) NOT NULL CONSTRAINT mld_r_prs_perslid_key10 REFERENCES prs_perslid(prs_perslid_key), mld_opdr_uren_besteed NUMBER(7,4) NOT NULL, mld_opdr_uren_status NUMBER(1) NOT NULL, --1=Ingevoerd 2=Ter goedkeuring 3=Goedgekeurd 4=Verwerkt mld_opdr_uren_opmerking VARCHAR2(100), mld_opdr_uren_wijzigdatum DATE DEFAULT SYSDATE, mld_opdr_uren_wijziguser_key NUMBER(10) CONSTRAINT mld_r_prs_perslid_key13 REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL, CONSTRAINT mld_c_mld_opdr_uren1 CHECK ((mld_opdr_key IS NULL AND mld_impropdr_key IS NOT NULL) OR (mld_opdr_key IS NOT NULL AND mld_impropdr_key IS NULL)) ); CREATE_TABLE(mld_kosten, 0) ( mld_kosten_key NUMBER (10) PRIMARY KEY, mld_kosten_omschrijving VARCHAR2 (60) NOT NULL, mld_kosten_code VARCHAR2 (10), mld_kosten_type NUMBER (1) NOT NULL, -- 1=boolean, 2=aantalveld, 3=float mld_kosten_eenheid VARCHAR2 (15), mld_kosten_kosten NUMBER (8,2), -- prijs per eenheid, optioneel mld_kosten_aanmaak DATE DEFAULT SYSDATE, mld_kosten_verwijder DATE ); -- Onkosten gepaard met de bestede uren, kent zelf geen status CREATE_TABLE(mld_opdruren_kosten, 0) ( mld_opdruren_kosten_key NUMBER (10) PRIMARY KEY, mld_opdr_uren_key NUMBER(10) NOT NULL CONSTRAINT mld_r_mld_opdr_uren_key1 REFERENCES mld_opdr_uren(mld_opdr_uren_key) ON DELETE CASCADE, mld_kosten_key NUMBER(10) NOT NULL CONSTRAINT mld_r_mld_kosten_key1 REFERENCES mld_kosten(mld_kosten_key), mld_opdruren_kosten_besteed NUMBER(5,2) NOT NULL ); -- Dagtotalen voor bepaalde kosten, bijvoorbeeld het totaal aantal kilometers op basis -- van de kortste route voor de dagen waarbij kilometerkosten zijn aangegeven CREATE_TABLE(mld_opdruren_dagkosten, 0) ( mld_opdruren_dagkosten_key NUMBER(10) CONSTRAINT mld_k_opdruren_dagkosten_key PRIMARY KEY, prs_perslid_key NUMBER(10) CONSTRAINT mld_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key), mld_opdruren_dagkosten_datum DATE CONSTRAINT mld_c_opdruren_dagkosten_datum NOT NULL, mld_opdruren_dagkosten_aantal NUMBER(3), mld_opdruren_dagkosten_totaal NUMBER(10), mld_opdruren_dagkosten_opm VARCHAR2(4000), mld_opdruren_dagkosten_aanmaak DATE DEFAULT SYSDATE ); CREATE_TABLE(mld_dienstniveau, 0) ( mld_dienstniveau_key NUMBER(10) CONSTRAINT mld_k_dienstniveau_key PRIMARY KEY, mld_dienstniveau_omschr VARCHAR2(60) NOT_NULL(mld_dienstniveau_omschr, mld_c_dienstniveau_omschr), mld_dienstniveau_opmerking VARCHAR2(2000), CONSTRAINT mld_u_dienstniveau_omschr UNIQUE (mld_dienstniveau_omschr) ); CREATE_TABLE(mld_dienstpakket, 0) ( mld_dienstpakket_key NUMBER(10) PRIMARY KEY, mld_dienstniveau_key NUMBER(10) REFERENCES mld_dienstniveau(mld_dienstniveau_key), mld_stdmelding_key NUMBER(10) REFERENCES mld_stdmelding(mld_stdmelding_key) ); CREATE_TABLE(mld_opdr_uitvoeren, 0) ( mld_opdr_uitvoeren_key NUMBER(10) CONSTRAINT mld_k_mld_opdr_uitvoeren_key PRIMARY KEY, mld_opdr_key NUMBER(10) NOT_NULL(mld_opdr_key, mld_c_mld_opdr_key) CONSTRAINT mld_r_mld_opdr_key2 REFERENCES mld_opdr(mld_opdr_key) ON DELETE CASCADE, mld_opdr_uitvoeren_van NUMBER(4) NOT_NULL(mld_opdr_uitvoeren_van, mld_c_opdr_inzetbaar_van) CONSTRAINT mld_c_opdr_inzetbaar_van2 CHECK(mld_opdr_uitvoeren_van>=0 AND mld_opdr_uitvoeren_van<1440), mld_opdr_uitvoeren_tot NUMBER(4) NOT_NULL(mld_opdr_uitvoeren_tot, mld_c_opdr_inzetbaar_tot) CONSTRAINT mld_c_opdr_inzetbaar_tot2 CHECK(mld_opdr_uitvoeren_tot>=0 AND mld_opdr_uitvoeren_tot<1440), mld_opdr_uitvoeren_dag -- 0=zondag, 1=maandag, 2=dinsdag, 3=woensdag, 4=donderdag, 5=vrijdag, 6=zaterdag NUMBER(1) NOT_NULL(mld_opdr_uitvoeren_dag, mld_c_mld_opdr_uitvoeren_dag), mld_opdr_uitvoeren_infrequent NUMBER(1) ); CREATE_TABLE(mld_opdr_materiaal, 0) ( mld_opdr_materiaal_key NUMBER(10) CONSTRAINT mld_k_mld_opdr_materiaal_key PRIMARY KEY, mld_opdr_key NUMBER(10) NOT_NULL(mld_opdr_key, mld_c_mld_opdr_key2) CONSTRAINT mld_r_mld_opdr_key3 REFERENCES mld_opdr(mld_opdr_key) ON DELETE CASCADE, fac_usrdata_key NUMBER(10) CONSTRAINT fac_r_fac_usrdata_key REFERENCES fac_usrdata(fac_usrdata_key), mld_opdr_materiaal_aantal NUMBER(8,2) NOT_NULL(mld_opdr_materiaal_aantal, mld_c_mld_opdr_mat_aantal), mld_opdr_materiaal_eenheidcode VARCHAR2(10), mld_opdr_materiaal_eenheid VARCHAR2(30), mld_opdr_materiaal_prijs NUMBER(15,7) CONSTRAINT mld_c_mld_opdr_mat_prijs CHECK((mld_opdr_materiaal_prijs >= 0) or (mld_opdr_materiaal_prijs IS NULL)), /* in fin_tab.src: fin_btwtabelwaarde_key NUMBER(10) CONSTRAINT mld_r_fin_btwtabelwaarde1 REFERENCES fin_btwtabelwaarde(fin_btwtabelwaarde_key), */ mld_opdr_materiaal_code VARCHAR2(30), mld_opdr_materiaal_omschr VARCHAR2(255), mld_opdr_materiaal_info VARCHAR2(4000), mld_opdr_materiaal_groep VARCHAR2(60), mld_opdr_materiaal_id NUMBER(10), mld_opdr_materiaal_extra1 VARCHAR2(60), mld_opdr_materiaal_extra2 VARCHAR2(60), mld_opdr_materiaal_extra3 VARCHAR2(4000), mld_opdr_materiaal_extra4 VARCHAR2(4000), mld_opdr_materiaal_externnr VARCHAR2(256), mld_opdr_materiaal_extsyncdate DATE, CONSTRAINT mld_c_mld_opdr_mat_omschr CHECK((mld_opdr_materiaal_omschr IS NULL AND fac_usrdata_key IS NOT NULL) OR (mld_opdr_materiaal_omschr IS NOT NULL AND fac_usrdata_key IS NULL)) ); CREATE_TABLE(mld_afmeldtekst, 0) ( mld_afmeldtekst_key NUMBER(10) CONSTRAINT mld_k_afmeldtekst_key PRIMARY KEY, mld_afmeldtekst_naam VARCHAR2(60) NOT_NULL(mld_afmeldtekst_naam, mld_c_afmeldtekst_naam), mld_afmeldtekst_omschrijving VARCHAR2(4000) NOT_NULL(mld_afmeldtekst_omschrijving, mld_c_mld_afmeldtekst_omschr), mld_stdmelding_key NUMBER(10) CONSTRAINT mld_r_mld_stdmelding_key3 REFERENCES mld_stdmelding (mld_stdmelding_key), mld_ins_discipline_key NUMBER(10) CONSTRAINT mld_r_ins_discipine_key2 REFERENCES ins_tab_discipline(ins_discipline_key), mld_afmeldtekst_usefor /* Bitwise 1=Afmeldtekst, 2=Afwijstekst, 4=Opdracht, 8=Reactie-melding*/ NUMBER(2) DEFAULT 1 NOT NULL, CONSTRAINT mld_u_afmeldtekst_naam UNIQUE (mld_afmeldtekst_naam) ); ALTER TABLE alg_ruimte ADD mld_dienstniveau_key NUMBER(10) REFERENCES mld_dienstniveau(mld_dienstniveau_key) ON DELETE SET NULL; ALTER TABLE alg_verdieping ADD mld_dienstniveau_key NUMBER(10) REFERENCES mld_dienstniveau(mld_dienstniveau_key) ON DELETE SET NULL; ALTER TABLE alg_gebouw ADD mld_dienstniveau_key NUMBER(10) REFERENCES mld_dienstniveau(mld_dienstniveau_key) ON DELETE SET NULL; ALTER TABLE alg_locatie ADD mld_dienstniveau_key NUMBER(10) REFERENCES mld_dienstniveau(mld_dienstniveau_key) ON DELETE SET NULL; REGISTERONCE('$Id$') #endif // MLD