diff --git a/core/trunk/structure.sql b/core/trunk/structure.sql
new file mode 100644
index 0000000000000000000000000000000000000000..e58dd3e40b8f7f753f425c96b9e8e7ce2d61ad00
--- /dev/null
+++ b/core/trunk/structure.sql
@@ -0,0 +1,1795 @@
+
+
+-- from 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 SEQUENCE actions_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 101
+  CACHE 1;
+
+CREATE TABLE actions
+(
+  id integer NOT NULL DEFAULT nextval('actions_id_seq'::regclass),
+  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,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  action_page character varying(255),
+  history character(1) NOT NULL DEFAULT 'N'::bpchar,
+  origin character varying(255) NOT NULL DEFAULT 'apps'::bpchar,
+  create_id  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,
+  is_container boolean NOT NULL DEFAULT false,
+  container_max_number integer NOT NULL DEFAULT (0)::integer,
+  is_compressed boolean NOT NULL DEFAULT false,
+  compression_mode character varying(32) DEFAULT NULL::character varying,
+  is_meta boolean NOT NULL DEFAULT false,
+  meta_template character varying(32) DEFAULT NULL::character varying,
+  is_logged boolean NOT NULL DEFAULT false,
+  log_template character varying(32) DEFAULT NULL::character varying,
+  is_signed boolean NOT NULL DEFAULT false,
+  fingerprint_mode character varying(32) DEFAULT NULL::character varying,
+  CONSTRAINT docserver_types_pkey PRIMARY KEY (docserver_type_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE docservers
+(
+  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,
+  is_readonly boolean NOT NULL DEFAULT false,
+  enabled character(1) NOT NULL DEFAULT 'Y'::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,
+  ext_docserver_info character varying(255) DEFAULT NULL::character varying,
+  chain_before character varying(32) DEFAULT NULL::character varying,
+  chain_after character varying(32) DEFAULT NULL::character varying,
+  creation_date timestamp without time zone NOT NULL,
+  closing_date timestamp without time zone,
+  coll_id character varying(32) NOT NULL DEFAULT 'coll_1'::character varying,
+  priority_number integer NOT NULL DEFAULT 10,
+  docserver_location_id character varying(32) NOT NULL,
+  adr_priority_number integer NOT NULL DEFAULT 1,
+  CONSTRAINT docservers_pkey PRIMARY KEY (docserver_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE docserver_locations
+(
+  docserver_location_id character varying(32) NOT NULL,
+  ipv4 character varying(255) DEFAULT NULL::character varying,
+  ipv6 character varying(255) DEFAULT NULL::character varying,
+  net_domain character varying(32) DEFAULT NULL::character varying,
+  mask character varying(255) DEFAULT NULL::character varying,
+  net_link character varying(255) DEFAULT NULL::character varying,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  CONSTRAINT docserver_locations_pkey PRIMARY KEY (docserver_location_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE doctypes_type_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 80
+  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,
+  primary_retention  character varying(50) DEFAULT NULL,
+  secondary_retention  character varying(50) DEFAULT NULL,
+  CONSTRAINT doctypes_pkey PRIMARY KEY (type_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE ext_docserver
+(
+  doc_id character varying(255) NOT NULL,
+  path character varying(255) NOT NULL,
+  CONSTRAINT ext_docserver_pkey PRIMARY KEY (doc_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE groupsecurity
+(
+  group_id character varying(32) NOT NULL,
+  resgroup_id character varying(32) NOT NULL,
+  can_view character(1) NOT NULL,
+  can_add character(1) NOT NULL,
+  can_delete character(1) NOT NULL,
+  CONSTRAINT groupsecurity_pkey PRIMARY KEY (group_id, resgroup_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(50) 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,
+  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(50) NOT NULL,
+  param_value_string character varying(50) 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 TABLE resgroup_content
+(
+  coll_id character varying(32) NOT NULL,
+  res_id bigint NOT NULL,
+  resgroup_id character varying(32) NOT NULL,
+  "sequence" integer NOT NULL,
+  CONSTRAINT resgroup_content_pkey PRIMARY KEY (coll_id, res_id, resgroup_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE resgroups
+(
+  resgroup_id character varying(32) NOT NULL,
+  resgroup_desc character varying(255) NOT NULL,
+  created_by character varying(255) NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  CONSTRAINT resgroups_pkey PRIMARY KEY (resgroup_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE security_security_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 20
+  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,
+  can_insert character(1) NOT NULL DEFAULT 'N'::bpchar,
+  can_update character(1) NOT NULL DEFAULT 'N'::bpchar,
+  can_delete character(1) NOT NULL DEFAULT 'N'::bpchar,
+  rights_bitmask integer NOT NULL DEFAULT 0,
+  mr_start_date timestamp without time zone DEFAULT NULL,
+  mr_stop_date timestamp without time zone DEFAULT NULL,
+  where_target character varying(15) DEFAULT 'DOC'::character varying,
+  CONSTRAINT security_pkey PRIMARY KEY (security_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE status
+(
+  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 usergroup_content
+(
+  user_id character varying(32) 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
+(
+  group_id character varying(32) NOT NULL,
+  group_desc character varying(255) DEFAULT NULL::character varying,
+  administrator character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_right1 character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_right2 character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_right3 character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_right4 character(1) NOT NULL DEFAULT 'N'::bpchar,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  CONSTRAINT usergroups_pkey PRIMARY KEY (group_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
+(
+  user_id character varying(32) 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,
+  phone character varying(15) DEFAULT NULL::character varying,
+  mail character varying(255) DEFAULT NULL::character varying,
+  department character varying(50) 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,
+  cookie_key character varying(255) DEFAULT NULL::character varying,
+  cookie_date timestamp without time zone,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  change_password character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  delay_number integer DEFAULT NULL,
+  status character varying(10) NOT NULL DEFAULT 'OK'::character varying,
+  loginmode character varying(50) DEFAULT NULL::character varying,
+  docserver_location_id character varying(32) DEFAULT NULL::character varying,
+  CONSTRAINT users_pkey PRIMARY KEY (user_id)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/advanced_physical_archive/sql/structure/advanced_physical_archive.postgresql.sql
+
+CREATE SEQUENCE arbox_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 10
+  CACHE 1;
+
+CREATE TABLE  ar_boxes (
+  arbox_id bigint NOT NULL DEFAULT nextval('arbox_id_seq'::regclass),
+  title character varying(255)  default NULL::character varying,
+  subject character varying(255)  default NULL::character varying,
+  description text ,
+  entity_id character varying(32)  default NULL::character varying,
+  arcontainer_id integer NOT NULL,
+  status character varying(3)  default NULL::character varying,
+  creation_date timestamp without time zone,
+  retention_time timestamp without time zone,
+  custom_t1 character varying(3)  default NULL::character varying,
+  custom_n1 integer default NULL,
+  custom_f1 numeric default NULL,
+  custom_d1 timestamp without time zone,
+  custom_t2 character varying(3)  default  NULL::character varying,
+  custom_n2 integer default NULL,
+  custom_f2 numeric default NULL,
+  custom_d2 timestamp without time zone,
+  custom_t3 character varying(50)  default  NULL::character varying,
+  custom_n3 integer default NULL,
+  custom_f3 numeric default NULL,
+  custom_d3 timestamp without time zone,
+  custom_t4 character varying(50)  default  NULL::character varying,
+  custom_n4 integer default NULL,
+  custom_f4 numeric default NULL,
+  custom_d4 timestamp without time zone,
+  custom_t5 character varying(255)  default  NULL::character varying,
+  custom_n5 integer default NULL,
+  custom_f5 numeric default NULL,
+  custom_d5 timestamp without time zone,
+  custom_t6 character varying(255)  default  NULL::character varying,
+  custom_t7 character varying(255)  default  NULL::character varying,
+  custom_t8 character varying(255)  default  NULL::character varying,
+  custom_t9 character varying(255)  default  NULL::character varying,
+  custom_t10 character varying(255)  default  NULL::character varying,
+  custom_t11 character varying(255)  default  NULL::character varying,
+   CONSTRAINT ar_boxes_pkey PRIMARY KEY (arbox_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_containers (
+  arcontainer_id integer NOT NULL,
+  arcontainer_desc character varying(255)  default NULL,
+  status character varying(3)  default NULL,
+  ctype_id character varying(32)  default NULL,
+  position_id bigint default NULL,
+  creation_date timestamp without time zone,
+  entity_id character varying(32)  NOT NULL,
+  retention_time timestamp without time zone,
+  custom_t1 character varying(50)  default NULL,
+  custom_n1 integer default NULL,
+  custom_f1 numeric default NULL,
+  custom_d1 timestamp without time zone,
+  custom_t2 character varying(3)  default NULL,
+  custom_n2 integer default NULL,
+  custom_f2 numeric default NULL,
+  custom_d2 timestamp without time zone,
+ CONSTRAINT ar_containers_pkey PRIMARY KEY (arcontainer_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_container_types (
+  ctype_id character varying(32)   NOT NULL,
+  ctype_desc character varying(255)   NOT NULL,
+  size_x float NOT NULL default '0',
+  size_y float NOT NULL default '0',
+  size_z float NOT NULL default '0',
+  CONSTRAINT ar_container_types_pkey PRIMARY KEY (ctype_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_deposits (
+  deposit_id bigint NOT NULL,
+  deposit_label character varying(255)  NOT NULL,
+  deposit_desc text  NOT NULL,
+  flg_closed smallint NOT NULL,
+  closing_date timestamp without time zone NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  user_id character varying(32)  NOT NULL,
+  CONSTRAINT ar_deposits_pkey PRIMARY KEY (deposit_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_header (
+  header_id bigserial NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  ctype_id character varying(32)   NOT NULL default '0',
+  year_1 integer NOT NULL default '0',
+  year_2 integer NOT NULL default '0',
+  site_id character varying(32)   NOT NULL default '0',
+  destruction_date timestamp without time zone,
+  allow_transmission_date timestamp without time zone,
+  weight integer default NULL,
+  reservation_id bigint default NULL,
+  deposit_id bigint default NULL,
+  header_desc text  ,
+  entity_id character varying(32)   default NULL,
+  arnature_id character varying(32)   default NULL,
+  arbox_id integer default NULL,
+  arcontainer_id integer default NULL,
+  CONSTRAINT ar_header_pkey PRIMARY KEY (header_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_natures (
+  arnature_id character varying(32)  NOT NULL,
+  arnature_desc character varying(255)  default NULL,
+  arnature_retention integer NOT NULL,
+  entity_id character varying(32)  default NULL,
+  enabled character varying(1)  default NULL,
+ CONSTRAINT ar_natures_pkey PRIMARY KEY (arnature_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE position_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 200
+  CACHE 1;
+
+CREATE TABLE  ar_positions (
+  position_id bigint NOT NULL DEFAULT nextval('position_id_seq'::regclass),
+  site_id character varying(32)  NOT NULL,
+  pos_row character varying(32)  NOT NULL,
+  pos_col integer NOT NULL,
+  pos_level integer NOT NULL,
+  pos_max_uc integer NOT NULL,
+  pos_available_uc integer NOT NULL,
+ CONSTRAINT ar_positions_pkey PRIMARY KEY (position_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE  ar_sites (
+  site_id character varying(32)  NOT NULL default '0',
+  site_desc character varying(255)  NOT NULL,
+  entity_id character varying(32)  default NULL,
+ CONSTRAINT ar_sites_pkey PRIMARY KEY (site_id)
+)
+WITH (OIDS=FALSE);
+
+ CREATE  TABLE  res_apa (
+ res_id serial  NOT  NULL ,
+ title character varying( 255  )    default NULL ,
+ subject text ,
+ description text ,
+ publisher character varying( 255  )    default NULL ,
+ contributor character varying( 255  )    default NULL ,
+ type_id integer  default  NULL ,
+ format character varying( 50  )   default NULL ,
+ typist character varying( 50  )   default NULL ,
+ creation_date timestamp without time zone NOT  NULL ,
+ author character varying( 255  )    default NULL ,
+ author_name text ,
+ identifier character varying( 255  )    default NULL ,
+ source character varying( 255  )    default NULL ,
+ doc_language character varying( 50  )    default NULL ,
+ relation integer  default NULL ,
+ coverage character varying( 255  )    default NULL ,
+ doc_date timestamp without time zone  default NULL ,
+ docserver_id character varying( 32  )   default NULL ,
+ folders_system_id integer  default NULL ,
+ arbox_id character varying( 32  )    default NULL ,
+ path character varying( 255  )    default NULL ,
+ filename character varying( 255  )    default NULL ,
+ offset_doc character varying( 255  )    default NULL ,
+ logical_adr character varying( 255  )    default NULL ,
+ fingerprint character varying( 255  )    default NULL ,
+ filesize integer  default NULL ,
+ is_paper char( 1  )    default NULL ,
+ page_count integer  default NULL ,
+ scan_date timestamp without time zone  default NULL ,
+ scan_user character varying( 50  )    default NULL ,
+ scan_location character varying( 255  )    default NULL ,
+ scan_wkstation character varying( 255  )    default NULL ,
+ scan_batch character varying( 50  )    default NULL ,
+ burn_batch character varying( 50  )    default NULL ,
+ scan_postmark character varying( 50  )    default NULL ,
+ envelop_id integer  default NULL ,
+ status character varying( 3  )    default NULL ,
+ destination character varying( 50  )    default NULL ,
+ approver character varying( 50  )    default NULL ,
+ validation_date timestamp without time zone  default NULL ,
+ work_batch integer  default NULL ,
+ origin character varying( 50  )    default NULL ,
+ is_ingoing char( 1  )    default NULL ,
+ priority smallint default NULL ,
+ arbatch_id character varying( 32  )    default NULL ,
+ fulltext_result character varying(10)  DEFAULT NULL,
+ ocr_result character varying(10)  DEFAULT NULL,
+ converter_result  character varying(10)  DEFAULT NULL,
+ custom_t1  text default NULL,
+ custom_n1 integer  default NULL ,
+ custom_f1 numeric  default NULL ,
+ custom_d1 timestamp without time zone  default NULL ,
+ custom_t2 character varying( 255  )    default NULL ,
+ custom_n2 integer  default NULL ,
+ custom_f2 numeric  default NULL ,
+ custom_d2 timestamp without time zone  default NULL ,
+ custom_t3 character varying( 255  )    default NULL ,
+ custom_n3 integer  default NULL ,
+ custom_f3 numeric  default NULL ,
+ custom_d3 timestamp without time zone  default NULL ,
+ custom_t4 character varying( 255  )    default NULL ,
+ custom_n4 integer  default NULL ,
+ custom_f4 numeric  default NULL ,
+ custom_d4 timestamp without time zone  default NULL ,
+ custom_t5 character varying( 255  )    default NULL ,
+ custom_n5 integer  default NULL ,
+ custom_f5 numeric  default NULL ,
+ custom_d5 timestamp without time zone  default NULL ,
+ custom_t6 character varying( 255  )    default NULL ,
+ custom_d6 timestamp without time zone  default NULL ,
+ custom_t7 character varying( 255  )    default NULL ,
+ custom_d7 timestamp without time zone  default NULL ,
+ custom_t8 character varying( 255  )    default NULL ,
+ custom_d8 timestamp without time zone  default NULL ,
+ custom_t9 character varying( 255  )    default NULL ,
+ custom_d9 timestamp without time zone  default NULL ,
+ custom_t10 character varying( 255  )    default NULL ,
+ custom_d10 timestamp without time zone  default NULL ,
+ custom_t11 character varying( 255  )    default NULL ,
+ custom_t12 character varying( 255  )    default NULL ,
+ custom_t13 character varying( 255  )    default NULL ,
+ custom_t14 character varying( 255  )    default NULL ,
+ custom_t15 character varying( 255  )    default NULL ,
+ tablename character varying( 32  )   default  'res_apa',
+ initiator character varying( 50  )    default NULL ,
+ dest_user character varying( 50  )    default NULL ,
+ video_batch integer  default NULL ,
+ video_time timestamp NULL  default NULL ,
+ video_user character varying( 50  )    default NULL ,
+ video_date timestamp without time zone,
+ CONSTRAINT res_apa_pkey PRIMARY KEY (res_id)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/alert_diffusion/sql/structure/alert_diffusion.postgresql.sql
+
+
+CREATE SEQUENCE alerts_alert_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 1
+  CACHE 1;
+
+CREATE SEQUENCE alerts_insts_alert_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 1
+  CACHE 1;
+
+CREATE SEQUENCE alerts_users_alert_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 1
+  CACHE 1;
+
+CREATE TABLE alerts
+(
+  alert_id integer NOT NULL DEFAULT nextval('alerts_alert_id_seq'::regclass),
+  alert_label character varying(255) NOT NULL,
+  alert_type character varying(255) NOT NULL,
+  coll_id character varying(255),
+  alert_table character varying(255),
+  identifier character varying(255),
+  model_id character varying(255),
+  use_listinstance character(1) DEFAULT 'n'::bpchar,
+  use_alerts_users character(1) DEFAULT 'n'::bpchar,
+  alert_unit character varying(15),
+  alert_frequency integer,
+  alert_parameter character varying(255),
+  alert_begin_date timestamp without time zone,
+  alert_end_date timestamp without time zone,
+  alert_creation_date timestamp with time zone NOT NULL,
+  alert_status character varying(5) NOT NULL,
+  alert_text text,
+  alert_sql_clause character varying(1024),
+  preprocess_script character varying(1024),
+  alert_creator character varying(255) NOT NULL,
+  postprocess_script character varying(1024),
+  CONSTRAINT alerts_pkey PRIMARY KEY (alert_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE alert_users
+(
+  alert_id integer NOT NULL DEFAULT nextval('alerts_users_alert_id_seq'::regclass),
+  user_id character varying(255) NOT NULL,
+  CONSTRAINT alerts_users_pkey PRIMARY KEY (alert_id, user_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE alert_insts
+(
+  alert_id bigint NOT NULL DEFAULT nextval('alerts_insts_alert_id_seq'::regclass),
+  "sequence" integer NOT NULL,
+  due_date timestamp without time zone NOT NULL,
+  status character varying(5) NOT NULL,
+  CONSTRAINT alerts_insts_pkey PRIMARY KEY (alert_id, sequence)
+)
+WITH (OIDS=FALSE);
+
+
+-- from 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,
+  publisher character varying(255) DEFAULT NULL::character varying,
+  contributor character varying(255) DEFAULT NULL::character varying,
+  type_id bigint ,
+  format character varying(50) NOT NULL,
+  typist character varying(50) NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  fulltext_result character varying(10) DEFAULT NULL::character varying,
+  ocr_result character varying(10) DEFAULT NULL::character varying,
+  author character varying(255) DEFAULT NULL::character varying,
+  author_name text,
+  identifier character varying(255) DEFAULT NULL::character varying,
+  source character varying(255) DEFAULT NULL::character varying,
+  doc_language character varying(50) DEFAULT NULL::character varying,
+  relation bigint,
+  coverage character varying(255) DEFAULT NULL::character varying,
+  doc_date timestamp without time zone,
+  docserver_id character varying(32) NOT NULL,
+  folders_system_id bigint,
+  arbox_id character varying(32) DEFAULT NULL::character varying,
+  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,
+  logical_adr character varying(255) DEFAULT NULL::character varying,
+  fingerprint character varying(255) DEFAULT NULL::character varying,
+  filesize bigint,
+  is_paper character(1) DEFAULT NULL::bpchar,
+  page_count integer,
+  scan_date timestamp without time zone,
+  scan_user character varying(50) DEFAULT NULL::character varying,
+  scan_location character varying(255) DEFAULT NULL::character varying,
+  scan_wkstation character varying(255) DEFAULT NULL::character varying,
+  scan_batch character varying(50) DEFAULT NULL::character varying,
+  burn_batch character varying(50) DEFAULT NULL::character varying,
+  scan_postmark character varying(50) DEFAULT NULL::character varying,
+  envelop_id bigint,
+  status character varying(10) DEFAULT NULL::character varying,
+  destination character varying(50) DEFAULT NULL::character varying,
+  approver character varying(50) DEFAULT NULL::character varying,
+  validation_date timestamp without time zone,
+  work_batch bigint,
+  origin character varying(50) DEFAULT NULL::character varying,
+  is_ingoing character(1) DEFAULT NULL::bpchar,
+  priority smallint,
+  initiator character varying(50) DEFAULT NULL::character varying,
+  dest_user character varying(50) DEFAULT NULL::character varying,
+  coll_id character varying(32) NOT NULL,
+  res_id_master bigint,
+  CONSTRAINT res_attachments_pkey PRIMARY KEY (res_id)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/autofoldering/sql/structure/autofoldering.postgresql.sql
+
+
+CREATE TABLE af_security
+(
+  af_security_id bigint NOT NULL,
+  af_security_label character varying(255) NOT NULL,
+  group_id character varying(50) NOT NULL,
+  tree_id character(50) NOT NULL,
+  where_clause text NOT NULL,
+  start_date timestamp without time zone,
+  stop_date timestamp without time zone,
+  CONSTRAINT af_security_pkey PRIMARY KEY (af_security_id)
+)
+WITH (OIDS=FALSE);
+
+-- Filled during autofoldering load
+CREATE TABLE af_view_year_target
+(
+  level1 character varying(255) NOT NULL , -- Pays / Country : custom_t3
+  level2 character(4) ,          -- Année / Year : date_part( 'year', doc_date)
+  level3 character varying(255) ,          -- Client / Customer : custom_t4
+  level4 integer ,                         -- Type de document : type_id
+  CONSTRAINT af_view_year_target_pkey PRIMARY KEY (level1, level2, level3, level4)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE af_view_customer_target
+(
+  level1 character varying(255) NOT NULL , -- 1ère lettre client / Customer 1st letter : substring(custom_t4, 1, 1)
+  level2 character varying(255) ,          -- Client / Customer : custom_t4
+  level3 character(4) ,                    -- Année / Year : date_part( 'year', doc_date)
+  CONSTRAINT af_view_customer_target_pkey PRIMARY KEY (level1, level2, level3)
+)
+WITH (OIDS=FALSE);
+
+-- from 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
+(
+  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_generic character varying(6) NOT NULL DEFAULT 'N'::character varying,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  CONSTRAINT baskets_pkey PRIMARY KEY (coll_id, basket_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE groupbasket
+(
+  group_id character varying(32) NOT NULL,
+  basket_id character varying(32) NOT NULL,
+  "sequence" integer NOT NULL DEFAULT 0,
+  redirect_basketlist character varying(2048) DEFAULT NULL::character varying,
+  redirect_grouplist character varying(2048) DEFAULT NULL::character varying,
+  result_page character varying(255) DEFAULT 'show_list1.php'::character varying,
+  can_redirect character(1) NOT NULL DEFAULT 'N'::bpchar,
+  can_delete character(1) NOT NULL DEFAULT 'N'::bpchar,
+  can_insert character(1) NOT NULL DEFAULT 'N'::bpchar,
+  CONSTRAINT groupbasket_pkey PRIMARY KEY (group_id, basket_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE user_abs_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 1
+  CACHE 1;
+
+CREATE TABLE user_abs
+(
+  system_id bigint NOT NULL DEFAULT nextval('user_abs_seq'::regclass),
+  user_abs character varying(32) NOT NULL,
+  new_user character varying(32) NOT NULL,
+  basket_id character varying(255) NOT NULL,
+  basket_owner character varying(255),
+  is_virtual character(1) NOT NULL DEFAULT 'N'::bpchar,
+  CONSTRAINT user_abs_pkey PRIMARY KEY (system_id)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/cases/sql/structure/cases.postgresql.sql
+
+CREATE SEQUENCE case_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 1
+  CACHE 1;
+
+CREATE TABLE cases
+(
+  case_id integer NOT NULL DEFAULT nextval('case_id_seq'::regclass),
+  case_label character varying(255) NOT NULL DEFAULT ''::bpchar,
+  case_description character varying(255),
+  case_type character varying(32),
+  case_closing_date timestamp without time zone,
+  case_last_update_date timestamp without time zone NOT NULL,
+  case_creation_date timestamp without time zone NOT NULL,
+  case_typist character varying(32) NOT NULL DEFAULT ''::bpchar,
+  case_parent integer,
+  case_custom_t1 character varying(255),
+  case_custom_t2 character varying(255),
+  case_custom_t3 character varying(255),
+  case_custom_t4 character varying(255),
+  CONSTRAINT cases_pkey PRIMARY KEY (case_id)
+);
+
+CREATE TABLE cases_res
+(
+  case_id integer NOT NULL,
+  res_id integer NOT NULL,
+  CONSTRAINT cases_res_pkey PRIMARY KEY (case_id,res_id)
+);
+
+
+
+-- from modules/entities/sql/structure/entities.postgresql.sql
+
+
+CREATE TABLE entities
+(
+  entity_id character varying(32) NOT NULL,
+  entity_label character varying(255),
+  short_label character varying(50),
+  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),
+  CONSTRAINT entities_pkey PRIMARY KEY (entity_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE listinstance
+(
+  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(50) NOT NULL,
+  item_type character varying(255) NOT NULL,
+  item_mode character varying(50) NOT NULL,
+  added_by_user character varying(50) NOT NULL,
+  added_by_entity character varying(50) NOT NULL,
+  viewed bigint
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE listmodels
+(
+  coll_id character varying(50) NOT NULL,
+  object_id character varying(50) NOT NULL,
+  object_type character varying(255) NOT NULL,
+  "sequence" bigint NOT NULL,
+  item_id character varying(50) NOT NULL,
+  item_type character varying(255) NOT NULL,
+  item_mode character varying(50) NOT NULL,
+  listmodel_type character varying(50) DEFAULT 'DOC'::character varying
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE users_entities
+(
+  user_id character varying(32) 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 100
+  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);
+
+
+-- from modules/folder/sql/structure/folder.postgresql.sql
+
+CREATE SEQUENCE folders_system_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 20
+  CACHE 1;
+
+CREATE TABLE folders
+(
+  folders_system_id bigint NOT NULL DEFAULT nextval('folders_system_id_seq'::regclass),
+  folder_id character varying(255) NOT NULL,
+  foldertype_id integer,
+  parent_id bigint DEFAULT (0)::bigint,
+  folder_name character varying(255) DEFAULT NULL::character varying,
+  subject character varying(255) DEFAULT NULL::character varying,
+  description character varying(255) DEFAULT NULL::character varying,
+  author character varying(255) DEFAULT NULL::character varying,
+  typist character varying(255) DEFAULT NULL::character varying,
+  status character varying(50) NOT NULL DEFAULT 'NEW'::character varying,
+  folder_level smallint DEFAULT (1)::smallint,
+  creation_date timestamp without time zone NOT NULL,
+  folder_out_id bigint,
+  custom_t1 character varying(255) DEFAULT NULL::character varying,
+  custom_n1 bigint,
+  custom_f1 numeric,
+  custom_d1 timestamp without time zone,
+  custom_t2 character varying(255) DEFAULT NULL::character varying,
+  custom_n2 bigint,
+  custom_f2 numeric,
+  custom_d2 timestamp without time zone,
+  custom_t3 character varying(255) DEFAULT NULL::character varying,
+  custom_n3 bigint,
+  custom_f3 numeric,
+  custom_d3 timestamp without time zone,
+  custom_t4 character varying(255) DEFAULT NULL::character varying,
+  custom_n4 bigint,
+  custom_f4 numeric,
+  custom_d4 timestamp without time zone,
+  custom_t5 character varying(255) DEFAULT NULL::character varying,
+  custom_n5 bigint,
+  custom_f5 numeric,
+  custom_d5 timestamp without time zone,
+  custom_t6 character varying(255) DEFAULT NULL::character varying,
+  custom_d6 timestamp without time zone,
+  custom_t7 character varying(255) DEFAULT NULL::character varying,
+  custom_d7 timestamp without time zone,
+  custom_t8 character varying(255) DEFAULT NULL::character varying,
+  custom_d8 timestamp without time zone,
+  custom_t9 character varying(255) DEFAULT NULL::character varying,
+  custom_d9 timestamp without time zone,
+  custom_t10 character varying(255) DEFAULT NULL::character varying,
+  custom_d10 timestamp without time zone,
+  custom_t11 character varying(255) DEFAULT NULL::character varying,
+  custom_d11 timestamp without time zone,
+  custom_t12 character varying(255) DEFAULT NULL::character varying,
+  custom_d12 timestamp without time zone,
+  custom_t13 character varying(255) DEFAULT NULL::character varying,
+  custom_d13 timestamp without time zone,
+  custom_t14 character varying(255) DEFAULT NULL::character varying,
+  custom_d14 timestamp without time zone,
+  custom_t15 character varying(255) DEFAULT NULL::character varying,
+  is_complete character(1) DEFAULT 'N'::bpchar,
+  is_folder_out character(1) DEFAULT 'N'::bpchar,
+  last_modified_date timestamp without time zone,
+  CONSTRAINT folders_pkey PRIMARY KEY (folders_system_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE folders_out (
+  folder_out_id serial NOT NULL,
+  folder_system_id integer NOT NULL,
+  last_name character varying(255) NOT NULL,
+  first_name character varying(255)  NOT NULL,
+  last_name_folder_out character varying(255)  NOT NULL,
+  first_name_folder_out character varying(255)  NOT NULL,
+  put_out_pattern character varying(255)  NOT NULL,
+  put_out_date timestamp without time zone NOT NULL,
+  return_date timestamp without time zone NOT NULL,
+  return_flag character(1) NOT NULL default 'N'::bpchar,
+  CONSTRAINT folders_out_pkey PRIMARY KEY  (folder_out_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE foldertype_id_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 5
+  CACHE 1;
+
+CREATE TABLE foldertypes
+(
+  foldertype_id  bigint NOT NULL DEFAULT nextval('foldertype_id_id_seq'::regclass),
+  foldertype_label character varying(255) NOT NULL,
+  maarch_comment text,
+  retention_time character varying(50),
+  custom_d1 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_f1 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_n1 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t1 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d2 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_f2 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_n2 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t2 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d3 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_f3 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_n3 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t3 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d4 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_f4 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_n4 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t4 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d5 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_f5 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_n5 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t5 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d6 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t6 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d7 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t7 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d8 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t8 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d9 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t9 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_d10 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t10 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t11 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t12 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t13 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t14 character varying(10) DEFAULT '0000000000'::character varying,
+  custom_t15 character varying(10) DEFAULT '0000000000'::character varying,
+  coll_id character varying(32),
+  CONSTRAINT foldertypes_pkey PRIMARY KEY (foldertype_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE foldertypes_doctypes
+(
+  foldertype_id integer NOT NULL,
+  doctype_id integer NOT NULL,
+  CONSTRAINT foldertypes_doctypes_pkey PRIMARY KEY (foldertype_id, doctype_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE foldertypes_doctypes_level1
+(
+  foldertype_id integer NOT NULL,
+  doctypes_first_level_id integer NOT NULL,
+  CONSTRAINT foldertypes_doctypes_level1_pkey PRIMARY KEY (foldertype_id, doctypes_first_level_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE foldertypes_indexes
+(
+  foldertype_id bigint NOT NULL,
+  field_name character varying(255) NOT NULL,
+  mandatory character(1) NOT NULL DEFAULT 'N'::bpchar,
+  CONSTRAINT foldertypes_indexes_pkey PRIMARY KEY (foldertype_id, field_name)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/full_text/sql/structure/full_text.postgresql.sql
+
+CREATE TABLE fulltext
+(
+  coll_id character varying(32) NOT NULL,
+  res_id bigint NOT NULL,
+  text_type character varying(10) NOT NULL DEFAULT 'CON'::character varying,
+  fulltext_content text,
+  CONSTRAINT coll_id_res_id PRIMARY KEY (coll_id, res_id)
+)
+WITH (
+  OIDS=FALSE
+);
+
+
+-- from modules/notes/sql/structure/notes.postgresql.sql
+
+CREATE SEQUENCE notes_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 20
+  CACHE 1;
+
+
+CREATE TABLE notes
+(
+  id bigint NOT NULL DEFAULT nextval('notes_seq'::regclass),
+  identifier bigint NOT NULL,
+  tablename character varying(50),
+  user_id character varying(50) NOT NULL,
+  date_note date NOT NULL,
+  note_text text NOT NULL,
+  coll_id character varying(50),
+  CONSTRAINT notes_pkey PRIMARY KEY (id)
+)
+WITH (OIDS=FALSE);
+
+
+-- from modules/physical_archive/sql/structure/physical_archive.postgresql.sql
+
+create or replace function update_the_db() returns void as
+$$
+begin
+
+    if not exists(select * from information_schema.tables where table_name = 'ar_boxes') then
+
+      CREATE TABLE ar_boxes (
+	  arbox_id serial NOT NULL,
+	  title character varying(255)  DEFAULT NULL,
+	  subject character varying(255)  DEFAULT NULL,
+	  description text ,
+	  entity_id character varying(32)  DEFAULT NULL,
+	  arcontainer_id integer NOT NULL,
+	  status character varying(3)  DEFAULT NULL,
+	  creation_date  timestamp without time zone DEFAULT NULL,
+	  retention_time character varying(50)  DEFAULT NULL,
+	  custom_t1 character varying(3)  DEFAULT NULL,
+	  custom_n1 integer,
+	  custom_f1 numeric,
+	  custom_d1 timestamp without time zone DEFAULT NULL,
+	  custom_t2 character varying(3)  DEFAULT NULL,
+	  custom_n2 integer,
+	  custom_f2 numeric,
+	  custom_d2 timestamp without time zone DEFAULT NULL,
+	  custom_t3 character varying(50)  DEFAULT NULL,
+	  custom_n3 integer,
+	  custom_f3 numeric,
+	  custom_d3 timestamp without time zone DEFAULT NULL,
+	  custom_t4 character varying(50)  DEFAULT NULL,
+	  custom_n4 integer,
+	  custom_f4 numeric,
+	  custom_d4 timestamp without time zone DEFAULT NULL,
+	  custom_t5 character varying(255)  DEFAULT NULL,
+	  custom_n5 integer,
+	  custom_f5 numeric,
+	  custom_d5 timestamp without time zone DEFAULT NULL,
+	  custom_t6 character varying(255)  DEFAULT NULL,
+	  custom_t7 character varying(255)  DEFAULT NULL,
+	  custom_t8 character varying(255)  DEFAULT NULL,
+	  custom_t9 character varying(255)  DEFAULT NULL,
+	  custom_t10 character varying(255)  DEFAULT NULL,
+	  custom_t11 character varying(255)  DEFAULT NULL,
+	  CONSTRAINT ar_boxes_pkey PRIMARY KEY  (arbox_id)
+	) ;
+
+    end if;
+
+end;
+$$
+language 'plpgsql';
+
+select update_the_db();
+drop function update_the_db();
+
+
+create or replace function update_the_db() returns void as
+$$
+begin
+
+    if not exists(select * from information_schema.tables where table_name = 'ar_containers') then
+
+        CREATE TABLE ar_containers
+	(
+	  arcontainer_id serial NOT NULL ,
+	  arcontainer_desc character varying(255)  DEFAULT NULL,
+	  status character varying(3)  DEFAULT NULL,
+	  ctype_id character varying(32)  DEFAULT NULL,
+	  position_id bigint  DEFAULT NULL,
+	  creation_date timestamp without time zone DEFAULT NULL,
+	  entity_id character varying(32)  DEFAULT NULL,
+	  retention_time character varying(50)  DEFAULT NULL,
+	  custom_t1 character varying(50)  DEFAULT NULL,
+	  custom_n1 integer,
+	  custom_f1 numeric,
+	  custom_d1 timestamp without time zone DEFAULT NULL,
+	  custom_t2 character varying(3)  DEFAULT NULL,
+	  custom_n2 integer,
+	  custom_f2 numeric,
+	  custom_d2 timestamp without time zone DEFAULT NULL,
+	  CONSTRAINT ar_containers_pkey PRIMARY KEY  (arcontainer_id)
+	) ;
+
+    end if;
+
+end;
+$$
+language 'plpgsql';
+
+select update_the_db();
+drop function update_the_db();
+
+CREATE TABLE ar_batch
+(
+  arbatch_id serial NOT NULL ,
+  title character varying(255)  DEFAULT NULL,
+  subject character varying(255)  DEFAULT NULL,
+  description text,
+  arbox_id bigint,
+  status character varying(3)  DEFAULT NULL,
+  creation_date timestamp without time zone DEFAULT NULL,
+  retention_time character varying(50)  DEFAULT NULL,
+  custom_t1 character varying(3)  DEFAULT NULL,
+  custom_n1 integer,
+  custom_f1 numeric,
+  custom_d1 timestamp without time zone DEFAULT NULL,
+  custom_t2 character varying(3)  DEFAULT NULL,
+  custom_n2 integer,
+  custom_f2 numeric,
+  custom_d2 timestamp without time zone DEFAULT NULL,
+  custom_t3 character varying(50)  DEFAULT NULL,
+  custom_n3 integer,
+  custom_f3 numeric,
+  custom_d3 timestamp without time zone DEFAULT NULL,
+  custom_t4 character varying(50)  DEFAULT NULL,
+  custom_n4 integer,
+  custom_f4 numeric,
+  custom_d4 timestamp without time zone DEFAULT NULL,
+  custom_t5 character varying(255)  DEFAULT NULL,
+  custom_n5 integer,
+  custom_f5 numeric,
+  custom_d5 timestamp without time zone DEFAULT NULL,
+  custom_t6 character varying(255)  DEFAULT NULL,
+  custom_t7 character varying(255)  DEFAULT NULL,
+  custom_t8 character varying(255)  DEFAULT NULL,
+  custom_t9 character varying(255)  DEFAULT NULL,
+  custom_t10 character varying(255)  DEFAULT NULL,
+  custom_t11 character varying(255)  DEFAULT NULL,
+  CONSTRAINT ar_batch_pkey PRIMARY KEY  (arbatch_id)
+) ;
+
+
+-- from modules/templates/sql/structure/templates.postgresql.sql
+
+
+CREATE SEQUENCE templates_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 20
+  CACHE 1;
+
+CREATE SEQUENCE templates_association_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 20
+  CACHE 1;
+
+CREATE TABLE templates
+(
+  id bigint NOT NULL DEFAULT nextval('templates_seq'::regclass),
+  label character varying(50) DEFAULT NULL::character varying,
+  creation_date timestamp without time zone,
+  "template_comment" character varying(255) DEFAULT NULL::character varying,
+  "content" text,
+  CONSTRAINT templates_pkey PRIMARY KEY (id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE templates_association
+(
+  template_id bigint NOT NULL,
+  what character varying(255) NOT NULL,
+  value_field character varying(255) NOT NULL,
+  system_id bigint NOT NULL DEFAULT nextval('templates_association_seq'::regclass),
+  maarch_module character varying(255) NOT NULL DEFAULT 'apps'::character varying,
+  CONSTRAINT templates_association_pkey PRIMARY KEY (system_id)
+)
+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);
+
+
+-- from 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);
+
+
+-- from modules/life_cycle/sql/structure/life_cycle.postgresql.sql
+
+CREATE TABLE lc_policies
+(
+   policy_id character varying(32) NOT NULL, 
+   policy_name character varying(255) NOT NULL,
+   policy_desc character varying(255) NOT NULL,
+   CONSTRAINT lc_policies_pkey PRIMARY KEY (policy_id)
+) 
+WITH (OIDS = FALSE);
+
+
+CREATE TABLE lc_cycles
+(
+   policy_id character varying(32) NOT NULL,
+   cycle_id character varying(32) NOT NULL, 
+   cycle_desc character varying(255) NOT NULL,
+   sequence_number integer NOT NULL,
+   where_clause text, 
+   break_key character varying(255) DEFAULT NULL,
+   validation_mode character varying(32) NOT NULL, 
+   CONSTRAINT lc_cycle_pkey PRIMARY KEY (policy_id, cycle_id)
+) 
+WITH (OIDS = FALSE);
+
+CREATE TABLE lc_cycle_steps
+(
+   policy_id character varying(32) NOT NULL,
+   cycle_id character varying(32) NOT NULL, 
+   cycle_step_id character varying(32) NOT NULL, 
+   cycle_step_desc character varying(255) NOT NULL,
+   docserver_type_id character varying(32) NOT NULL,
+   is_allow_failure boolean NOT NULL DEFAULT false,
+   step_operation character varying(32) NOT NULL,
+   sequence_number integer NOT NULL,
+   is_must_complete boolean NOT NULL DEFAULT false,
+   preprocess_script character varying(255) DEFAULT NULL, 
+   postprocess_script character varying(255) DEFAULT NULL,
+   CONSTRAINT lc_cycle_steps_pkey PRIMARY KEY (policy_id, cycle_id, cycle_step_id, docserver_type_id)
+) 
+WITH (OIDS = FALSE);
+
+CREATE TABLE lc_stack
+(
+   policy_id character varying(32) NOT NULL,
+   cycle_id character varying(32) NOT NULL, 
+   cycle_step_id character varying(32) NOT NULL, 
+   coll_id character varying(32) NOT NULL,
+   res_id bigint NOT NULL, 
+   cnt_retry integer DEFAULT NULL, 
+   status character(1) NOT NULL,
+   CONSTRAINT lc_stack_pkey PRIMARY KEY (policy_id, cycle_id, cycle_step_id, res_id)
+) 
+WITH (OIDS = FALSE);
+
+
+
+-- from apps/maarch_entreprise/sql/structure/apps.postgresql.sql
+
+CREATE SEQUENCE contact_id_seq
+  INCREMENT 1
+  MINVALUE 14
+  MAXVALUE 9223372036854775807
+  START 100
+  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 )  ,
+other_data text  ,
+is_corporate_person character( 1 ) NOT NULL DEFAULT 'Y'::bpchar,
+user_id character varying( 32 )  ,
+title character varying( 255 ) ,
+enabled character( 1 ) NOT NULL DEFAULT 'Y'::bpchar,
+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;
+
+
+CREATE TABLE saved_queries (
+  query_id bigint NOT NULL DEFAULT nextval('query_id_seq'::regclass),
+  user_id character varying(32)  default NULL,
+  query_name character varying(255) NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  created_by character varying(32)  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);
+
+CREATE SEQUENCE doctypes_first_level_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 10
+  CACHE 1;
+
+CREATE TABLE doctypes_first_level
+(
+  doctypes_first_level_id integer NOT NULL DEFAULT nextval('doctypes_first_level_id_seq'::regclass),
+  doctypes_first_level_label character varying(255) NOT NULL,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  CONSTRAINT doctypes_first_level_pkey PRIMARY KEY (doctypes_first_level_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE doctypes_second_level_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 50
+  CACHE 1;
+
+CREATE TABLE doctypes_second_level
+(
+  doctypes_second_level_id integer NOT NULL DEFAULT nextval('doctypes_second_level_id_seq'::regclass),
+  doctypes_second_level_label character varying(255) NOT NULL,
+  doctypes_first_level_id integer NOT NULL,
+  enabled character(1) NOT NULL DEFAULT 'Y'::bpchar,
+  CONSTRAINT doctypes_second_level_pkey PRIMARY KEY (doctypes_second_level_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE res_id_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 100
+  CACHE 1;
+
+CREATE TABLE res_x
+(
+  res_id bigint NOT NULL DEFAULT nextval('res_id_seq'::regclass),
+  title character varying(255) DEFAULT NULL::character varying,
+  subject text,
+  description text,
+  publisher character varying(255) DEFAULT NULL::character varying,
+  contributor character varying(255) DEFAULT NULL::character varying,
+  type_id bigint NOT NULL,
+  format character varying(50) NOT NULL,
+  typist character varying(50) NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  fulltext_result character varying(10) DEFAULT NULL,
+  ocr_result character varying(10) DEFAULT NULL,
+  converter_result character varying(10) DEFAULT NULL,
+  author character varying(255) DEFAULT NULL::character varying,
+  author_name text,
+  identifier character varying(255) DEFAULT NULL::character varying,
+  source character varying(255) DEFAULT NULL::character varying,
+  doc_language character varying(50) DEFAULT NULL::character varying,
+  relation bigint,
+  coverage character varying(255) DEFAULT NULL::character varying,
+  doc_date timestamp without time zone,
+  docserver_id character varying(32) NOT NULL,
+  folders_system_id bigint,
+  arbox_id character varying(32) DEFAULT NULL::character varying,
+  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,
+  logical_adr character varying(255) DEFAULT NULL::character varying,
+  fingerprint character varying(255) DEFAULT NULL::character varying,
+  filesize bigint,
+  is_paper character(1) DEFAULT NULL::bpchar,
+  page_count integer,
+  scan_date timestamp without time zone,
+  scan_user character varying(50) DEFAULT NULL::character varying,
+  scan_location character varying(255) DEFAULT NULL::character varying,
+  scan_wkstation character varying(255) DEFAULT NULL::character varying,
+  scan_batch character varying(50) DEFAULT NULL::character varying,
+  burn_batch character varying(50) DEFAULT NULL::character varying,
+  scan_postmark character varying(50) DEFAULT NULL::character varying,
+  envelop_id bigint,
+  status character varying(10) NOT NULL,
+  destination character varying(50) DEFAULT NULL::character varying,
+  approver character varying(50) DEFAULT NULL::character varying,
+  validation_date timestamp without time zone,
+  work_batch bigint,
+  origin character varying(50) DEFAULT NULL::character varying,
+  is_ingoing character(1) DEFAULT NULL::bpchar,
+  priority smallint,
+  arbatch_id bigint DEFAULT NULL,
+  policy_id character varying(32) DEFAULT NULL::character varying,
+  cycle_id character varying(32) DEFAULT NULL::character varying,
+  is_multi_docservers character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_t1 text,
+  custom_n1 bigint,
+  custom_f1 numeric,
+  custom_d1 timestamp without time zone,
+  custom_t2 character varying(255) DEFAULT NULL::character varying,
+  custom_n2 bigint,
+  custom_f2 numeric,
+  custom_d2 timestamp without time zone,
+  custom_t3 character varying(255) DEFAULT NULL::character varying,
+  custom_n3 bigint,
+  custom_f3 numeric,
+  custom_d3 timestamp without time zone,
+  custom_t4 character varying(255) DEFAULT NULL::character varying,
+  custom_n4 bigint,
+  custom_f4 numeric,
+  custom_d4 timestamp without time zone,
+  custom_t5 character varying(255) DEFAULT NULL::character varying,
+  custom_n5 bigint,
+  custom_f5 numeric,
+  custom_d5 timestamp without time zone,
+  custom_t6 character varying(255) DEFAULT NULL::character varying,
+  custom_d6 timestamp without time zone,
+  custom_t7 character varying(255) DEFAULT NULL::character varying,
+  custom_d7 timestamp without time zone,
+  custom_t8 character varying(255) DEFAULT NULL::character varying,
+  custom_d8 timestamp without time zone,
+  custom_t9 character varying(255) DEFAULT NULL::character varying,
+  custom_d9 timestamp without time zone,
+  custom_t10 character varying(255) DEFAULT NULL::character varying,
+  custom_d10 timestamp without time zone,
+  custom_t11 character varying(255) DEFAULT NULL::character varying,
+  custom_t12 character varying(255) DEFAULT NULL::character varying,
+  custom_t13 character varying(255) DEFAULT NULL::character varying,
+  custom_t14 character varying(255) DEFAULT NULL::character varying,
+  custom_t15 character varying(255) DEFAULT NULL::character varying,
+  tablename character varying(32) DEFAULT 'res_x'::character varying,
+  initiator character varying(50) DEFAULT NULL::character varying,
+  dest_user character varying(50) DEFAULT NULL::character varying,
+  video_batch integer DEFAULT NULL,
+  video_time integer DEFAULT NULL,
+  video_user character varying(50)  DEFAULT NULL,
+  video_date timestamp without time zone,
+  CONSTRAINT res_x_pkey PRIMARY KEY  (res_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE adr_x
+(
+  res_id bigint NOT NULL,
+  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,
+  adr_priority integer NOT NULL,
+  CONSTRAINT adr_x_pkey PRIMARY KEY (res_id, docserver_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE SEQUENCE res_id_mlb_seq
+  INCREMENT 1
+  MINVALUE 1
+  MAXVALUE 9223372036854775807
+  START 100
+  CACHE 1;
+
+CREATE TABLE res_letterbox
+(
+  res_id bigint NOT NULL DEFAULT nextval('res_id_mlb_seq'::regclass),
+  title character varying(255) DEFAULT NULL::character varying,
+  subject text,
+  description text,
+  publisher character varying(255) DEFAULT NULL::character varying,
+  contributor character varying(255) DEFAULT NULL::character varying,
+  type_id bigint NOT NULL,
+  format character varying(50) NOT NULL,
+  typist character varying(50) NOT NULL,
+  creation_date timestamp without time zone NOT NULL,
+  fulltext_result character varying(10) DEFAULT NULL,
+  ocr_result character varying(10) DEFAULT NULL,
+  converter_result character varying(10) DEFAULT NULL,
+  author character varying(255) DEFAULT NULL::character varying,
+  author_name text,
+  identifier character varying(255) DEFAULT NULL::character varying,
+  source character varying(255) DEFAULT NULL::character varying,
+  doc_language character varying(50) DEFAULT NULL::character varying,
+  relation bigint,
+  coverage character varying(255) DEFAULT NULL::character varying,
+  doc_date timestamp without time zone,
+  docserver_id character varying(32) NOT NULL,
+  folders_system_id bigint,
+  arbox_id character varying(32) DEFAULT NULL::character varying,
+  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,
+  logical_adr character varying(255) DEFAULT NULL::character varying,
+  fingerprint character varying(255) DEFAULT NULL::character varying,
+  filesize bigint,
+  is_paper character(1) DEFAULT NULL::bpchar,
+  page_count integer,
+  scan_date timestamp without time zone,
+  scan_user character varying(50) DEFAULT NULL::character varying,
+  scan_location character varying(255) DEFAULT NULL::character varying,
+  scan_wkstation character varying(255) DEFAULT NULL::character varying,
+  scan_batch character varying(50) DEFAULT NULL::character varying,
+  burn_batch character varying(50) DEFAULT NULL::character varying,
+  scan_postmark character varying(50) DEFAULT NULL::character varying,
+  envelop_id bigint,
+  status character varying(10) NOT NULL,
+  destination character varying(50) DEFAULT NULL::character varying,
+  approver character varying(50) DEFAULT NULL::character varying,
+  validation_date timestamp without time zone,
+  work_batch bigint,
+  origin character varying(50) DEFAULT NULL::character varying,
+  is_ingoing character(1) DEFAULT NULL::bpchar,
+  priority smallint,
+  arbatch_id bigint DEFAULT NULL,
+  policy_id character varying(32),
+  cycle_id character varying(32),
+  is_multi_docservers character(1) NOT NULL DEFAULT 'N'::bpchar,
+  custom_t1 text,
+  custom_n1 bigint,
+  custom_f1 numeric,
+  custom_d1 timestamp without time zone,
+  custom_t2 character varying(255) DEFAULT NULL::character varying,
+  custom_n2 bigint,
+  custom_f2 numeric,
+  custom_d2 timestamp without time zone,
+  custom_t3 character varying(255) DEFAULT NULL::character varying,
+  custom_n3 bigint,
+  custom_f3 numeric,
+  custom_d3 timestamp without time zone,
+  custom_t4 character varying(255) DEFAULT NULL::character varying,
+  custom_n4 bigint,
+  custom_f4 numeric,
+  custom_d4 timestamp without time zone,
+  custom_t5 character varying(255) DEFAULT NULL::character varying,
+  custom_n5 bigint,
+  custom_f5 numeric,
+  custom_d5 timestamp without time zone,
+  custom_t6 character varying(255) DEFAULT NULL::character varying,
+  custom_d6 timestamp without time zone,
+  custom_t7 character varying(255) DEFAULT NULL::character varying,
+  custom_d7 timestamp without time zone,
+  custom_t8 character varying(255) DEFAULT NULL::character varying,
+  custom_d8 timestamp without time zone,
+  custom_t9 character varying(255) DEFAULT NULL::character varying,
+  custom_d9 timestamp without time zone,
+  custom_t10 character varying(255) DEFAULT NULL::character varying,
+  custom_d10 timestamp without time zone,
+  custom_t11 character varying(255) DEFAULT NULL::character varying,
+  custom_t12 character varying(255) DEFAULT NULL::character varying,
+  custom_t13 character varying(255) DEFAULT NULL::character varying,
+  custom_t14 character varying(255) DEFAULT NULL::character varying,
+  custom_t15 character varying(255) DEFAULT NULL::character varying,
+  tablename character varying(32) DEFAULT 'res_letterbox'::character varying,
+  initiator character varying(50) DEFAULT NULL::character varying,
+  dest_user character varying(50) DEFAULT NULL::character varying,
+  video_batch integer DEFAULT NULL,
+  video_time integer DEFAULT NULL,
+  video_user character varying(50)  DEFAULT NULL,
+  video_date timestamp without time zone,
+  CONSTRAINT res_letterbox_pkey PRIMARY KEY  (res_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE TABLE mlb_coll_ext (
+  res_id bigint NOT NULL,
+  category_id character varying(50)  NOT NULL,
+  exp_contact_id integer default NULL,
+  exp_user_id character varying(52) default NULL,
+  dest_contact_id integer default NULL,
+  dest_user_id character varying(52) default NULL,
+  nature_id character varying(50),
+  alt_identifier character varying(255)  default NULL,
+  admission_date timestamp without time zone,
+  answer_type_bitmask character varying(7)  default NULL,
+  other_answer_desc character varying(255)  DEFAULT NULL::character varying,
+  process_limit_date timestamp without time zone default NULL,
+  process_notes text,
+  closing_date timestamp without time zone default NULL,
+  alarm1_date timestamp without time zone default NULL,
+  alarm2_date timestamp without time zone default NULL,
+  flag_notif char(1)  default 'N'::character varying ,
+  flag_alarm1 char(1)  default 'N'::character varying ,
+  flag_alarm2 char(1) default 'N'::character varying
+)WITH (OIDS=FALSE);
+
+CREATE TABLE mlb_doctype_ext (
+  type_id bigint NOT NULL,
+  process_delay bigint NOT NULL DEFAULT '21',
+  delay1 bigint NOT NULL DEFAULT '14',
+  delay2 bigint NOT NULL DEFAULT '1',
+  CONSTRAINT type_id PRIMARY KEY (type_id)
+)
+WITH (OIDS=FALSE);
+
+CREATE OR REPLACE VIEW res_view AS
+ SELECT r.tablename, r.is_multi_docservers, r.res_id, r.title, r.subject, r.page_count, r.identifier, r.doc_date, r.type_id,
+ d.description AS type_label, d.doctypes_first_level_id, dfl.doctypes_first_level_label, d.doctypes_second_level_id,
+ dsl.doctypes_second_level_label, r.format, r.typist, r.creation_date, r.relation, r.docserver_id,
+ r.folders_system_id, r.path, r.filename, r.fingerprint, r.offset_doc, r.filesize, r.status,
+ r.work_batch, r.arbatch_id, r.arbox_id,  r.is_paper, r.scan_date, r.scan_user,r.scan_location,r.scan_wkstation,
+ r.scan_batch,r.doc_language,r.description,r.source,r.initiator,r.destination,r.dest_user,r.policy_id,r.cycle_id,
+ r.custom_t1 AS doc_custom_t1, r.custom_t2 AS doc_custom_t2, r.custom_t3 AS doc_custom_t3,
+ r.custom_t4 AS doc_custom_t4, r.custom_t5 AS doc_custom_t5, r.custom_t6 AS doc_custom_t6,
+ r.custom_t7 AS doc_custom_t7, r.custom_t8 AS doc_custom_t8, r.custom_t9 AS doc_custom_t9,
+ r.custom_t10 AS doc_custom_t10, r.custom_t11 AS doc_custom_t11, r.custom_t12 AS doc_custom_t12,
+ r.custom_t13 AS doc_custom_t13, r.custom_t14 AS doc_custom_t14, r.custom_t15 AS doc_custom_t15,
+ r.custom_d1 AS doc_custom_d1, r.custom_d2 AS doc_custom_d2, r.custom_d3 AS doc_custom_d3,
+ r.custom_d4 AS doc_custom_d4, r.custom_d5 AS doc_custom_d5, r.custom_d6 AS doc_custom_d6,
+ r.custom_d7 AS doc_custom_d7, r.custom_d8 AS doc_custom_d8, r.custom_d9 AS doc_custom_d9,
+ r.custom_d10 AS doc_custom_d10, r.custom_n1 AS doc_custom_n1, r.custom_n2 AS doc_custom_n2,
+ r.custom_n3 AS doc_custom_n3, r.custom_n4 AS doc_custom_n4, r.custom_n5 AS doc_custom_n5,
+ r.custom_f1 AS doc_custom_f1, r.custom_f2 AS doc_custom_f2, r.custom_f3 AS doc_custom_f3,
+ r.custom_f4 AS doc_custom_f4, r.custom_f5 AS doc_custom_f5
+   FROM  doctypes d, doctypes_first_level dfl, doctypes_second_level dsl, res_x r
+   WHERE r.type_id = d.type_id
+   AND d.doctypes_first_level_id = dfl.doctypes_first_level_id
+   AND d.doctypes_second_level_id = dsl.doctypes_second_level_id;
+
+-- View without cases :
+--CREATE OR REPLACE VIEW res_view_letterbox AS
+ --SELECT r.tablename, r.res_id, r.type_id, d.description AS type_label, d.doctypes_first_level_id, dfl.doctypes_first_level_label, d.doctypes_second_level_id, dsl.doctypes_second_level_label, r.format, r.typist, r.creation_date, r.relation, r.docserver_id, r.folders_system_id, f.folder_id, r.path, r.filename, r.fingerprint, r.filesize, r.status, r.work_batch, r.arbatch_id, r.arbox_id, r.page_count, r.is_paper, r.doc_date, r.scan_date, r.scan_user, r.scan_location, r.scan_wkstation, r.scan_batch, r.doc_language, r.description, r.source, r.author, r.custom_t1 AS doc_custom_t1, r.custom_t2 AS doc_custom_t2, r.custom_t3 AS doc_custom_t3, r.custom_t4 AS doc_custom_t4, r.custom_t5 AS doc_custom_t5, r.custom_t6 AS doc_custom_t6, r.custom_t7 AS doc_custom_t7, r.custom_t8 AS doc_custom_t8, r.custom_t9 AS doc_custom_t9, r.custom_t10 AS doc_custom_t10, r.custom_t11 AS doc_custom_t11, r.custom_t12 AS doc_custom_t12, r.custom_t13 AS doc_custom_t13, r.custom_t14 AS doc_custom_t14, r.custom_t15 AS doc_custom_t15, r.custom_d1 AS doc_custom_d1, r.custom_d2 AS doc_custom_d2, r.custom_d3 AS doc_custom_d3, r.custom_d4 AS doc_custom_d4, r.custom_d5 AS doc_custom_d5, r.custom_d6 AS doc_custom_d6, r.custom_d7 AS doc_custom_d7, r.custom_d8 AS doc_custom_d8, r.custom_d9 AS doc_custom_d9, r.custom_d10 AS doc_custom_d10, r.custom_n1 AS doc_custom_n1, r.custom_n2 AS doc_custom_n2, r.custom_n3 AS doc_custom_n3, r.custom_n4 AS doc_custom_n4, r.custom_n5 AS doc_custom_n5, r.custom_f1 AS doc_custom_f1, r.custom_f2 AS doc_custom_f2, r.custom_f3 AS doc_custom_f3, r.custom_f4 AS doc_custom_f4, r.custom_f5 AS doc_custom_f5, f.foldertype_id, ft.foldertype_label, f.custom_t1 AS fold_custom_t1, f.custom_t2 AS fold_custom_t2, f.custom_t3 AS fold_custom_t3, f.custom_t4 AS fold_custom_t4, f.custom_t5 AS fold_custom_t5, f.custom_t6 AS fold_custom_t6, f.custom_t7 AS fold_custom_t7, f.custom_t8 AS fold_custom_t8, f.custom_t9 AS fold_custom_t9, f.custom_t10 AS fold_custom_t10, f.custom_t11 AS fold_custom_t11, f.custom_t12 AS fold_custom_t12, f.custom_t13 AS fold_custom_t13, f.custom_t14 AS fold_custom_t14, f.custom_t15 AS fold_custom_t15, f.custom_d1 AS fold_custom_d1, f.custom_d2 AS fold_custom_d2, f.custom_d3 AS fold_custom_d3, f.custom_d4 AS fold_custom_d4, f.custom_d5 AS fold_custom_d5, f.custom_d6 AS fold_custom_d6, f.custom_d7 AS fold_custom_d7, f.custom_d8 AS fold_custom_d8, f.custom_d9 AS fold_custom_d9, f.custom_d10 AS fold_custom_d10, f.custom_n1 AS fold_custom_n1, f.custom_n2 AS fold_custom_n2, f.custom_n3 AS fold_custom_n3, f.custom_n4 AS fold_custom_n4, f.custom_n5 AS fold_custom_n5, f.custom_f1 AS fold_custom_f1, f.custom_f2 AS fold_custom_f2, f.custom_f3 AS fold_custom_f3, f.custom_f4 AS fold_custom_f4, f.custom_f5 AS fold_custom_f5, f.is_complete AS fold_complete, f.status AS fold_status, f.subject AS fold_subject, f.parent_id AS fold_parent_id, f.folder_level, f.folder_name, f.creation_date AS fold_creation_date, r.initiator, r.destination, r.dest_user, mlb.category_id, mlb.exp_contact_id, mlb.exp_user_id, mlb.dest_user_id, mlb.dest_contact_id, mlb.nature_id, mlb.alt_identifier, mlb.admission_date, mlb.answer_type_bitmask, mlb.other_answer_desc, mlb.process_limit_date, mlb.closing_date, mlb.alarm1_date, mlb.alarm2_date, mlb.flag_notif, mlb.flag_alarm1, mlb.flag_alarm2, r.video_user, r.video_time, r.video_batch, r.subject, r.identifier, r.title, r.priority, mlb.process_notes
+  -- FROM doctypes d, doctypes_first_level dfl, doctypes_second_level dsl, res_letterbox r
+   --LEFT JOIN ar_batch a ON r.arbatch_id = a.arbatch_id
+   --LEFT JOIN folders f ON r.folders_system_id = f.folders_system_id
+   --LEFT JOIN mlb_coll_ext mlb ON mlb.res_id = r.res_id
+   --LEFT JOIN foldertypes ft ON f.foldertype_id = ft.foldertype_id AND f.status::text <> 'DEL'::text
+ -- WHERE r.type_id = d.type_id AND d.doctypes_first_level_id = dfl.doctypes_first_level_id AND d.doctypes_second_level_id = dsl.doctypes_second_level_id;
+
+-- View with cases :
+CREATE OR REPLACE VIEW res_view_letterbox AS
+ SELECT r.tablename, r.is_multi_docservers, r.res_id, r.type_id, d.description AS type_label, d.doctypes_first_level_id, dfl.doctypes_first_level_label, d.doctypes_second_level_id, dsl.doctypes_second_level_label, r.format, r.typist, r.creation_date, r.relation, r.docserver_id, r.folders_system_id, f.folder_id, r.path, r.filename, r.fingerprint, r.offset_doc, r.filesize, r.status, r.work_batch, r.arbatch_id, r.arbox_id, r.page_count, r.is_paper, r.doc_date, r.scan_date, r.scan_user, r.scan_location, r.scan_wkstation, r.scan_batch, r.doc_language, r.description, r.source, r.author, r.custom_t1 AS doc_custom_t1, r.custom_t2 AS doc_custom_t2, r.custom_t3 AS doc_custom_t3, r.custom_t4 AS doc_custom_t4, r.custom_t5 AS doc_custom_t5, r.custom_t6 AS doc_custom_t6, r.custom_t7 AS doc_custom_t7, r.custom_t8 AS doc_custom_t8, r.custom_t9 AS doc_custom_t9, r.custom_t10 AS doc_custom_t10, r.custom_t11 AS doc_custom_t11, r.custom_t12 AS doc_custom_t12, r.custom_t13 AS doc_custom_t13, r.custom_t14 AS doc_custom_t14, r.custom_t15 AS doc_custom_t15, r.custom_d1 AS doc_custom_d1, r.custom_d2 AS doc_custom_d2, r.custom_d3 AS doc_custom_d3, r.custom_d4 AS doc_custom_d4, r.custom_d5 AS doc_custom_d5, r.custom_d6 AS doc_custom_d6, r.custom_d7 AS doc_custom_d7, r.custom_d8 AS doc_custom_d8, r.custom_d9 AS doc_custom_d9, r.custom_d10 AS doc_custom_d10, r.custom_n1 AS doc_custom_n1, r.custom_n2 AS doc_custom_n2, r.custom_n3 AS doc_custom_n3, r.custom_n4 AS doc_custom_n4, r.custom_n5 AS doc_custom_n5, r.custom_f1 AS doc_custom_f1, r.custom_f2 AS doc_custom_f2, r.custom_f3 AS doc_custom_f3, r.custom_f4 AS doc_custom_f4, r.custom_f5 AS doc_custom_f5, f.foldertype_id, ft.foldertype_label, f.custom_t1 AS fold_custom_t1, f.custom_t2 AS fold_custom_t2, f.custom_t3 AS fold_custom_t3, f.custom_t4 AS fold_custom_t4, f.custom_t5 AS fold_custom_t5, f.custom_t6 AS fold_custom_t6, f.custom_t7 AS fold_custom_t7, f.custom_t8 AS fold_custom_t8, f.custom_t9 AS fold_custom_t9, f.custom_t10 AS fold_custom_t10, f.custom_t11 AS fold_custom_t11, f.custom_t12 AS fold_custom_t12, f.custom_t13 AS fold_custom_t13, f.custom_t14 AS fold_custom_t14, f.custom_t15 AS fold_custom_t15, f.custom_d1 AS fold_custom_d1, f.custom_d2 AS fold_custom_d2, f.custom_d3 AS fold_custom_d3, f.custom_d4 AS fold_custom_d4, f.custom_d5 AS fold_custom_d5, f.custom_d6 AS fold_custom_d6, f.custom_d7 AS fold_custom_d7, f.custom_d8 AS fold_custom_d8, f.custom_d9 AS fold_custom_d9, f.custom_d10 AS fold_custom_d10, f.custom_n1 AS fold_custom_n1, f.custom_n2 AS fold_custom_n2, f.custom_n3 AS fold_custom_n3, f.custom_n4 AS fold_custom_n4, f.custom_n5 AS fold_custom_n5, f.custom_f1 AS fold_custom_f1, f.custom_f2 AS fold_custom_f2, f.custom_f3 AS fold_custom_f3, f.custom_f4 AS fold_custom_f4, f.custom_f5 AS fold_custom_f5, f.is_complete AS fold_complete, f.status AS fold_status, f.subject AS fold_subject, f.parent_id AS fold_parent_id, f.folder_level, f.folder_name, f.creation_date AS fold_creation_date, r.initiator, r.destination, r.dest_user, mlb.category_id, mlb.exp_contact_id, mlb.exp_user_id, mlb.dest_user_id, mlb.dest_contact_id, mlb.nature_id, mlb.alt_identifier, mlb.admission_date, mlb.answer_type_bitmask, mlb.other_answer_desc, mlb.process_limit_date, mlb.closing_date, mlb.alarm1_date, mlb.alarm2_date, mlb.flag_notif, mlb.flag_alarm1, mlb.flag_alarm2, r.video_user, r.video_time, r.video_batch, r.subject, r.identifier, r.title, r.priority, mlb.process_notes, ca.case_id, ca.case_label, ca.case_description, en.entity_label, cont.firstname AS contact_firstname, cont.lastname AS contact_lastname, cont.society AS contact_society, u.lastname AS user_lastname, u.firstname AS user_firstname, list.item_id AS dest_user_from_listinstance
+   FROM doctypes d, doctypes_first_level dfl, doctypes_second_level dsl, ar_batch a
+   RIGHT JOIN res_letterbox r ON r.arbatch_id = a.arbatch_id
+   LEFT JOIN entities en ON r.destination::text = en.entity_id::text
+   LEFT JOIN folders f ON r.folders_system_id = f.folders_system_id
+   LEFT JOIN cases_res cr ON r.res_id = cr.res_id
+   LEFT JOIN mlb_coll_ext mlb ON mlb.res_id = r.res_id
+   LEFT JOIN foldertypes ft ON f.foldertype_id = ft.foldertype_id AND f.status::text <> 'DEL'::text
+   LEFT JOIN cases ca ON cr.case_id = ca.case_id
+   LEFT JOIN contacts cont ON mlb.exp_contact_id = cont.contact_id OR mlb.dest_contact_id = cont.contact_id
+   LEFT JOIN users u ON mlb.exp_user_id::text = u.user_id::text OR mlb.dest_user_id::text = u.user_id::text
+   LEFT JOIN listinstance list ON r.res_id = list.res_id AND list.item_mode::text = 'dest'::text
+  WHERE r.type_id = d.type_id AND d.doctypes_first_level_id = dfl.doctypes_first_level_id AND d.doctypes_second_level_id = dsl.doctypes_second_level_id;
+
+CREATE OR REPLACE VIEW res_view_apa AS
+ select * from res_apa;
+
+CREATE TABLE doctypes_indexes
+(
+  type_id bigint NOT NULL,
+  coll_id character varying(32) NOT NULL,
+  field_name character varying(255) NOT NULL,
+  mandatory character(1) NOT NULL DEFAULT 'N'::bpchar,
+  CONSTRAINT doctypes_indexes_pkey PRIMARY KEY (type_id, coll_id, field_name)
+)
+WITH (OIDS=FALSE);
+
+
+-- Resource view used to fill af_target, we exclude from res_x the branches already in af_target table
+
+CREATE OR REPLACE VIEW af_view_year_view AS
+ SELECT r.custom_t3 AS level1, date_part( 'year', r.doc_date) AS level2, r.custom_t4 AS level3, r.type_id as level4,
+        r.res_id, r.creation_date, r.status -- for where clause
+   FROM  res_x r
+   WHERE  NOT (EXISTS ( SELECT t.level1, t.level2, t.level3, t.level4
+           FROM af_view_year_target t
+          WHERE r.custom_t3::text = t.level1::text AND cast(date_part( 'year', r.doc_date) as character) = t.level2 AND r.custom_t4 = t.level3 AND r.type_id = t.level4));
+
+CREATE OR REPLACE VIEW af_view_customer_view AS
+ SELECT substring(r.custom_t4, 1, 1) AS level1,  r.custom_t4 AS level2, date_part( 'year', r.doc_date) AS level3,
+        r.res_id, r.creation_date, r.status -- for where clause
+   FROM  res_x r
+   WHERE status <> 'DEL' and date_part( 'year', doc_date) is not null
+   AND NOT (EXISTS ( SELECT t.level1, t.level2, t.level3
+           FROM af_view_customer_target t
+          WHERE substring(r.custom_t4, 1, 1)::text = t.level1::text AND r.custom_t4::text = t.level2::text
+          AND cast(date_part( 'year', r.doc_date) as character) = t.level3)) ;
+
+-- View used to display trees
+CREATE OR REPLACE VIEW af_view_year_target_view AS
+ SELECT af.level1, af.level1 as level1_label, af.level2, af.level2 as level2_label, af.level3, af.level3 as level3_label,
+    af.level4, d.description as level4_label
+   FROM af_view_year_target af, doctypes d
+  WHERE af.level4 = d.type_id ;
+
+CREATE OR REPLACE VIEW af_view_customer_target_view AS
+ SELECT af.level1, af.level1 as level1_label, af.level2, af.level2 as level2_label, af.level3, af.level3 as level3_label
+   FROM af_view_customer_target af ;
+