mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-06 17:48:25 +01:00
212 lines
11 KiB
SQL
212 lines
11 KiB
SQL
--
|
|
-- Be carefull to requests order.
|
|
-- This file must be loaded by calling /install/index.php page
|
|
-- when current version is 2.7.0 or higher.
|
|
--
|
|
|
|
ALTER TABLE llx_actioncomm CHANGE fk_projet fk_project integer;
|
|
|
|
ALTER TABLE llx_don ADD COLUMN ref varchar(30) DEFAULT NULL AFTER rowid;
|
|
ALTER TABLE llx_don ADD COLUMN entity integer DEFAULT 1 NOT NULL AFTER ref;
|
|
|
|
ALTER TABLE llx_stock_mouvement ADD COLUMN label varchar(128);
|
|
|
|
ALTER TABLE llx_deplacement ADD COLUMN ref varchar(30) DEFAULT NULL AFTER rowid;
|
|
ALTER TABLE llx_deplacement ADD COLUMN entity integer DEFAULT 1 NOT NULL AFTER ref;
|
|
ALTER TABLE llx_deplacement ADD COLUMN note_public text;
|
|
|
|
ALTER TABLE llx_element_element DROP INDEX idx_element_element_idx1;
|
|
ALTER TABLE llx_element_element DROP INDEX idx_element_element_targetid;
|
|
ALTER TABLE llx_element_element CHANGE sourceid fk_source integer NOT NULL;
|
|
ALTER TABLE llx_element_element CHANGE targetid fk_target integer NOT NULL;
|
|
ALTER TABLE llx_element_element ADD UNIQUE INDEX idx_element_element_idx1 (fk_source, sourcetype, fk_target, targettype);
|
|
ALTER TABLE llx_element_element ADD INDEX idx_element_element_fk_target (fk_target);
|
|
|
|
ALTER TABLE llx_ecm_document RENAME TO llx_ecm_documents;
|
|
ALTER TABLE llx_ecm_documents ADD COLUMN entity integer DEFAULT 1 NOT NULL AFTER ref;
|
|
ALTER TABLE llx_ecm_documents ADD COLUMN crc varchar(32) DEFAULT '' NOT NULL AFTER private;
|
|
ALTER TABLE llx_ecm_documents ADD COLUMN cryptkey varchar(50) DEFAULT '' NOT NULL AFTER crc;
|
|
ALTER TABLE llx_ecm_documents ADD COLUMN cipher varchar(50) DEFAULT 'twofish' NOT NULL AFTER cryptkey;
|
|
|
|
ALTER TABLE llx_facture_fourn_det MODIFY COLUMN qty real;
|
|
|
|
|
|
ALTER TABLE llx_notify ADD COLUMN email VARCHAR(255);
|
|
|
|
ALTER TABLE llx_c_currencies ADD COLUMN labelsing varchar(64);
|
|
update llx_c_currencies set labelsing='Euro' where code_iso='EUR';
|
|
update llx_c_currencies set labelsing='Dollar' where code_iso='USD';
|
|
|
|
insert into llx_action_def (rowid,code,titre,description,objet_type) values (5,'NOTIFY_VAL_ORDER','Validation commande client','Executed when a customer order is validated','order');
|
|
insert into llx_action_def (rowid,code,titre,description,objet_type) values (6,'NOTIFY_VAL_PROPAL','Validation proposition client','Executed when a commercial proposal is validated','propal');
|
|
|
|
UPDATE llx_c_type_contact SET element='project' WHERE element='projet';
|
|
|
|
UPDATE llx_const set value='mail' where value='simplemail' and name='MAIN_MAIL_SENDMODE';
|
|
|
|
ALTER TABLE llx_projet ADD COLUMN model_pdf varchar(50) AFTER note;
|
|
|
|
ALTER TABLE llx_societe ADD COLUMN localtax1_assuj tinyint DEFAULT 0 after tva_assuj;
|
|
ALTER TABLE llx_societe ADD COLUMN localtax2_assuj tinyint DEFAULT 0 after localtax1_assuj;
|
|
|
|
ALTER TABLE llx_user ADD COLUMN photo varchar(255) after statut;
|
|
|
|
-- Create table of extra fields
|
|
create table llx_extra_fields
|
|
(
|
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
|
tms timestamp,
|
|
entity integer DEFAULT 1 NOT NULL,
|
|
object varchar(64) NOT NULL,
|
|
assign integer,
|
|
name varchar(64) NOT NULL,
|
|
label varchar(64) NOT NULL,
|
|
format varchar(8) NOT NULL,
|
|
fieldsize integer,
|
|
maxlength integer,
|
|
options varchar(45),
|
|
rank integer
|
|
)ENGINE=innodb;
|
|
|
|
ALTER TABLE llx_extra_fields ADD UNIQUE INDEX idx_extra_fields_name (name, entity);
|
|
|
|
-- Create table of possible values
|
|
create table llx_extra_fields_options
|
|
(
|
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
|
tms timestamp,
|
|
fk_extra_fields integer NOT NULL,
|
|
value varchar(255) NOT NULL,
|
|
rank integer
|
|
)ENGINE=innodb;
|
|
|
|
ALTER TABLE llx_extra_fields_options ADD INDEX idx_extra_fields_options_fk_extra_fields (fk_extra_fields);
|
|
ALTER TABLE llx_extra_fields_options ADD CONSTRAINT fk_extra_fields_options_fk_extra_fields FOREIGN KEY (fk_extra_fields) REFERENCES llx_extra_fields (rowid);
|
|
|
|
-- Create table of values
|
|
create table llx_extra_fields_values
|
|
(
|
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
|
tms timestamp,
|
|
entity integer DEFAULT 1 NOT NULL,
|
|
datec datetime,
|
|
datem datetime,
|
|
fk_object integer NOT NULL,
|
|
fk_extra_fields integer NOT NULL,
|
|
value varchar(255),
|
|
fk_user_create integer,
|
|
fk_user_modif integer
|
|
)ENGINE=innodb;
|
|
|
|
ALTER TABLE llx_extra_fields_values ADD INDEX idx_extra_fields_values_fk_extra_fields (fk_extra_fields, entity);
|
|
ALTER TABLE llx_extra_fields_values ADD CONSTRAINT fk_extra_fields_values_fk_extra_fields FOREIGN KEY (fk_extra_fields) REFERENCES llx_extra_fields (rowid);
|
|
|
|
ALTER TABLE llx_bank_class DROP INDEX idx_bank_class_lineid;
|
|
ALTER TABLE llx_bank_class DROP INDEX uk_bank_class_lineid;
|
|
ALTER TABLE llx_bank_class ADD UNIQUE INDEX uk_bank_class_lineid (lineid, fk_categ);
|
|
|
|
ALTER TABLE llx_rights_def MODIFY COLUMN module varchar(64);
|
|
|
|
-- Enhancement of project tasks
|
|
ALTER TABLE llx_projet ADD COLUMN datee DATE AFTER dateo;
|
|
ALTER TABLE llx_projet ADD COLUMN public integer;
|
|
|
|
ALTER TABLE llx_projet_task ADD COLUMN datec datetime AFTER fk_task_parent;
|
|
ALTER TABLE llx_projet_task ADD COLUMN tms timestamp AFTER datec;
|
|
ALTER TABLE llx_projet_task ADD COLUMN dateo datetime AFTER tms;
|
|
ALTER TABLE llx_projet_task ADD COLUMN datee datetime AFTER dateo;
|
|
ALTER TABLE llx_projet_task ADD COLUMN datev datetime AFTER datee;
|
|
ALTER TABLE llx_projet_task CHANGE title label varchar(255) NOT NULL;
|
|
ALTER TABLE llx_projet_task ADD COLUMN description text AFTER label;
|
|
ALTER TABLE llx_projet_task MODIFY description text;
|
|
ALTER TABLE llx_projet_task MODIFY duration_effective real DEFAULT 0 NOT NULL;
|
|
ALTER TABLE llx_projet_task ADD COLUMN progress integer DEFAULT 0 AFTER duration_effective;
|
|
ALTER TABLE llx_projet_task ADD COLUMN priority integer DEFAULT 0 AFTER progress;
|
|
ALTER TABLE llx_projet_task ADD COLUMN fk_milestone integer DEFAULT 0 AFTER priority;
|
|
ALTER TABLE llx_projet_task ADD COLUMN fk_user_modif integer AFTER fk_user_creat;
|
|
ALTER TABLE llx_projet_task ADD COLUMN fk_user_valid integer AFTER fk_user_modif;
|
|
UPDATE llx_projet_task SET statut='1' WHERE statut='open';
|
|
ALTER TABLE llx_projet_task CHANGE statut fk_statut smallint DEFAULT 0 NOT NULL;
|
|
ALTER TABLE llx_projet_task CHANGE note note_private text;
|
|
ALTER TABLE llx_projet_task ADD COLUMN note_public text AFTER note_private;
|
|
ALTER TABLE llx_projet_task ADD COLUMN rang integer DEFAULT 0 AFTER note_public;
|
|
|
|
-- Delete old key
|
|
ALTER TABLE llx_projet_task DROP INDEX fk_projet;
|
|
ALTER TABLE llx_projet_task DROP INDEX fk_user_creat;
|
|
ALTER TABLE llx_projet_task DROP INDEX statut;
|
|
-- Add new key
|
|
ALTER TABLE llx_projet_task ADD INDEX idx_projet_task_fk_projet (fk_projet);
|
|
ALTER TABLE llx_projet_task ADD INDEX idx_projet_task_fk_user_creat (fk_user_creat);
|
|
ALTER TABLE llx_projet_task ADD INDEX idx_projet_task_fk_user_valid (fk_user_valid);
|
|
-- V4.1 DELETE FROM llx_projet_task WHERE fk_projet NOT IN (SELECT rowid from llx_projet);
|
|
-- V4.1 UPDATE llx_projet_task set fk_user_creat=NULL WHERE fk_user_creat IS NOT NULL AND fk_user_creat NOT IN (SELECT rowid from llx_user);
|
|
-- V4.1 UPDATE llx_projet_task set fk_user_valid=NULL WHERE fk_user_valid IS NOT NULL AND fk_user_valid NOT IN (SELECT rowid from llx_user);
|
|
ALTER TABLE llx_projet_task ADD CONSTRAINT fk_projet_task_fk_projet FOREIGN KEY (fk_projet) REFERENCES llx_projet (rowid);
|
|
ALTER TABLE llx_projet_task ADD CONSTRAINT fk_projet_task_fk_user_creat FOREIGN KEY (fk_user_creat) REFERENCES llx_user (rowid);
|
|
ALTER TABLE llx_projet_task ADD CONSTRAINT fk_projet_task_fk_user_valid FOREIGN KEY (fk_user_valid) REFERENCES llx_user (rowid);
|
|
|
|
ALTER TABLE llx_element_contact DROP FOREIGN KEY fk_element_contact_fk_c_type_contact;
|
|
ALTER TABLE llx_element_contact DROP INDEX fk_element_contact_fk_c_type_contact;
|
|
UPDATE llx_c_type_contact SET rowid='160' WHERE rowid='80';
|
|
UPDATE llx_c_type_contact SET rowid='170' WHERE rowid='81';
|
|
UPDATE llx_element_contact SET fk_c_type_contact='160' WHERE fk_c_type_contact='80';
|
|
UPDATE llx_element_contact SET fk_c_type_contact='170' WHERE fk_c_type_contact='81';
|
|
ALTER TABLE llx_element_contact ADD CONSTRAINT fk_element_contact_fk_c_type_contact FOREIGN KEY (fk_c_type_contact) REFERENCES llx_c_type_contact(rowid);
|
|
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (161, 'project', 'internal', 'CONTRIBUTOR', 'Intervenant', 1);
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (171, 'project', 'external', 'CONTRIBUTOR', 'Intervenant', 1);
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (180, 'project_task', 'internal', 'TASKEXECUTIVE', 'Responsable', 1);
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (181, 'project_task', 'internal', 'CONTRIBUTOR', 'Intervenant', 1);
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (190, 'project_task', 'external', 'TASKEXECUTIVE', 'Responsable', 1);
|
|
insert into llx_c_type_contact(rowid, element, source, code, libelle, active ) values (191, 'project_task', 'external', 'CONTRIBUTOR', 'Intervenant', 1);
|
|
|
|
ALTER TABLE llx_projet ADD COLUMN description text AFTER title;
|
|
ALTER TABLE llx_projet CHANGE note note_private text;
|
|
ALTER TABLE llx_projet ADD COLUMN note_public text AFTER note_private;
|
|
ALTER TABLE llx_projet MODIFY fk_statut smallint DEFAULT 0 NOT NULL;
|
|
ALTER TABLE llx_projet MODIFY fk_user_creat integer NOT NULL;
|
|
|
|
-- Uniformize code: change tva_taux to tva_tx
|
|
ALTER TABLE llx_facturedet CHANGE tva_taux tva_tx real;
|
|
ALTER TABLE llx_facture_fourn_det CHANGE tva_taux tva_tx double(6,3);
|
|
ALTER TABLE llx_facturedet_rec CHANGE tva_taux tva_tx real DEFAULT 19.6;
|
|
|
|
-- Create table for entities
|
|
create table llx_entity
|
|
(
|
|
rowid integer AUTO_INCREMENT PRIMARY KEY,
|
|
tms timestamp,
|
|
label varchar(255) NOT NULL,
|
|
description text,
|
|
datec datetime,
|
|
fk_user_creat integer,
|
|
visible tinyint DEFAULT 1 NOT NULL,
|
|
active tinyint DEFAULT 1 NOT NULL
|
|
) ENGINE=innodb;
|
|
|
|
INSERT INTO llx_entity (rowid, label, description, datec, fk_user_creat, visible, active) VALUES (1, 'Default Entity', 'This is the default entity', NOW(), 1, 1, 1);
|
|
|
|
-- Add constraint
|
|
-- V4.1 DELETE FROM llx_fichinterdet WHERE fk_fichinter NOT IN (SELECT rowid from llx_fichinter);
|
|
ALTER TABLE llx_fichinterdet ADD INDEX idx_fichinterdet_fk_fichinter (fk_fichinter);
|
|
ALTER TABLE llx_fichinterdet ADD CONSTRAINT fk_fichinterdet_fk_fichinter FOREIGN KEY (fk_fichinter) REFERENCES llx_fichinter (rowid);
|
|
|
|
|
|
|
|
-- This was created into 2.9.0 but we need them to avoid errors of migration to 2.8 using new classes
|
|
alter table llx_facture add column localtax1 double(24,8) DEFAULT 0 after tva;
|
|
alter table llx_facture add column localtax2 double(24,8) DEFAULT 0 after localtax1;
|
|
alter table llx_facturedet add column localtax1_tx double(6,3) DEFAULT 0 after tva_tx;
|
|
alter table llx_facturedet add column localtax2_tx double(6,3) DEFAULT 0 after localtax1_tx;
|
|
alter table llx_facturedet add column total_localtax1 double(24,8) DEFAULT 0 after total_tva;
|
|
alter table llx_facturedet add column total_localtax2 double(24,8) DEFAULT 0 after total_localtax1;
|
|
|
|
|
|
|
|
-- This was created into 3.0.0 but we need them to avoid errors of migration to 2.8 using new classes
|
|
ALTER TABLE llx_propaldet ADD COLUMN fk_parent_line integer NULL AFTER fk_propal;
|
|
ALTER TABLE llx_commandedet ADD COLUMN fk_parent_line integer NULL AFTER fk_commande;
|
|
ALTER TABLE llx_facturedet ADD COLUMN fk_parent_line integer NULL AFTER fk_facture;
|
|
ALTER TABLE llx_facturedet_rec ADD COLUMN fk_parent_line integer NULL AFTER fk_facture;
|