Files
tryton/trytond/init.sql
T
Cédric Krier 1724794f7b Remove demo on module
It will be handle by specific modules
2008-02-26 18:21:28 +01:00

254 lines
6.8 KiB
SQL

-------------------------------------------------------------------------
-- Pure SQL
-------------------------------------------------------------------------
CREATE TABLE inherit (
obj_type varchar(128) not null,
obj_id int not null,
inst_type varchar(128) not null,
inst_id int not null
);
-------------------------------------------------------------------------
-- Modules Description
-------------------------------------------------------------------------
CREATE TABLE ir_model (
id serial,
model varchar(64) DEFAULT ''::varchar NOT NULL,
name varchar(64),
info text,
primary key(id)
);
CREATE TABLE ir_model_field (
id serial,
model int references ir_model on delete cascade,
name varchar(64) DEFAULT ''::varchar NOT NULL,
relation varchar(64),
field_description varchar(256),
ttype varchar(64),
group_name varchar(64),
view_load boolean,
relate boolean default False,
help text,
primary key(id)
);
-------------------------------------------------------------------------
-- Actions
-------------------------------------------------------------------------
CREATE TABLE ir_ui_view (
id serial NOT NULL,
name varchar(64) DEFAULT ''::varchar NOT NULL,
model varchar(64) DEFAULT ''::varchar NOT NULL,
"type" varchar(64) DEFAULT 'form'::varchar NOT NULL,
arch text NOT NULL,
field_childs varchar(64),
priority integer DEFAULT 5 NOT NULL,
primary key(id)
);
CREATE TABLE ir_ui_menu (
id serial NOT NULL,
parent_id int references ir_ui_menu on delete set null,
name varchar(64) DEFAULT ''::varchar NOT NULL,
icon varchar(64) DEFAULT ''::varchar,
primary key (id)
);
--------------------------------
-- Translation
--------------------------------
CREATE TABLE ir_translation (
id serial NOT NULL,
lang varchar(5),
src text,
name varchar(128) NOT NULL,
res_id integer DEFAULT 0,
value text,
"type" varchar(16),
module varchar(128),
fuzzy boolean default False,
primary key(id)
);
CREATE TABLE ir_lang (
id serial NOT NULL,
name varchar(64) NOT NULL,
code varchar(5) NOT NULL,
translatable boolean default False,
active boolean default True,
direction varchar(3) NOT NULL,
primary key(id)
);
---------------------------------
-- Res user
---------------------------------
-- level:
-- 0 RESTRICT TO USER
-- 1 RESTRICT TO GROUP
-- 2 PUBLIC
CREATE TABLE res_user (
id serial NOT NULL,
name varchar(64) not null,
active boolean default True,
login varchar(64) NOT NULL UNIQUE,
password varchar(32) default null,
-- action_id int references ir_act_window on delete set null,
action int,
primary key(id)
);
alter table res_user add constraint res_user_login_uniq unique (login);
insert into res_user (id,login,password,name,action,active) values (0,'root',NULL,'Root',NULL,False);
CREATE TABLE res_group (
id serial NOT NULL,
name varchar(32) NOT NULL,
primary key(id)
);
CREATE TABLE res_group_user_rel (
uid integer NOT NULL references res_user on delete cascade,
gid integer NOT NULL references res_group on delete cascade
);
---------------------------------
-- Workflows
---------------------------------
create table wkf
(
id serial,
name varchar(64),
osv varchar(64),
on_create bool default False,
primary key(id)
);
create table wkf_activity
(
id serial,
workflow int references wkf on delete cascade,
subflow int references wkf on delete set null,
split_mode varchar(3) default 'XOR',
join_mode varchar(3) default 'XOR',
kind varchar(16) not null default 'dummy',
name varchar(64),
signal_send varchar(32) default null,
flow_start boolean default False,
flow_stop boolean default False,
action varchar(64) default null,
primary key(id)
);
create table wkf_transition
(
id serial,
act_from int references wkf_activity on delete cascade,
act_to int references wkf_activity on delete cascade,
condition varchar(128) default NULL,
trigger_type varchar(128) default NULL,
trigger_expr_id varchar(128) default NULL,
signal varchar(64) default null,
"group" int references res_group on delete set null,
primary key(id)
);
create table wkf_instance
(
id serial,
workflow int references wkf on delete restrict,
uid int default null,
res_id int not null,
res_type varchar(64) not null,
state varchar(32) not null default 'active',
primary key(id)
);
create table wkf_workitem
(
id serial,
activity int not null references wkf_activity on delete cascade,
instance int not null references wkf_instance on delete cascade,
subflow int references wkf_instance on delete cascade,
state varchar(64) default 'blocked',
primary key(id)
);
create table wkf_witm_trans
(
trans_id int not null references wkf_transition on delete cascade,
inst_id int not null references wkf_instance on delete cascade
);
create table wkf_logs
(
id serial,
res_type varchar(128) not null,
res_id int not null,
uid int references res_user on delete set null,
activity int references wkf_activity on delete set null,
time time not null,
info varchar(128) default NULL,
primary key(id)
);
---------------------------------
-- Modules
---------------------------------
CREATE TABLE ir_module_category (
id serial NOT NULL,
create_uid integer references res_user on delete set null,
create_date timestamp without time zone,
write_date timestamp without time zone,
write_uid integer references res_user on delete set null,
parent integer REFERENCES ir_module_category ON DELETE SET NULL,
name character varying(128) NOT NULL,
primary key(id)
);
CREATE TABLE ir_module_module (
id serial NOT NULL,
create_uid integer references res_user on delete set null,
create_date timestamp without time zone,
write_date timestamp without time zone,
write_uid integer references res_user on delete set null,
website character varying(256),
name character varying(128) NOT NULL,
author character varying(128),
url character varying(128),
state character varying(16),
latest_version character varying(64),
shortdesc character varying(256),
category integer REFERENCES ir_module_category ON DELETE SET NULL,
description text,
primary key(id)
);
ALTER TABLE ir_module_module add constraint name_uniq unique (name);
CREATE TABLE ir_module_module_dependency (
id serial NOT NULL,
create_uid integer references res_user on delete set null,
create_date timestamp without time zone,
write_date timestamp without time zone,
write_uid integer references res_user on delete set null,
name character varying(128),
version_pattern character varying(128) default NULL,
module integer REFERENCES ir_module_module ON DELETE cascade,
primary key(id)
);