summaryrefslogtreecommitdiff
path: root/odoo/addons/base/base.sql
diff options
context:
space:
mode:
authorRaphael Collet <rco@openerp.com>2016-09-02 15:58:39 +0200
committerRaphael Collet <rco@openerp.com>2016-09-02 17:28:12 +0200
commit9e64f9f9514194d74e166b032add8511182f2677 (patch)
tree5086710c04c6b923be18a6d1d97b3f0f3a2a9c4a /odoo/addons/base/base.sql
parent11812b0b9e82b2b1b9041d8250ce01e7b4a5f7ee (diff)
[REF] openerp: move `openerp` to `odoo`
Diffstat (limited to 'odoo/addons/base/base.sql')
-rw-r--r--odoo/addons/base/base.sql211
1 files changed, 211 insertions, 0 deletions
diff --git a/odoo/addons/base/base.sql b/odoo/addons/base/base.sql
new file mode 100644
index 00000000000..4f53a2b032b
--- /dev/null
+++ b/odoo/addons/base/base.sql
@@ -0,0 +1,211 @@
+-------------------------------------------------------------------------
+-- Pure SQL
+-------------------------------------------------------------------------
+
+CREATE TABLE ir_actions (
+ id serial,
+ primary key(id)
+);
+CREATE TABLE ir_act_window (primary key(id)) INHERITS (ir_actions);
+CREATE TABLE ir_act_report_xml (primary key(id)) INHERITS (ir_actions);
+CREATE TABLE ir_act_url (primary key(id)) INHERITS (ir_actions);
+CREATE TABLE ir_act_server (primary key(id)) INHERITS (ir_actions);
+CREATE TABLE ir_act_client (primary key(id)) INHERITS (ir_actions);
+
+
+CREATE TABLE ir_model (
+ id serial,
+ model varchar NOT NULL,
+ name varchar,
+ state varchar,
+ info text,
+ transient boolean,
+ primary key(id)
+);
+
+CREATE TABLE ir_model_fields (
+ id serial,
+ model varchar NOT NULL,
+ model_id integer references ir_model on delete cascade,
+ name varchar NOT NULL,
+ state varchar default 'base',
+ field_description varchar,
+ help varchar,
+ ttype varchar,
+ relation varchar,
+ relation_field varchar,
+ index boolean,
+ copy boolean,
+ related varchar,
+ readonly boolean default False,
+ required boolean default False,
+ selectable boolean default False,
+ translate boolean default False,
+ serialization_field_id integer references ir_model_fields on delete cascade,
+ relation_table varchar,
+ column1 varchar,
+ column2 varchar,
+ store boolean,
+ primary key(id)
+);
+
+CREATE TABLE res_lang (
+ id serial,
+ name VARCHAR(64) NOT NULL UNIQUE,
+ code VARCHAR(16) NOT NULL UNIQUE,
+ primary key(id)
+);
+
+CREATE TABLE res_users (
+ id serial NOT NULL,
+ active boolean default True,
+ login varchar(64) NOT NULL UNIQUE,
+ password varchar(64) default null,
+ -- No FK references below, will be added later by ORM
+ -- (when the destination rows exist)
+ company_id integer, -- references res_company,
+ partner_id integer, -- references res_partner,
+ primary key(id)
+);
+
+create table wkf (
+ id serial,
+ name varchar(64),
+ osv varchar(64),
+ on_create bool default false,
+ primary key(id)
+);
+
+CREATE TABLE ir_module_category (
+ id serial NOT NULL,
+ create_uid integer, -- references res_users on delete set null,
+ create_date timestamp without time zone,
+ write_date timestamp without time zone,
+ write_uid integer, -- references res_users on delete set null,
+ parent_id 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_users on delete set null,
+ create_date timestamp without time zone,
+ write_date timestamp without time zone,
+ write_uid integer, -- references res_users on delete set null,
+ website character varying(256),
+ summary character varying(256),
+ name character varying(128) NOT NULL,
+ author character varying(128),
+ icon varchar,
+ state character varying(16),
+ latest_version character varying(64),
+ shortdesc character varying(256),
+ category_id integer REFERENCES ir_module_category ON DELETE SET NULL,
+ description text,
+ application boolean default False,
+ demo boolean default False,
+ web boolean DEFAULT FALSE,
+ license character varying(32),
+ sequence integer DEFAULT 100,
+ auto_install boolean default False,
+ 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_users on delete set null,
+ create_date timestamp without time zone,
+ write_date timestamp without time zone,
+ write_uid integer, -- references res_users on delete set null,
+ name character varying(128),
+ module_id integer REFERENCES ir_module_module ON DELETE cascade,
+ primary key(id)
+);
+
+CREATE TABLE ir_model_data (
+ id serial NOT NULL,
+ create_uid integer,
+ create_date timestamp without time zone,
+ write_date timestamp without time zone,
+ write_uid integer,
+ noupdate boolean,
+ name varchar NOT NULL,
+ date_init timestamp without time zone,
+ date_update timestamp without time zone,
+ module varchar NOT NULL,
+ model varchar NOT NULL,
+ res_id integer,
+ primary key(id)
+);
+
+-- Records foreign keys and constraints installed by a module (so they can be
+-- removed when the module is uninstalled):
+-- - for a foreign key: type is 'f',
+-- - for a constraint: type is 'u' (this is the convention PostgreSQL uses).
+CREATE TABLE ir_model_constraint (
+ id serial NOT NULL,
+ date_init timestamp without time zone,
+ date_update timestamp without time zone,
+ module integer NOT NULL references ir_module_module on delete restrict,
+ model integer NOT NULL references ir_model on delete restrict,
+ type character varying(1) NOT NULL,
+ definition varchar,
+ name varchar NOT NULL,
+ primary key(id)
+);
+
+-- Records relation tables (i.e. implementing many2many) installed by a module
+-- (so they can be removed when the module is uninstalled).
+CREATE TABLE ir_model_relation (
+ id serial NOT NULL,
+ date_init timestamp without time zone,
+ date_update timestamp without time zone,
+ module integer NOT NULL references ir_module_module on delete restrict,
+ model integer NOT NULL references ir_model on delete restrict,
+ name varchar NOT NULL,
+ primary key(id)
+);
+
+CREATE TABLE res_currency (
+ id serial,
+ name varchar NOT NULL,
+ symbol varchar NOT NULL,
+ primary key(id)
+);
+
+CREATE TABLE res_company (
+ id serial,
+ name varchar NOT NULL,
+ partner_id integer,
+ currency_id integer,
+ primary key(id)
+);
+
+CREATE TABLE res_partner (
+ id serial,
+ name varchar,
+ company_id integer,
+ primary key(id)
+);
+
+
+---------------------------------
+-- Default data
+---------------------------------
+insert into res_currency (id, name, symbol) VALUES (1, 'EUR', '€');
+insert into ir_model_data (name, module, model, noupdate, res_id) VALUES ('EUR', 'base', 'res.currency', true, 1);
+select setval('res_currency_id_seq', 2);
+
+insert into res_company (id, name, partner_id, currency_id) VALUES (1, 'My Company', 1, 1);
+insert into ir_model_data (name, module, model, noupdate, res_id) VALUES ('main_company', 'base', 'res.company', true, 1);
+select setval('res_company_id_seq', 2);
+
+insert into res_partner (id, name, company_id) VALUES (1, 'My Company', 1);
+insert into ir_model_data (name, module, model, noupdate, res_id) VALUES ('main_partner', 'base', 'res.partner', true, 1);
+select setval('res_partner_id_seq', 2);
+
+insert into res_users (id, login, password, active, partner_id, company_id) VALUES (1, 'admin', 'admin', true, 1, 1);
+insert into ir_model_data (name, module, model, noupdate, res_id) VALUES ('user_root', 'base', 'res.users', true, 1);
+select setval('res_users_id_seq', 2);