#ifdef  BEZ // 03-11-2000 PF
/*
 *  $Revision$
 *  $Id$
 */

CREATE_TABLE(bez_actie_groep, 0)
(   bez_actie_groep_key
        NUMBER(10)
        CONSTRAINT bez_k_bez_actie_groep_key PRIMARY KEY,
    bez_actie_groep_omschrijving
        VARCHAR2(64),
    bez_actie_groep_default
        NUMBER(1) DEFAULT 0 NOT NULL,
    bez_actie_groep_verwijder
        DATE,
    CONSTRAINT BEZ_U_BEZ_ACTIE_GROEP UNIQUE(bez_actie_groep_omschrijving, bez_actie_groep_verwijder)
);

ALTER TABLE alg_gebouw
    ADD bez_actie_groep_key
    NUMBER(10)
    REFERENCES bez_actie_groep(bez_actie_groep_key);

CREATE_TABLE(bez_actie,0)
(
    bez_actie_key
        NUMBER(10)
        PRIMARY KEY,
    bez_actie_omschrijving
        VARCHAR2(64),
    bez_actie_default
        NUMBER(1),
    bez_actie_flags
        NUMBER(3) DEFAULT 0 NOT NULL, -- 0x001=oproepen, 0x002=autobadge
    bez_actie_groep_key
        NUMBER(10) NOT NULL
        REFERENCES bez_actie_groep,
    bez_actie_verwijder
        DATE,
    CONSTRAINT BEZ_U_BEZ_ACTIE UNIQUE(bez_actie_groep_key, bez_actie_omschrijving, bez_actie_verwijder)
);

ALTER TABLE res_ruimte
    ADD  bez_actie_key
    NUMBER(10)
    REFERENCES bez_actie(bez_actie_key);

CREATE_TABLE(bez_afspraak,0)
(
    bez_afspraak_key
        NUMBER(10)
        PRIMARY KEY,
    prs_perslid_key    -- key ontvanger bezoek
        NUMBER(10)
        REFERENCES prs_perslid,
    bez_afspraak_host_key
        NUMBER(10)
        REFERENCES prs_perslid(prs_perslid_key),
    bez_afspraak_contact_key
        NUMBER(10)
        REFERENCES prs_perslid(prs_perslid_key),
    bez_afspraak_gastheer
        VARCHAR2(120),
    bez_afspraak_telefoonnr
        VARCHAR2(20),
    bez_afspraak_datum
        DATE
        DEFAULT NULL,
    bez_actie_key
        NUMBER(10)
        REFERENCES bez_actie,
    alg_locatie_key
        NUMBER(10)
        CONSTRAINT bez_r_alg_locatie_key  REFERENCES alg_locatie(alg_locatie_key) ON DELETE CASCADE,
    res_rsv_ruimte_key
        NUMBER(10)
        REFERENCES res_rsv_ruimte(res_rsv_ruimte_key),
    mld_opdr_key
        NUMBER(10)
        REFERENCES mld_opdr(mld_opdr_key),
    alg_onrgoed_keys
        NUMBER(10),
    bez_afspraak_ruimte
        VARCHAR2(30),
    bez_afspraak_opmerking
        VARCHAR2(320),
    bez_afspraak_eind
        DATE,
    bez_afspraak_aanmaak
        DATE
        DEFAULT SYSDATE NOT NULL,
    bez_afspraak_externnr
        VARCHAR2(256),
    bez_afspraak_externsyncdate
        DATE
);

CREATE_TABLE(bez_bezoekers,0)
(
    bez_bezoekers_key
        NUMBER(10)
        PRIMARY KEY,
    bez_afspraak_key
        NUMBER(10)
        REFERENCES bez_afspraak,
    bez_afspraak_naam     -- naam bezoeker
        VARCHAR2(60),
    bez_afspraak_bedrijf  -- naam bedrijf bezoeker
        VARCHAR2(60),
    prs_contactpersoon_key  -- optioneel
        NUMBER(10)
        CONSTRAINT bez_r_prs_contactprs REFERENCES prs_contactpersoon(prs_contactpersoon_key),
    prs_perslid_key  -- optioneel
        NUMBER(10)
        CONSTRAINT bez_r_prs_perslid REFERENCES prs_perslid(prs_perslid_key),
    bez_bezoekers_pasnr
        VARCHAR2(30),
    bez_bezoekers_opmerking
        VARCHAR2(50),
    bez_afspraak_opmerking
        VARCHAR2(50),
    bez_bezoekers_done
        DATE,
    bez_bezoekers_out
        DATE,
    bez_bezoekers_done_actual
        DATE,
    bez_bezoekers_out_actual
        DATE,
    bez_bezoekers_oproep
        DATE,
    bez_bezoekers_flags -- documentatie in appl/bez/xxx.inc
        NUMBER(10)
        DEFAULT 0 NOT NULL,
    bez_bezoekers_flag
        NUMBER(1),
    bez_bezoekers_aanmaak
        DATE
        DEFAULT SYSDATE NOT NULL,
    bez_bezoekers_telefoon VARCHAR2(20),
    bez_bezoekers_email VARCHAR2(200),
    bez_bezoekers_kenteken VARCHAR2(10),
    bez_bezoekers_externnr VARCHAR2(256),
    bez_bezoekers_externsyncdate DATE
 );


ALTER TABLE res_rsv_deel
    ADD bez_bezoekers_key NUMBER(10)
    REFERENCES bez_bezoekers(bez_bezoekers_key) ON DELETE CASCADE;

ALTER TABLE res_rsv_deel ADD CONSTRAINT res_c_res_deel_ruimte
      CHECK (res_rsv_ruimte_key IS NOT NULL OR bez_bezoekers_key IS NOT NULL);


CREATE_TABLE(bez_kenmerk,0)
    (bez_kenmerk_key
        NUMBER(10)
        CONSTRAINT bez_k_bez_kenmerk_key PRIMARY KEY
    ,bez_kenmerk_volgnr
        NUMBER(3)
        NOT NULL
    ,bez_kenmerk_rolcode 
        NUMBER(4) 
        DEFAULT 7 NOT NULL
    ,bez_kenmerk_omschrijving
        VARCHAR2(50)
    ,bez_kenmerk_upper
        VARCHAR2(50)
    ,bez_kenmerk_code
        VARCHAR2(60)
    ,bez_kenmerk_hint
        VARCHAR2(255)
    ,bez_kenmerk_default
        VARCHAR2(4000)
    ,bez_kenmerk_show_expr
        VARCHAR2(4000)
    ,bez_kenmerk_dimensie
        VARCHAR2(10)
    ,bez_kenmerk_kenmerktype
        VARCHAR2(1)
    ,bez_kenmerk_systeem -- &1 = systeemkm, &8 = anonimiseren
        NUMBER(2)
        DEFAULT 0 NOT NULL
    ,bez_kenmerk_toonbaar
        NUMBER(1)
    ,bez_kenmerk_inlijst
        NUMBER(1)
        DEFAULT 0 NOT NULL
    ,bez_kenmerk_uniek
        NUMBER(1)
    ,bez_kenmerk_regexp
        VARCHAR2(255)
    ,bez_kenmerk_verplicht
        NUMBER(1)
    ,bez_kenmerk_groep
        NUMBER(1)
        DEFAULT 0 NOT NULL
    ,bez_kenmerk_lengte
        NUMBER(4)
    ,bez_kenmerk_dec
        NUMBER(2)
    ,bez_kenmerk_nmin
        NUMBER(10)
    ,bez_kenmerk_nmax
        NUMBER(10)
    ,fac_kenmerkdomein_key
        NUMBER(10)
        CONSTRAINT bez_r_kenmerkdomein_key1 REFERENCES fac_kenmerkdomein(fac_kenmerkdomein_key)
    ,bez_kenmerk_aanmaak
        DATE
        DEFAULT SYSDATE
        NOT_NULL(bez_kenmerk_aanmaak, bez_c_bez_kenmerk_aanmaak)
    ,bez_kenmerk_verwijder
        DATE
        DEFAULT NULLDATUM
    ,fac_functie_key
        NUMBER(10)
        CONSTRAINT fac_r_bez_kenmerk_functie REFERENCES fac_functie (fac_functie_key)
);

CREATE_TABLE(bez_kenmerkwaarde,0)
    (bez_kenmerkwaarde_key
        NUMBER(10)
        CONSTRAINT bez_k_bez_kenmerkwaarde_key PRIMARY KEY
    ,bez_bezoekers_key
        NUMBER(10)
        CONSTRAINT bez_r_bez_bezoekers_key1 REFERENCES bez_bezoekers(bez_bezoekers_key) ON DELETE CASCADE
        NOT_NULL(bez_bezoekers_key, bez_c_bez_kenmerkwaarde1)
    , bez_kenmerk_key
        NUMBER(10)
        CONSTRAINT bez_r_bez_kenmerk_key1 REFERENCES bez_kenmerk(bez_kenmerk_key)
        NOT_NULL(bez_kenmerk_key, bez_c_bez_kenmerkwaarde2)
    , bez_kenmerkwaarde_waarde
        VARCHAR2(4000)
    , bez_kenmerkwaarde_aanmaak
        DATE
        DEFAULT SYSDATE
        NOT_NULL(bez_kenmerkwaarde_aanmaak, bez_c_bez_kenmerkwaarde_aanm)
    , bez_kenmerkwaarde_verwijder
        DATE
        DEFAULT NULLDATUM,
    CONSTRAINT bez_u_bez_kenmerkwaarde_key UNIQUE(bez_bezoekers_key, bez_kenmerk_key)
);

REGISTERONCE('$Id$')

#endif  // BEZ
