Skip to content
Snippets Groups Projects
structure.sql 58.7 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- core/sql/structure/core.postgresql.sql
    
    SET client_encoding = 'UTF8';
    SET standard_conforming_strings = off;
    SET check_function_bodies = false;
    SET client_min_messages = warning;
    SET escape_string_warning = off;
    
    
    --DROP PROCEDURAL LANGUAGE IF EXISTS plpgsql CASCADE;
    --CREATE PROCEDURAL LANGUAGE plpgsql;
    
    
    SET search_path = public, pg_catalog;
    SET default_tablespace = '';
    SET default_with_oids = false;
    
    CREATE TABLE actions
    (
    
      id serial NOT NULL,
    
      keyword character varying(32) NOT NULL DEFAULT ''::bpchar,
      label_action character varying(255),
      id_status character varying(10),
      is_system character(1) NOT NULL DEFAULT 'N'::bpchar,
      action_page character varying(255),
    
      component CHARACTER VARYING (128),
    
      history character(1) NOT NULL DEFAULT 'N'::bpchar,
      CONSTRAINT actions_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    
    CREATE TABLE docserver_types
    (
      docserver_type_id character varying(32) NOT NULL,
      docserver_type_label character varying(255) DEFAULT NULL::character varying,
      enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
      fingerprint_mode character varying(32) DEFAULT NULL::character varying,
      CONSTRAINT docserver_types_pkey PRIMARY KEY (docserver_type_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE docservers
    (
    
    Damien's avatar
    Damien committed
      id serial,
    
      docserver_id character varying(32) NOT NULL DEFAULT '1'::character varying,
      docserver_type_id character varying(32) NOT NULL,
      device_label character varying(255) DEFAULT NULL::character varying,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      is_readonly character(1) NOT NULL DEFAULT 'N'::bpchar,
    
      size_limit_number bigint NOT NULL DEFAULT (0)::bigint,
      actual_size_number bigint NOT NULL DEFAULT (0)::bigint,
      path_template character varying(255) NOT NULL,
      creation_date timestamp without time zone NOT NULL,
      coll_id character varying(32) NOT NULL DEFAULT 'coll_1'::character varying,
    
      CONSTRAINT docservers_pkey PRIMARY KEY (docserver_id),
      CONSTRAINT docservers_id_key UNIQUE (id)
    
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE doctypes_type_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      START 500
    
      CACHE 1;
    
    CREATE TABLE doctypes
    (
      coll_id character varying(32) NOT NULL DEFAULT ''::character varying,
      type_id integer NOT NULL DEFAULT nextval('doctypes_type_id_seq'::regclass),
      description character varying(255) NOT NULL DEFAULT ''::character varying,
      enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
      doctypes_first_level_id integer,
      doctypes_second_level_id integer,
    
      retention_final_disposition character varying(255) DEFAULT NULL,
      retention_rule character varying(15) DEFAULT NULL,
    
      duration_current_use integer,
    
      CONSTRAINT doctypes_pkey PRIMARY KEY (type_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE history_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    CREATE TABLE history
    (
      id bigint NOT NULL DEFAULT nextval('history_id_seq'::regclass),
      table_name character varying(32) DEFAULT NULL::character varying,
      record_id character varying(255) DEFAULT NULL::character varying,
      event_type character varying(32) NOT NULL,
    
      user_id character varying(128) NOT NULL,
    
      event_date timestamp without time zone NOT NULL,
      info text,
      id_module character varying(50) NOT NULL DEFAULT 'admin'::character varying,
      remote_ip character varying(32) DEFAULT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      event_id character varying(50),
    
      CONSTRAINT history_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE history_batch_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    CREATE TABLE history_batch
    (
      id bigint NOT NULL DEFAULT nextval('history_batch_id_seq'::regclass),
      module_name character varying(32) DEFAULT NULL::character varying,
      batch_id bigint DEFAULT NULL::bigint,
      event_date timestamp without time zone NOT NULL,
      total_processed bigint DEFAULT NULL::bigint,
      total_errors bigint DEFAULT NULL::bigint,
      info text,
      CONSTRAINT history_batch_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE parameters
    (
    
      id character varying(255) NOT NULL,
    
      description TEXT,
    
      param_value_string TEXT DEFAULT NULL::character varying,
    
      param_value_int integer,
      param_value_date timestamp without time zone,
      CONSTRAINT parameters_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE security_security_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
      START 600
    
      CACHE 1;
    
    CREATE TABLE "security"
    (
      security_id bigint NOT NULL DEFAULT nextval('security_security_id_seq'::regclass),
      group_id character varying(32) NOT NULL,
      coll_id character varying(32) NOT NULL,
      where_clause text,
      maarch_comment text,
      CONSTRAINT security_pkey PRIMARY KEY (security_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE status
    (
    
      identifier serial,
    
      id character varying(10) NOT NULL,
      label_status character varying(50) NOT NULL,
      is_system character(1) NOT NULL DEFAULT 'Y'::bpchar,
      img_filename character varying(255),
      maarch_module character varying(255) NOT NULL DEFAULT 'apps'::character varying,
      can_be_searched character(1) NOT NULL DEFAULT 'Y'::bpchar,
      can_be_modified character(1) NOT NULL DEFAULT 'Y'::bpchar,
      CONSTRAINT status_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    
    CREATE TABLE status_images
    (
      id serial,
      image_name character varying(128) NOT NULL,
      CONSTRAINT status_images_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    
    CREATE TABLE usergroup_content
    (
    
      user_id character varying(128) NOT NULL,
    
      group_id character varying(32) NOT NULL,
      primary_group character(1) NOT NULL,
      "role" character varying(255) DEFAULT NULL::character varying,
      CONSTRAINT usergroup_content_pkey PRIMARY KEY (user_id, group_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE usergroups
    (
    
      id serial NOT NULL,
    
      group_id character varying(32) NOT NULL,
    
    Damien's avatar
    Damien committed
      group_desc character varying(255),
      can_index boolean NOT NULL DEFAULT FALSE,
      indexation_parameters jsonb NOT NULL DEFAULT '{"actions" : [], "entities" : [], "keywords" : []}',
    
      CONSTRAINT usergroups_pkey PRIMARY KEY (group_id),
      CONSTRAINT usergroups_id_key UNIQUE (id)
    
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE usergroups_services
    (
      group_id character varying NOT NULL,
      service_id character varying NOT NULL,
      CONSTRAINT usergroups_services_pkey PRIMARY KEY (group_id, service_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE users
    (
    
      id serial NOT NULL,
    
      user_id character varying(128) NOT NULL,
    
      "password" character varying(255) DEFAULT NULL::character varying,
      firstname character varying(255) DEFAULT NULL::character varying,
      lastname character varying(255) DEFAULT NULL::character varying,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      phone character varying(32) DEFAULT NULL::character varying,
    
      mail character varying(255) DEFAULT NULL::character varying,
    
      initials character varying(32) DEFAULT NULL::character varying,
    
      custom_t1 character varying(50) DEFAULT '0'::character varying,
      custom_t2 character varying(50) DEFAULT NULL::character varying,
      custom_t3 character varying(50) DEFAULT NULL::character varying,
    
      status character varying(10) NOT NULL DEFAULT 'OK'::character varying,
    
      change_password character(1) NOT NULL DEFAULT 'Y'::bpchar,
    
      password_modification_date timestamp without time zone DEFAULT CURRENT_TIMESTAMP,
    
      loginmode character varying(50) DEFAULT NULL::character varying,
    
      cookie_key character varying(255) DEFAULT NULL::character varying,
      cookie_date timestamp without time zone,
    
    Damien's avatar
    Damien committed
      failed_authentication INTEGER DEFAULT 0,
      locked_until TIMESTAMP without time zone,
    
      external_id jsonb DEFAULT '{}',
    
      CONSTRAINT users_pkey PRIMARY KEY (user_id),
      CONSTRAINT users_id_key UNIQUE (id)
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- modules/attachments/sql/structure/attachments.postgresql.sql
    
    
    CREATE SEQUENCE res_attachment_res_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    CREATE TABLE res_attachments
    (
      res_id bigint NOT NULL DEFAULT nextval('res_attachment_res_id_seq'::regclass),
      title character varying(255) DEFAULT NULL::character varying,
      subject text,
      description text,
      type_id bigint ,
      format character varying(50) NOT NULL,
    
      typist character varying(128) NOT NULL,
    
      creation_date timestamp without time zone NOT NULL,
      author character varying(255) DEFAULT NULL::character varying,
      identifier character varying(255) DEFAULT NULL::character varying,
      source character varying(255) DEFAULT NULL::character varying,
      relation bigint,
      doc_date timestamp without time zone,
      docserver_id character varying(32) NOT NULL,
      path character varying(255) DEFAULT NULL::character varying,
      filename character varying(255) DEFAULT NULL::character varying,
      offset_doc character varying(255) DEFAULT NULL::character varying,
      fingerprint character varying(255) DEFAULT NULL::character varying,
      filesize bigint,
      status character varying(10) DEFAULT NULL::character varying,
      destination character varying(50) DEFAULT NULL::character varying,
      validation_date timestamp without time zone,
    
      effective_date timestamp without time zone,
    
      origin character varying(50) DEFAULT NULL::character varying,
    
      priority character varying(16),
    
      initiator character varying(50) DEFAULT NULL::character varying,
    
      dest_user character varying(128) DEFAULT NULL::character varying,
    
      coll_id character varying(32) NOT NULL,
      res_id_master bigint,
    
      attachment_type character varying(255) DEFAULT NULL::character varying,
      dest_contact_id bigint,
      dest_address_id bigint,
      updated_by character varying(128) DEFAULT NULL::character varying,
      is_multicontacts character(1),
      is_multi_docservers character(1) NOT NULL DEFAULT 'N'::bpchar,
    
      tnl_path character varying(255) DEFAULT NULL::character varying,
      tnl_filename character varying(255) DEFAULT NULL::character varying,
    
    Damien's avatar
    Damien committed
      in_signature_book boolean DEFAULT FALSE,
    
      in_send_attach boolean DEFAULT FALSE,
    
      signatory_user_serial_id int,
    
      fulltext_result character varying(10) DEFAULT NULL::character varying,
    
    Damien's avatar
    Damien committed
      external_id jsonb DEFAULT '{}',
    
      CONSTRAINT res_attachments_pkey PRIMARY KEY (res_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE adr_attachments
    (
    
      id serial NOT NULL,
    
      res_id bigint NOT NULL,
    
      type character varying(32) NOT NULL,
    
      docserver_id character varying(32) NOT NULL,
    
      path character varying(255) NOT NULL,
      filename character varying(255) NOT NULL,
    
      fingerprint character varying(255) DEFAULT NULL::character varying,
    
      CONSTRAINT adr_attachments_pkey PRIMARY KEY (id),
      CONSTRAINT adr_attachments_unique_key UNIQUE (res_id, type)
    
    )
    WITH (OIDS=FALSE);
    
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- modules/basket/sql/structure/basket.postgresql.sql
    
    CREATE TABLE actions_groupbaskets
    (
      id_action bigint NOT NULL,
      where_clause text,
      group_id character varying(32) NOT NULL,
      basket_id character varying(32) NOT NULL,
      used_in_basketlist character(1) NOT NULL DEFAULT 'Y'::bpchar,
      used_in_action_page character(1) NOT NULL DEFAULT 'Y'::bpchar,
      default_action_list character(1) NOT NULL DEFAULT 'N'::bpchar,
      CONSTRAINT actions_groupbaskets_pkey PRIMARY KEY (id_action, group_id, basket_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE baskets
    (
    
      id serial NOT NULL,
    
      coll_id character varying(32) NOT NULL,
      basket_id character varying(32) NOT NULL,
      basket_name character varying(255) NOT NULL,
      basket_desc character varying(255) NOT NULL,
      basket_clause text NOT NULL,
    
      is_visible character(1) NOT NULL DEFAULT 'Y'::bpchar,
    
      enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
    
      basket_order integer,
    
    Damien's avatar
    Damien committed
      color character varying(16),
    
      basket_res_order character varying(255) NOT NULL DEFAULT 'res_id desc',
    
      flag_notif character varying(1),
    
      CONSTRAINT baskets_pkey PRIMARY KEY (coll_id, basket_id),
      CONSTRAINT baskets_unique_key UNIQUE (id)
    
    CREATE TABLE basket_persistent_mode
    (
      res_id bigint,
    
      user_id character varying(128),
    
      is_persistent character varying(1)
    )
    WITH (
      OIDS=FALSE
    );
    
    
    CREATE TABLE res_mark_as_read
    (
      res_id bigint,
    
      user_id character varying(128),
    
      basket_id character varying(32)
    )
    WITH (
      OIDS=FALSE
    );
    
    
    Damien's avatar
    Damien committed
      id serial NOT NULL,
    
      group_id character varying(32) NOT NULL,
      basket_id character varying(32) NOT NULL,
    
    Damien's avatar
    Damien committed
      list_display json DEFAULT '[]',
    
      list_event character varying(255),
    
    Damien's avatar
    Damien committed
      CONSTRAINT groupbasket_pkey PRIMARY KEY (group_id, basket_id),
      CONSTRAINT groupbasket_unique_key UNIQUE (id)
    
    Damien's avatar
    Damien committed
    CREATE TABLE redirected_baskets
    
    Damien's avatar
    Damien committed
    id serial NOT NULL,
    actual_user_id INTEGER NOT NULL,
    owner_user_id INTEGER NOT NULL,
    basket_id character varying(255) NOT NULL,
    group_id INTEGER NOT NULL,
    CONSTRAINT redirected_baskets_pkey PRIMARY KEY (id),
    CONSTRAINT redirected_baskets_unique_key UNIQUE (owner_user_id, basket_id, group_id)
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- modules/entities/sql/structure/entities.postgresql.sql
    
    Damien's avatar
    Damien committed
      id serial NOT NULL,
    
      entity_id character varying(32) NOT NULL,
      entity_label character varying(255),
      short_label character varying(50),
    
      entity_full_name text,
    
      enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
      adrs_1 character varying(255),
      adrs_2 character varying(255),
      adrs_3 character varying(255),
      zipcode character varying(32),
      city character varying(255),
      country character varying(255),
      email character varying(255),
      business_id character varying(32),
      parent_entity_id character varying(32),
      entity_type character varying(64),
    
      ldap_id character varying(255),
    
    Alexandre Morin's avatar
    Alexandre Morin committed
      archival_agency character varying(255),
    
      archival_agreement character varying(255),
    
      folder_import character varying(64),
      CONSTRAINT entities_pkey PRIMARY KEY (entity_id),
      CONSTRAINT entities_folder_import_unique_key UNIQUE (folder_import)
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    
    CREATE SEQUENCE listinstance_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      listinstance_id BIGINT NOT NULL DEFAULT nextval('listinstance_id_seq'::regclass),
    
      coll_id character varying(50) NOT NULL,
      res_id bigint NOT NULL,
      listinstance_type character varying(50) DEFAULT 'DOC'::character varying,
      "sequence" bigint NOT NULL,
    
      item_id character varying(128) NOT NULL,
    
      item_type character varying(255) NOT NULL,
      item_mode character varying(50) NOT NULL,
    
      added_by_user character varying(128) NOT NULL,
    
      added_by_entity character varying(50) NOT NULL,
    
      visible character varying(1) NOT NULL DEFAULT 'Y'::bpchar,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      viewed bigint,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      difflist_type character varying(50),
    
      process_date timestamp without time zone,
    
      process_comment character varying(255),
    
    Damien's avatar
    Damien committed
      signatory boolean default false,
    
      requested_signature boolean default false,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      CONSTRAINT listinstance_pkey PRIMARY KEY (listinstance_id)
    
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE listmodels
    (
    
      id serial NOT NULL,
    
      object_id character varying(50) NOT NULL,
      object_type character varying(255) NOT NULL,
      "sequence" bigint NOT NULL,
    
      item_id character varying(128) NOT NULL,
    
      item_type character varying(255) NOT NULL,
      item_mode character varying(50) NOT NULL,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      description character varying(255),
    
      process_comment character varying(255),
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      visible character varying(1) NOT NULL DEFAULT 'Y'::bpchar
    
    CREATE TABLE difflist_types 
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    (
    
      difflist_type_id character varying(50) NOT NULL,
      difflist_type_label character varying(100) NOT NULL,
      difflist_type_roles TEXT,
      allow_entities character varying(1) NOT NULL DEFAULT 'N'::bpchar,
      is_system character varying(1) NOT NULL DEFAULT 'N'::bpchar,
      CONSTRAINT "difflist_types_pkey" PRIMARY KEY (difflist_type_id)
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    )
    WITH (
        OIDS=FALSE
    );
    
    
      user_id character varying(128) NOT NULL,
    
      entity_id character varying(32) NOT NULL,
      user_role character varying(255),
      primary_entity character(1) NOT NULL DEFAULT 'N'::bpchar,
      CONSTRAINT users_entities_pkey PRIMARY KEY (user_id, entity_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE groupbasket_redirect_system_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
      START 600
    
      CACHE 1;
    
    CREATE TABLE groupbasket_redirect
    (
      system_id integer NOT NULL DEFAULT nextval('groupbasket_redirect_system_id_seq'::regclass),
      group_id character varying(32) NOT NULL,
      basket_id character varying(32) NOT NULL,
      action_id int NOT NULL,
      entity_id character varying(32),
      keyword character varying(255),
      redirect_mode character varying(32) NOT NULL,
      CONSTRAINT groupbasket_redirect_pkey PRIMARY KEY (system_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE SEQUENCE email_signatures_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 7
      CACHE 1;
    
    
    Damien's avatar
    Damien committed
    CREATE TABLE users_email_signatures
    
    (
      id bigint NOT NULL DEFAULT nextval('email_signatures_id_seq'::regclass),
      user_id character varying(255) NOT NULL,
      html_body text NOT NULL,
      title character varying NOT NULL,
      CONSTRAINT email_signatures_pkey PRIMARY KEY (id)
    )
    WITH (
      OIDS=FALSE
    );
    
      id serial NOT NULL,
      label character varying(255) NOT NULL,
      public boolean NOT NULL,   
      user_id INTEGER NOT NULL,
      parent_id INTEGER,
    
    Florian Azizian's avatar
    Florian Azizian committed
      level INTEGER NOT NULL,
    
      CONSTRAINT folders_pkey PRIMARY KEY (id)
    
    CREATE TABLE resources_folders
    (
      id serial NOT NULL,
      folder_id INTEGER NOT NULL,
      res_id INTEGER NOT NULL,
      CONSTRAINT resources_folders_pkey PRIMARY KEY (id),
      CONSTRAINT resources_folders_unique_key UNIQUE (folder_id, res_id)
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE entities_folders
    (
      id serial NOT NULL,
      folder_id INTEGER NOT NULL,
      entity_id INTEGER NOT NULL,
      edition boolean NOT NULL,
      CONSTRAINT entities_folders_pkey PRIMARY KEY (id),
      CONSTRAINT entities_folders_unique_key UNIQUE (folder_id, entity_id)
    )
    WITH (OIDS=FALSE);
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- modules/life_cycle/sql/structure/life_cycle.postgresql.sql
    
    CREATE TABLE lc_policies
    (
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       policy_id character varying(32) NOT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       policy_name character varying(255) NOT NULL,
       policy_desc character varying(255) NOT NULL,
       CONSTRAINT lc_policies_pkey PRIMARY KEY (policy_id)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    WITH (OIDS = FALSE);
    
    
    CREATE TABLE lc_cycles
    (
       policy_id character varying(32) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       cycle_id character varying(32) NOT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       cycle_desc character varying(255) NOT NULL,
       sequence_number integer NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       where_clause text,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       break_key character varying(255) DEFAULT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       validation_mode character varying(32) NOT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       CONSTRAINT lc_cycle_pkey PRIMARY KEY (policy_id, cycle_id)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    WITH (OIDS = FALSE);
    
    CREATE TABLE lc_cycle_steps
    (
       policy_id character varying(32) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       cycle_id character varying(32) NOT NULL,
       cycle_step_id character varying(32) NOT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       cycle_step_desc character varying(255) NOT NULL,
       docserver_type_id character varying(32) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       is_allow_failure character(1) NOT NULL DEFAULT 'N'::bpchar,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       step_operation character varying(32) NOT NULL,
       sequence_number integer NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       is_must_complete character(1) NOT NULL DEFAULT 'N'::bpchar,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       preprocess_script character varying(255) DEFAULT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       postprocess_script character varying(255) DEFAULT NULL,
       CONSTRAINT lc_cycle_steps_pkey PRIMARY KEY (policy_id, cycle_id, cycle_step_id, docserver_type_id)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    WITH (OIDS = FALSE);
    
    CREATE TABLE lc_stack
    (
       policy_id character varying(32) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       cycle_id character varying(32) NOT NULL,
       cycle_step_id character varying(32) NOT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       coll_id character varying(32) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
       res_id bigint NOT NULL,
       cnt_retry integer DEFAULT NULL,
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       status character(1) NOT NULL,
    
       work_batch bigint,
       regex character varying(32),
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
       CONSTRAINT lc_stack_pkey PRIMARY KEY (policy_id, cycle_id, cycle_step_id, res_id)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    WITH (OIDS = FALSE);
    
    
    Damien's avatar
    Damien committed
      id serial,
    
      user_id character varying(128) NOT NULL,
    
    Damien's avatar
    Damien committed
      creation_date timestamp without time zone NOT NULL,
    
    Damien's avatar
    Damien committed
      type CHARACTER VARYING (32) DEFAULT 'resource' NOT NULL,
    
      CONSTRAINT notes_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    SNA's avatar
    SNA committed
    CREATE SEQUENCE notes_entities_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 20
      CACHE 1;
    
    
    CREATE TABLE note_entities
    (
      id bigint NOT NULL DEFAULT nextval('notes_entities_id_seq'::regclass),
      note_id bigint NOT NULL,
      item_id character varying(50),
      CONSTRAINT note_entities_pkey PRIMARY KEY (id)
    )
    WITH (OIDS=FALSE);
    
    
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    
    -- modules/notes/sql/structure/notifications.postgresql.sql
    
    CREATE SEQUENCE notifications_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      START 100
    
      CACHE 1;
    
    CREATE TABLE notifications
    (
      notification_sid bigint NOT NULL DEFAULT nextval('notifications_seq'::regclass),
      notification_id character varying(50) NOT NULL,
      description character varying(255),
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      is_enabled character varying(1) NOT NULL default 'Y'::bpchar,
    
      event_id character varying(255) NOT NULL,
      notification_mode character varying(30) NOT NULL,
      template_id bigint,
      diffusion_type character varying(50) NOT NULL,
    
      diffusion_properties text,
    
      attachfor_type character varying(50),
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      attachfor_properties character varying(2048),
    
      CONSTRAINT notifications_pkey PRIMARY KEY (notification_sid)
    )
    WITH (
      OIDS=FALSE
    );
    
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    
    
    CREATE SEQUENCE notif_event_stack_seq
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    
    CREATE TABLE notif_event_stack
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    (
    
      event_stack_sid bigint NOT NULL DEFAULT nextval('notif_event_stack_seq'::regclass),
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      notification_sid bigint NOT NULL,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      table_name character varying(50) NOT NULL,
    
      record_id character varying(128) NOT NULL,
    
      user_id character varying(128) NOT NULL,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      event_info character varying(255) NOT NULL,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
      event_date timestamp without time zone NOT NULL,
      exec_date timestamp without time zone,
      exec_result character varying(50),
    
      CONSTRAINT notif_event_stack_pkey PRIMARY KEY (event_stack_sid)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    WITH (
      OIDS=FALSE
    );
    
    
    CREATE SEQUENCE notif_email_stack_seq
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
    
    
    CREATE TABLE notif_email_stack
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    (
    
      email_stack_sid bigint NOT NULL DEFAULT nextval('notif_email_stack_seq'::regclass),
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      sender character varying(255) NOT NULL,
      reply_to character varying(255),
      recipient character varying(2000) NOT NULL,
      cc character varying(2000),
      bcc character varying(2000),
      subject character varying(255),
      html_body text,
      text_body text,
      charset character varying(50) NOT NULL,
    
      module character varying(50) NOT NULL,
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      exec_date timestamp without time zone,
      exec_result character varying(50),
    
      CONSTRAINT notif_email_stack_pkey PRIMARY KEY (email_stack_sid)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    )
    WITH (
      OIDS=FALSE
    );
    
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    
    CREATE SEQUENCE notif_rss_stack_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 1
      CACHE 1;
      
    CREATE TABLE notif_rss_stack
    (
      rss_stack_sid bigint NOT NULL DEFAULT nextval('notif_rss_stack_seq'::regclass),
      rss_user_id character varying(128) NOT NULL,
      rss_event_stack_sid bigint NOT NULL,
      rss_event_url text,
      CONSTRAINT notif_rss_stack_pkey PRIMARY KEY (rss_stack_sid )
    )
    WITH (
      OIDS=FALSE
    );
    
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- modules/postindexing/sql/structure/postindexing.postgresql.sql
    
    
    
    -- modules/reports/sql/structure/reports.postgresql.sql
    
    CREATE TABLE usergroups_reports
    (
      group_id character varying(32) NOT NULL,
      report_id character varying(50) NOT NULL,
      CONSTRAINT usergroups_reports_pkey PRIMARY KEY (group_id, report_id)
    )
    WITH (OIDS=FALSE);
    
    
    -- modules/templates/sql/structure/templates.postgresql.sql
    
    
    CREATE SEQUENCE templates_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
      START 110
    
      template_id bigint NOT NULL DEFAULT nextval('templates_seq'::regclass),
    
      template_label character varying(255) DEFAULT NULL::character varying,
      template_comment character varying(255) DEFAULT NULL::character varying,
      template_content text,
    
      template_type character varying(32) NOT NULL DEFAULT 'HTML'::character varying,
    
      template_path character varying(255),
    
      template_file_name character varying(255),
    
      template_style character varying(255),
    
      template_datasource character varying(32),
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      template_target character varying(255),
    
      template_attachment_type character varying(255) DEFAULT NULL::character varying,
    
      CONSTRAINT templates_pkey PRIMARY KEY (template_id)
    
    )
    WITH (OIDS=FALSE);
    
    CREATE TABLE templates_association
    (
    
      id serial,
    
      template_id bigint NOT NULL,
      value_field character varying(255) NOT NULL,
    
      CONSTRAINT templates_association_pkey PRIMARY KEY (id)
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
    WITH (
      OIDS=FALSE
    );
    
    
    
    CREATE TABLE templates_doctype_ext
    (
      template_id bigint DEFAULT NULL,
      type_id integer NOT NULL,
      is_generated character(1) NOT NULL DEFAULT 'N'::bpchar
    )
    WITH (OIDS=FALSE);
    
    Jean-Louis ERCOLANI's avatar
    Jean-Louis ERCOLANI committed
    -- apps/maarch_entreprise/sql/structure/apps.postgresql.sql
    
    CREATE SEQUENCE contact_id_seq
      INCREMENT 1
    
      MAXVALUE 9223372036854775807
    
    Giovannoni Laurent's avatar
    Giovannoni Laurent committed
      START 200
    
      CACHE 1;
    
    CREATE TABLE contacts (
    contact_id bigint NOT NULL DEFAULT nextval('contact_id_seq'::regclass),
    
    lastname character varying(255),
    firstname character varying(255),
    society character varying(255),
    function character varying(255),
    address_num character varying(32)  ,
    address_street character varying(255),
    address_complement character varying(255),
    address_town character varying(255),
    address_postal_code character varying(255),
    address_country character varying(255),
    email character varying(255),
    phone character varying(20),
    
    is_corporate_person character(1) NOT NULL DEFAULT 'Y'::bpchar,
    user_id character varying(128),
    title character varying(255),
    business_id character varying(255),
    ref_identifier character varying(255),
    acc_number character varying(50),
    entity_id character varying(32),
    contact_type character varying(255) NOT NULL DEFAULT 'letter'::character varying,
    enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
    
    Cyril Vazquez's avatar
    Cyril Vazquez committed
    is_private character varying(1) NOT NULL DEFAULT 'N'::character varying,
    
    CONSTRAINT contacts_pkey PRIMARY KEY  (contact_id)
    ) WITH (OIDS=FALSE);
    
    CREATE SEQUENCE query_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 10
      CACHE 1;
    
    
      -- multicontacts
    CREATE TABLE contacts_res
    (
      coll_id character varying(32) NOT NULL,
      res_id bigint NOT NULL,
    
      contact_id character varying(128) NOT NULL,
    
      address_id bigint NOT NULL,
      mode character varying NOT NULL DEFAULT 'multi'::character varying
    
    -- contacts v2
    CREATE SEQUENCE contact_types_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
    
      CACHE 1;
    
    CREATE TABLE contact_types 
    (
      id bigint NOT NULL DEFAULT nextval('contact_types_id_seq'::regclass),
      label character varying(255) NOT NULL,
    
      can_add_contact character varying(1) NOT NULL DEFAULT 'Y'::character varying,
    
      contact_target character varying(50),
    
      CONSTRAINT contact_types_pkey PRIMARY KEY  (id)
    ) WITH (OIDS=FALSE);
    
    CREATE SEQUENCE contact_v2_id_seq
      INCREMENT 1
    
      MAXVALUE 9223372036854775807
    
      CACHE 1;
    
    CREATE TABLE contacts_v2 
    (
      contact_id bigint NOT NULL DEFAULT nextval('contact_v2_id_seq'::regclass),
      contact_type bigint NOT NULL,
      is_corporate_person character(1) DEFAULT 'Y'::bpchar,
    
    Florian Azizian's avatar
    Florian Azizian committed
      is_external_contact character(1) DEFAULT 'N'::bpchar,
    
      society character varying(255),
      society_short character varying(32),
      firstname character varying(255),
      lastname character varying(255),
      title character varying(255),
      function character varying(255),
    
      user_id character varying(255) NOT NULL,
      entity_id character varying(32) NOT NULL,
      creation_date timestamp without time zone NOT NULL,
      update_date timestamp without time zone,
    
      enabled character varying(1) NOT NULL DEFAULT 'Y'::bpchar,
    
      CONSTRAINT contacts_v2_pkey PRIMARY KEY  (contact_id)
    ) WITH (OIDS=FALSE);
    
    CREATE SEQUENCE contact_purposes_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 100
      CACHE 1;
    
    CREATE TABLE contact_purposes 
    (
      id bigint NOT NULL DEFAULT nextval('contact_purposes_id_seq'::regclass),
      label character varying(255) NOT NULL,
      CONSTRAINT contact_purposes_pkey PRIMARY KEY  (id)
    ) WITH (OIDS=FALSE);
    
    CREATE SEQUENCE contact_addresses_id_seq
      INCREMENT 1
      MINVALUE 1
      MAXVALUE 9223372036854775807
      START 100
      CACHE 1;
    
    CREATE TABLE contact_addresses 
    (
      id bigint NOT NULL DEFAULT nextval('contact_addresses_id_seq'::regclass),
      contact_id bigint NOT NULL,
      contact_purpose_id bigint DEFAULT 1,
      departement character varying(255),
    
      firstname character varying(255),
    
      lastname character varying(255),
      title character varying(255),
      function character varying(255),
      occupancy character varying(1024),
      address_num character varying(32)  ,
      address_street character varying(255),
      address_complement character varying(255),
      address_town character varying(255),
      address_postal_code character varying(255),
      address_country character varying(255),
      phone character varying(20),
      email character varying(255),
      website character varying(255),
      salutation_header character varying(255),
      salutation_footer character varying(255),
      other_data character varying(255),
      user_id character varying(255) NOT NULL,
      entity_id character varying(32) NOT NULL,
      is_private character(1) NOT NULL DEFAULT 'N'::bpchar,
    
      enabled character varying(1) NOT NULL DEFAULT 'Y'::bpchar,
    
    Damien's avatar
    Damien committed
      external_id jsonb DEFAULT '{}',
    
    Florian Azizian's avatar
    Florian Azizian committed
      ban_id character varying(128),
    
      CONSTRAINT contact_addresses_pkey PRIMARY KEY  (id)
    ) WITH (OIDS=FALSE);
    
    
    DROP TABLE IF EXISTS contacts_groups;
    CREATE TABLE contacts_groups
    (
      id serial,
      label character varying(32) NOT NULL,
      description character varying(255) NOT NULL,
      public boolean NOT NULL,
      owner integer NOT NULL,
      entity_owner character varying(32) NOT NULL,
      CONSTRAINT contacts_groups_pkey PRIMARY KEY (id),
      CONSTRAINT contacts_groups_key UNIQUE (label, owner)
    )
    WITH (OIDS=FALSE);
    
    DROP TABLE IF EXISTS contacts_groups_lists;
    CREATE TABLE contacts_groups_lists
    (
      id serial,
      contacts_groups_id integer NOT NULL,
      contact_addresses_id integer NOT NULL,
      CONSTRAINT contacts_groups_lists_pkey PRIMARY KEY (id),
      CONSTRAINT contacts_groups_lists_key UNIQUE (contacts_groups_id, contact_addresses_id)
    )
    WITH (OIDS=FALSE);
    
    
    CREATE TABLE saved_queries (
      query_id bigint NOT NULL DEFAULT nextval('query_id_seq'::regclass),
    
      user_id character varying(128)  default NULL,
    
      query_name character varying(255) NOT NULL,
      creation_date timestamp without time zone NOT NULL,
    
      created_by character varying(128)  NOT NULL,
    
      query_type character varying(50) NOT NULL,
      query_txt text  NOT NULL,
      last_modification_date timestamp without time zone,
      CONSTRAINT saved_queries_pkey PRIMARY KEY  (query_id)
    ) WITH (OIDS=FALSE);