6.0.0-7.0.0.sql 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732
  1. --
  2. -- Be carefull to requests order.
  3. -- This file must be loaded by calling /install/index.php page
  4. -- when current version is 7.0.0 or higher.
  5. --
  6. -- To rename a table: ALTER TABLE llx_table RENAME TO llx_table_new;
  7. -- To add a column: ALTER TABLE llx_table ADD COLUMN newcol varchar(60) NOT NULL DEFAULT '0' AFTER existingcol;
  8. -- To rename a column: ALTER TABLE llx_table CHANGE COLUMN oldname newname varchar(60);
  9. -- To drop a column: ALTER TABLE llx_table DROP COLUMN oldname;
  10. -- To change type of field: ALTER TABLE llx_table MODIFY COLUMN name varchar(60);
  11. -- To drop a foreign key: ALTER TABLE llx_table DROP FOREIGN KEY fk_name;
  12. -- To drop an index: -- VMYSQL4.0 DROP INDEX nomindex on llx_table
  13. -- To drop an index: -- VPGSQL8.0 DROP INDEX nomindex
  14. -- To restrict request to Mysql version x.y minimum use -- VMYSQLx.y
  15. -- To restrict request to Pgsql version x.y minimum use -- VPGSQLx.y
  16. -- To make pk to be auto increment (mysql): -- VMYSQL4.3 ALTER TABLE llx_c_shipment_mode CHANGE COLUMN rowid rowid INTEGER NOT NULL AUTO_INCREMENT;
  17. -- To make pk to be auto increment (postgres): -- VPGSQL8.2 NOT POSSIBLE. MUST DELETE/CREATE TABLE
  18. -- To set a field as NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NULL;
  19. -- To set a field as NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name DROP NOT NULL;
  20. -- To set a field as NOT NULL: -- VMYSQL4.3 ALTER TABLE llx_table MODIFY COLUMN name varchar(60) NOT NULL;
  21. -- To set a field as NOT NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET NOT NULL;
  22. -- To set a field as default NULL: -- VPGSQL8.2 ALTER TABLE llx_table ALTER COLUMN name SET DEFAULT NULL;
  23. -- Note: fields with type BLOB/TEXT can't have default value.
  24. -- -- VPGSQL8.2 DELETE FROM llx_usergroup_user WHERE fk_user NOT IN (SELECT rowid from llx_user);
  25. -- -- VMYSQL4.1 DELETE FROM llx_usergroup_user WHERE fk_usergroup NOT IN (SELECT rowid from llx_usergroup);
  26. -- Must be before the utf8 pagecode fix
  27. ALTER TABLE llx_product ADD COLUMN accountancy_code_sell_intra varchar(32) AFTER accountancy_code_sell;
  28. ALTER TABLE llx_product ADD COLUMN accountancy_code_sell_export varchar(32) AFTER accountancy_code_sell_intra;
  29. -- Drop old key with old name
  30. ALTER TABLE llx_accounting_account DROP FOREIGN KEY fk_accountingaccount_fk_pcg_version;
  31. -- Drop foreign key, so next alter will be a success
  32. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account DROP FOREIGN KEY fk_accounting_account_fk_pcg_version;
  33. -- VMYSQL4.1 SET sql_mode = 'ALLOW_INVALID_DATES';
  34. -- VMYSQL4.1 update llx_accounting_account set tms = datec where DATE(STR_TO_DATE(tms, '%Y-%m-%d')) IS NULL;
  35. -- VMYSQL4.1 SET sql_mode = 'NO_ZERO_DATE';
  36. -- VMYSQL4.1 update llx_accounting_account set tms = datec where DATE(STR_TO_DATE(tms, '%Y-%m-%d')) IS NULL;
  37. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account MODIFY fk_pcg_version VARCHAR(20) CHARACTER SET utf8;
  38. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account MODIFY fk_pcg_version VARCHAR(20) COLLATE utf8_unicode_ci;
  39. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) CHARACTER SET utf8;
  40. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) COLLATE utf8_unicode_ci;
  41. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account MODIFY account_number VARCHAR(20) CHARACTER SET utf8;
  42. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account MODIFY account_number VARCHAR(20) COLLATE utf8_unicode_ci;
  43. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_bookkeeping MODIFY numero_compte VARCHAR(20) CHARACTER SET utf8;
  44. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_bookkeeping MODIFY numero_compte VARCHAR(20) COLLATE utf8_unicode_ci;
  45. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_journal MODIFY code VARCHAR(20) CHARACTER SET utf8;
  46. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_journal MODIFY code VARCHAR(20) COLLATE utf8_unicode_ci;
  47. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_bank_account MODIFY accountancy_journal VARCHAR(20) CHARACTER SET utf8;
  48. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_bank_account MODIFY accountancy_journal VARCHAR(20) COLLATE utf8_unicode_ci;
  49. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_stock_mouvement MODIFY batch VARCHAR(30) CHARACTER SET utf8;
  50. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_stock_mouvement MODIFY batch VARCHAR(30) COLLATE utf8_unicode_ci;
  51. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product_lot MODIFY batch VARCHAR(30) CHARACTER SET utf8;
  52. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product_lot MODIFY batch VARCHAR(30) COLLATE utf8_unicode_ci;
  53. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_expeditiondet_batch MODIFY batch VARCHAR(30) CHARACTER SET utf8;
  54. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_expeditiondet_batch MODIFY batch VARCHAR(30) COLLATE utf8_unicode_ci;
  55. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product_batch MODIFY batch VARCHAR(30) CHARACTER SET utf8;
  56. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product_batch MODIFY batch VARCHAR(30) COLLATE utf8_unicode_ci;
  57. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell VARCHAR(32) CHARACTER SET utf8;
  58. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell VARCHAR(32) COLLATE utf8_unicode_ci;
  59. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell_intra VARCHAR(32) CHARACTER SET utf8;
  60. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell_intra VARCHAR(32) COLLATE utf8_unicode_ci;
  61. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell_export VARCHAR(32) CHARACTER SET utf8;
  62. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_sell_export VARCHAR(32) COLLATE utf8_unicode_ci;
  63. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_buy VARCHAR(32) CHARACTER SET utf8;
  64. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_product MODIFY accountancy_code_buy VARCHAR(32) COLLATE utf8_unicode_ci;
  65. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_c_type_fees MODIFY accountancy_code VARCHAR(32) CHARACTER SET utf8;
  66. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_c_type_fees MODIFY accountancy_code VARCHAR(32) COLLATE utf8_unicode_ci;
  67. -- Restore dropped foreign key
  68. -- VMYSQLUTF8UNICODECI ALTER TABLE llx_accounting_account ADD CONSTRAINT fk_accounting_account_fk_pcg_version FOREIGN KEY (fk_pcg_version) REFERENCES llx_accounting_system (pcg_version);
  69. -- Missing in 5.0
  70. ALTER TABLE llx_user MODIFY login varchar(50) NOT NULL;
  71. -- Missing in 6.0 ?
  72. ALTER TABLE llx_product_price ADD COLUMN fk_multicurrency integer;
  73. ALTER TABLE llx_product_price ADD COLUMN multicurrency_code varchar(255);
  74. ALTER TABLE llx_product_price ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
  75. ALTER TABLE llx_product_price ADD COLUMN multicurrency_price double(24,8) DEFAULT NULL;
  76. ALTER TABLE llx_product_price ADD COLUMN multicurrency_price_ttc double(24,8) DEFAULT NULL;
  77. ALTER TABLE llx_product_customer_price_log ADD COLUMN default_vat_code varchar(10);
  78. ALTER TABLE llx_product_price ADD COLUMN default_vat_code varchar(10) AFTER tva_tx;
  79. ALTER TABLE llx_product_customer_price ADD COLUMN default_vat_code varchar(10) AFTER tva_tx;
  80. ALTER TABLE llx_product_fournisseur_price ADD COLUMN default_vat_code varchar(10) AFTER tva_tx;
  81. ALTER TABLE llx_website_page ADD COLUMN fk_user_create integer;
  82. ALTER TABLE llx_website_page ADD COLUMN fk_user_modif integer;
  83. ALTER TABLE llx_website_page ADD COLUMN type_container varchar(16) NOT NULL DEFAULT 'page';
  84. -- For 7.0
  85. delete from llx_c_action_trigger where code = 'MEMBER_SUBSCRIPTION';
  86. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MEMBER_SUBSCRIPTION_CREATE','Member subscribtion recorded','Executed when a member subscribtion is deleted','member',24);
  87. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MEMBER_SUBSCRIPTION_MODIFY','Member subscribtion modified','Executed when a member subscribtion is modified','member',24);
  88. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MEMBER_SUBSCRIPTION_DELETE','Member subscribtion deleted','Executed when a member subscribtion is deleted','member',24);
  89. -- VPGSQL8.4 ALTER TABLE llx_product_attribute DROP CONSTRAINT unique_ref;
  90. ALTER TABLE llx_product_attribute_value DROP INDEX unique_ref;
  91. ALTER TABLE llx_product_attribute_value ADD UNIQUE INDEX uk_product_attribute_value (fk_product_attribute, ref);
  92. ALTER TABLE llx_product_price_by_qty ADD COLUMN quantity double DEFAULT NULL;
  93. ALTER TABLE llx_product_price_by_qty ADD COLUMN unitprice double(24,8) DEFAULT 0;
  94. ALTER TABLE llx_product_price_by_qty ADD COLUMN price_base_type varchar(3) DEFAULT 'HT';
  95. ALTER TABLE llx_product_price_by_qty ADD COLUMN fk_multicurrency integer;
  96. ALTER TABLE llx_product_price_by_qty ADD COLUMN multicurrency_code varchar(255);
  97. ALTER TABLE llx_product_price_by_qty ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
  98. ALTER TABLE llx_product_price_by_qty ADD COLUMN multicurrency_price double(24,8) DEFAULT NULL;
  99. ALTER TABLE llx_product_price_by_qty ADD COLUMN multicurrency_price_ttc double(24,8) DEFAULT NULL;
  100. -- VMYSQL4.0 DROP INDEX uk_product_price_by_qty_level on llx_product_price_by_qty;
  101. -- VPGSQL8.0 DROP INDEX uk_product_price_by_qty_level;
  102. ALTER TABLE llx_product_price_by_qty ADD UNIQUE INDEX uk_product_price_by_qty_level (fk_product_price, quantity);
  103. ALTER TABLE llx_accounting_bookkeeping ADD INDEX idx_accounting_bookkeeping_fk_doc (fk_doc);
  104. ALTER TABLE llx_c_revenuestamp ADD COLUMN revenuestamp_type varchar(16) DEFAULT 'fixed' NOT NULL;
  105. UPDATE llx_contrat SET ref = rowid WHERE ref IS NULL OR ref = '';
  106. ALTER TABLE llx_contratdet ADD COLUMN vat_src_code varchar(10) DEFAULT '';
  107. INSERT INTO llx_c_type_contact(rowid, element, source, code, libelle, active ) values (42, 'propal', 'external', 'SHIPPING', 'Customer contact for delivery', 1);
  108. ALTER TABLE llx_inventory ADD date_validation datetime DEFAULT NULL;
  109. ALTER TABLE llx_inventory CHANGE COLUMN datec date_creation datetime DEFAULT NULL;
  110. ALTER TABLE llx_inventory CHANGE COLUMN fk_user_author fk_user_creat integer;
  111. ALTER TABLE llx_inventory ADD UNIQUE INDEX uk_inventory_ref (ref, entity);
  112. ALTER table llx_entrepot CHANGE COLUMN label ref varchar(255);
  113. UPDATE llx_paiementfourn SET ref = rowid WHERE ref IS NULL;
  114. UPDATE llx_paiementfourn SET entity = 1 WHERE entity IS NULL;
  115. UPDATE llx_website SET entity = 1 WHERE entity IS NULL;
  116. -- VMYSQL4.3 ALTER TABLE llx_website MODIFY COLUMN entity integer NOT NULL DEFAULT 1;
  117. -- VPGSQL8.2 ALTER TABLE llx_website ALTER COLUMN entity SET NOT NULL;
  118. ALTER TABLE llx_user ADD COLUMN birth date;
  119. -- VMYSQL4.1 ALTER TABLE llx_holiday_users DROP PRIMARY KEY;
  120. ALTER TABLE llx_holiday_users ADD UNIQUE INDEX uk_holiday_users(fk_user, fk_type, nb_holiday);
  121. ALTER TABLE llx_product_fournisseur_price ADD COLUMN localtax1_tx double(6,3) DEFAULT 0;
  122. ALTER TABLE llx_product_fournisseur_price ADD COLUMN localtax1_type varchar(10) NOT NULL DEFAULT '0';
  123. ALTER TABLE llx_product_fournisseur_price ADD COLUMN localtax2_tx double(6,3) DEFAULT 0;
  124. ALTER TABLE llx_product_fournisseur_price ADD COLUMN localtax2_type varchar(10) NOT NULL DEFAULT '0';
  125. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('MEMBER_SENTBYMAIL','Mails sent from member card','Executed when you send email from member card','member',23);
  126. ALTER TABLE llx_ecm_files MODIFY label varchar(128) NOT NULL;
  127. ALTER TABLE llx_ecm_files ADD COLUMN share varchar(128) NULL after label;
  128. ALTER TABLE llx_ecm_files ADD COLUMN src_object_type varchar(32);
  129. ALTER TABLE llx_ecm_files ADD COLUMN src_object_id integer;
  130. ALTER TABLE llx_propal ADD COLUMN last_main_doc varchar(255);
  131. ALTER TABLE llx_commande ADD COLUMN last_main_doc varchar(255);
  132. ALTER TABLE llx_facture ADD COLUMN last_main_doc varchar(255);
  133. ALTER TABLE llx_contrat ADD COLUMN last_main_doc varchar(255);
  134. ALTER TABLE llx_expedition ADD COLUMN last_main_doc varchar(255);
  135. ALTER TABLE llx_fichinter ADD COLUMN last_main_doc varchar(255);
  136. ALTER TABLE llx_livraison ADD COLUMN last_main_doc varchar(255);
  137. ALTER TABLE llx_supplier_proposal ADD COLUMN last_main_doc varchar(255);
  138. ALTER TABLE llx_facture_fourn ADD COLUMN last_main_doc varchar(255);
  139. ALTER TABLE llx_commande_fournisseur ADD COLUMN last_main_doc varchar(255);
  140. ALTER TABLE llx_c_paiement ADD COLUMN position integer NOT NULL DEFAULT 0;
  141. ALTER TABLE llx_c_payment_term ADD COLUMN position integer NOT NULL DEFAULT 0;
  142. ALTER TABLE llx_product MODIFY COLUMN seuil_stock_alerte integer DEFAULT NULL;
  143. -- VPGSQL8.2 ALTER TABLE llx_product ALTER COLUMN seuil_stock_alerte SET DEFAULT NULL;
  144. ALTER TABLE llx_facture_rec ADD COLUMN suspended integer DEFAULT 0;
  145. ALTER TABLE llx_facture_rec MODIFY COLUMN titre VARCHAR(100);
  146. ALTER TABLE llx_contrat MODIFY COLUMN ref varchar(50);
  147. ALTER TABLE llx_contrat MODIFY COLUMN ref_customer varchar(50);
  148. ALTER TABLE llx_contrat MODIFY COLUMN ref_supplier varchar(50);
  149. ALTER TABLE llx_contrat MODIFY COLUMN ref_ext varchar(50);
  150. UPDATE llx_c_email_templates SET position = 0 WHERE position IS NULL;
  151. UPDATE llx_c_email_templates SET lang = '' WHERE lang IS NULL;
  152. ALTER TABLE llx_c_email_templates ADD COLUMN enabled varchar(255) DEFAULT '1';
  153. ALTER TABLE llx_c_email_templates ADD COLUMN joinfiles varchar(255) DEFAULT '1';
  154. ALTER TABLE llx_c_email_templates MODIFY COLUMN content mediumtext;
  155. INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines) VALUES (0,'adherent','member','',0,null,null,'(SendingAnEMailToMember)',1,1,1,'__(CardContent)__','__(Hello)__,<br><br>\n\n__(ThisIsContentOfYourCard)__<br>\n__(ID)__ : __ID__<br>\n__(Civiliyty)__ : __MEMBER_CIVILITY__<br>\n__(Firstname)__ : __MEMBER_FIRSTNAME__<br>\n__(Lastname)__ : __MEMBER_LASTNAME__<br>\n__(Fullname)__ : __MEMBER_FULLNAME__<br>\n__(Company)__ : __MEMBER_COMPANY__<br>\n__(Address)__ : __MEMBER_ADDRESS__<br>\n__(Zip)__ : __MEMBER_ZIP__<br>\n__(Town)__ : __MEMBER_TOWN__<br>\n__(Country)__ : __MEMBER_COUNTRY__<br>\n__(Email)__ : __MEMBER_EMAIL__<br>\n__(Birthday)__ : __MEMBER_BIRTH__<br>\n__(Photo)__ : __MEMBER_PHOTO__<br>\n__(Login)__ : __MEMBER_LOGIN__<br>\n__(Password)__ : __MEMBER_PASSWORD__<br>\n__(Phone)__ : __MEMBER_PHONE__<br>\n__(PhonePerso)__ : __MEMBER_PHONEPRO__<br>\n__(PhoneMobile)__ : __MEMBER_PHONEMOBILE__<br><br>\n__(Sincerely)__<br>__USER_SIGNATURE__',null);
  156. INSERT INTO llx_c_email_templates (entity,module,type_template,lang,private,fk_user,datec,label,position,enabled,active,topic,content,content_lines) VALUES (0,'banque','thirdparty','',0,null,null,'(YourSEPAMandate)',1,1,0,'__(YourSEPAMandate)__','__(Hello)__,<br><br>\n\n__(FindYourSEPAMandate)__ :<br>\n__MYCOMPANY_NAME__<br>\n__MYCOMPANY_FULLADDRESS__<br><br>\n__(Sincerely)__<br>\n__USER_SIGNATURE__',null);
  157. INSERT INTO llx_c_accounting_category (rowid, code, label, range_account, sens, category_type, formula, position, fk_country, active) VALUES ( 1, 'VENTES', 'Income of products/services', 'Exemple: 7xxxxx', 0, 0, '', '10', 1, 1);
  158. INSERT INTO llx_c_accounting_category (rowid, code, label, range_account, sens, category_type, formula, position, fk_country, active) VALUES ( 2, 'DEPENSES', 'Expenses of products/services', 'Exemple: 6xxxxx', 0, 0, '', '20', 1, 1);
  159. INSERT INTO llx_c_accounting_category (rowid, code, label, range_account, sens, category_type, formula, position, fk_country, active) VALUES ( 3, 'PROFIT', 'Balance', '', 0, 1, 'VENTES+DEPENSES', '30', 1, 1);
  160. UPDATE llx_c_accounting_category set code = 'VENTES', range_account='7xxxxx' where code = 'VTE';
  161. UPDATE llx_c_accounting_category set code = 'DEPENSES', range_account='6xxxxx' where code = 'MAR';
  162. UPDATE llx_c_accounting_category set code = 'PROFIT', range_account='Balance', formula = 'VENTES+DEPENSES' where code = 'MARGE';
  163. ALTER TABLE llx_menu MODIFY COLUMN perms text;
  164. ALTER TABLE llx_mailing MODIFY COLUMN titre varchar(128);
  165. ALTER TABLE llx_mailing MODIFY COLUMN sujet varchar(128);
  166. ALTER TABLE llx_mailing MODIFY COLUMN langs varchar(64);
  167. ALTER TABLE llx_facture_fourn ADD COLUMN date_pointoftax date DEFAULT NULL;
  168. ALTER TABLE llx_facture_fourn ADD COLUMN date_valid date;
  169. ALTER TABLE llx_bookmark DROP COLUMN fk_soc;
  170. ALTER TABLE llx_website MODIFY COLUMN ref varchar(128);
  171. ALTER TABLE llx_website_page MODIFY COLUMN pageurl varchar(255);
  172. ALTER TABLE llx_website_page ADD COLUMN lang varchar(6);
  173. ALTER TABLE llx_website_page ADD COLUMN fk_page integer;
  174. ALTER TABLE llx_website_page ADD COLUMN grabbed_from varchar(255);
  175. ALTER TABLE llx_website_page ADD COLUMN htmlheader mediumtext;
  176. ALTER TABLE llx_website_page MODIFY COLUMN htmlheader mediumtext;
  177. ALTER TABLE llx_website_page MODIFY COLUMN status INTEGER DEFAULT 1;
  178. UPDATE llx_website_page set status = 1 WHERE status IS NULL;
  179. ALTER TABLE llx_website ADD COLUMN import_key varchar(14);
  180. ALTER TABLE llx_website_page ADD COLUMN import_key varchar(14);
  181. ALTER TABLE llx_fichinter ADD COLUMN import_key varchar(14);
  182. ALTER TABLE llx_livraison ADD COLUMN import_key varchar(14);
  183. ALTER TABLE llx_livraison ADD COLUMN extraparams varchar(255);
  184. ALTER TABLE llx_don ADD COLUMN extraparams varchar(255);
  185. ALTER TABLE llx_accounting_account ADD COLUMN import_key varchar(14);
  186. ALTER TABLE llx_accounting_account ADD COLUMN extraparams varchar(255);
  187. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN import_key varchar(14);
  188. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN extraparams varchar(255);
  189. ALTER TABLE llx_accounting_bookkeeping_tmp ADD COLUMN extraparams varchar(255);
  190. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN date_lim_reglement datetime DEFAULT NULL;
  191. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN fk_user integer NULL;
  192. ALTER TABLE llx_accounting_bookkeeping_tmp ADD COLUMN date_lim_reglement datetime DEFAULT NULL;
  193. ALTER TABLE llx_accounting_bookkeeping_tmp ADD COLUMN fk_user integer NULL;
  194. ALTER TABLE llx_menu MODIFY fk_mainmenu varchar(100);
  195. ALTER TABLE llx_menu MODIFY fk_leftmenu varchar(100);
  196. CREATE TABLE llx_website_extrafields
  197. (
  198. rowid integer AUTO_INCREMENT PRIMARY KEY,
  199. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  200. fk_object integer NOT NULL,
  201. import_key varchar(14) -- import key
  202. ) ENGINE=innodb;
  203. ALTER TABLE llx_website_extrafields ADD INDEX idx_website_extrafields (fk_object);
  204. CREATE TABLE llx_website_account(
  205. rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL,
  206. login varchar(64) NOT NULL,
  207. pass_encoding varchar(24) NOT NULL,
  208. pass_crypted varchar(128),
  209. pass_temp varchar(128), -- temporary password when asked for forget password
  210. fk_soc integer,
  211. fk_website integer NOT NULL,
  212. note_private text,
  213. date_last_login datetime,
  214. date_previous_login datetime,
  215. date_creation datetime NOT NULL,
  216. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  217. fk_user_creat integer NOT NULL,
  218. fk_user_modif integer,
  219. import_key varchar(14),
  220. status integer
  221. ) ENGINE=innodb;
  222. ALTER TABLE llx_website_account ADD INDEX idx_website_account_rowid (rowid);
  223. ALTER TABLE llx_website_account ADD INDEX idx_website_account_login (login);
  224. ALTER TABLE llx_website_account ADD INDEX idx_website_account_import_key (import_key);
  225. ALTER TABLE llx_website_account ADD INDEX idx_website_account_status (status);
  226. ALTER TABLE llx_website_account ADD INDEX idx_website_account_fk_soc (fk_soc);
  227. ALTER TABLE llx_website_account ADD INDEX idx_website_account_fk_website (fk_website);
  228. ALTER TABLE llx_website_account ADD UNIQUE INDEX uk_website_account_login_website_soc(login, fk_website, fk_soc);
  229. ALTER TABLE llx_website_account ADD CONSTRAINT llx_website_account_fk_website FOREIGN KEY (fk_website) REFERENCES llx_website(rowid);
  230. CREATE TABLE llx_website_account_extrafields
  231. (
  232. rowid integer AUTO_INCREMENT PRIMARY KEY,
  233. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  234. fk_object integer NOT NULL,
  235. import_key varchar(14) -- import key
  236. ) ENGINE=innodb;
  237. ALTER TABLE llx_website_account_extrafields ADD INDEX idx_website_account_extrafields (fk_object);
  238. alter table llx_user add column pass_encoding varchar(24) NULL;
  239. CREATE TABLE IF NOT EXISTS llx_expensereport_ik (
  240. rowid integer AUTO_INCREMENT PRIMARY KEY,
  241. datec datetime DEFAULT NULL,
  242. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  243. fk_c_exp_tax_cat integer DEFAULT 0 NOT NULL,
  244. fk_range integer DEFAULT 0 NOT NULL,
  245. coef double DEFAULT 0 NOT NULL,
  246. ikoffset double DEFAULT 0 NOT NULL,
  247. active integer DEFAULT 1
  248. )ENGINE=innodb;
  249. ALTER TABLE llx_expensereport_ik ADD COLUMN ikoffset double DEFAULT 0 NOT NULL;
  250. CREATE TABLE IF NOT EXISTS llx_c_exp_tax_cat (
  251. rowid integer AUTO_INCREMENT PRIMARY KEY,
  252. label varchar(48) NOT NULL,
  253. entity integer DEFAULT 1 NOT NULL,
  254. active integer DEFAULT 1 NOT NULL
  255. )ENGINE=innodb;
  256. CREATE TABLE IF NOT EXISTS llx_c_exp_tax_range (
  257. rowid integer AUTO_INCREMENT PRIMARY KEY,
  258. fk_c_exp_tax_cat integer DEFAULT 1 NOT NULL,
  259. range_ik double DEFAULT 0 NOT NULL,
  260. entity integer DEFAULT 1 NOT NULL,
  261. active integer DEFAULT 1 NOT NULL
  262. )ENGINE=innodb;
  263. INSERT INTO llx_c_type_fees (code, label, active, accountancy_code) VALUES
  264. ('EX_KME', 'ExpLabelKm', 1, '625100'),
  265. ('EX_FUE', 'ExpLabelFuelCV', 0, '606150'),
  266. ('EX_HOT', 'ExpLabelHotel', 0, '625160'),
  267. ('EX_PAR', 'ExpLabelParkingCV', 0, '625160'),
  268. ('EX_TOL', 'ExpLabelTollCV', 0, '625160'),
  269. ('EX_TAX', 'ExpLabelVariousTaxes', 0, '637800'),
  270. ('EX_IND', 'ExpLabelIndemnityTranspSub', 0, '648100'),
  271. ('EX_SUM', 'ExpLabelMaintenanceSupply', 0, '606300'),
  272. ('EX_SUO', 'ExpLabelOfficeSupplies', 0, '606400'),
  273. ('EX_CAR', 'ExpLabelCarRental', 0, '613000'),
  274. ('EX_DOC', 'ExpLabelDocumentation', 0, '618100'),
  275. ('EX_CUR', 'ExpLabelCustomersReceiving', 0, '625710'),
  276. ('EX_OTR', 'ExpLabelOtherReceiving', 0, '625700'),
  277. ('EX_POS', 'ExpLabelPostage', 0, '626100'),
  278. ('EX_CAM', 'ExpLabelMaintenanceRepairCV', 0, '615300'),
  279. ('EX_EMM', 'ExpLabelEmployeesMeal', 0, '625160'),
  280. ('EX_GUM', 'ExpLabelGuestsMeal', 0, '625160'),
  281. ('EX_BRE', 'ExpLabelBreakfast', 0, '625160'),
  282. ('EX_FUE_VP', 'ExpLabelFuelPV', 0, '606150'),
  283. ('EX_TOL_VP', 'ExpLabelTollPV', 0, '625160'),
  284. ('EX_PAR_VP', 'ExpLabelParkingPV', 0, '625160'),
  285. ('EX_CAM_VP', 'ExpLabelMaintenanceRepairPV', 0, '615300');
  286. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (1,4, 1, 0.41, 0);
  287. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (2,4, 2, 0.244, 824);
  288. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (3,4, 3, 0.286, 0);
  289. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (4,5, 4, 0.493, 0);
  290. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (5,5, 5, 0.277, 1082);
  291. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (6,5, 6, 0.332, 0);
  292. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (7,6, 7, 0.543, 0);
  293. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (8,6, 8, 0.305, 1180);
  294. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (9,6, 9, 0.364, 0);
  295. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (10,7, 10, 0.568, 0);
  296. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (11,7, 11, 0.32, 1244);
  297. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (12,7, 12, 0.382, 0);
  298. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (13,8, 13, 0.595, 0);
  299. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (14,8, 14, 0.337, 1288);
  300. INSERT INTO llx_expensereport_ik (rowid, fk_c_exp_tax_cat, fk_range, coef, ikoffset) values (15,8, 15, 0.401, 0);
  301. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (1,'ExpAutoCat', 1, 1);
  302. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (2,'ExpCycloCat', 1, 1);
  303. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (3,'ExpMotoCat', 1, 1);
  304. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (4,'ExpAuto3CV', 1, 1);
  305. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (5,'ExpAuto4CV', 1, 1);
  306. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (6,'ExpAuto5CV', 1, 1);
  307. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (7,'ExpAuto6CV', 1, 1);
  308. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (8,'ExpAuto7CV', 1, 1);
  309. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (9,'ExpAuto8CV', 1, 1);
  310. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (10,'ExpAuto9CV', 1, 1);
  311. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (11,'ExpAuto10CV', 1, 1);
  312. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (12,'ExpAuto11CV', 1, 1);
  313. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (13,'ExpAuto12CV', 1, 1);
  314. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (14,'ExpAuto3PCV', 1, 1);
  315. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (15,'ExpAuto4PCV', 1, 1);
  316. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (16,'ExpAuto5PCV', 1, 1);
  317. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (17,'ExpAuto6PCV', 1, 1);
  318. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (18,'ExpAuto7PCV', 1, 1);
  319. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (19,'ExpAuto8PCV', 1, 1);
  320. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (20,'ExpAuto9PCV', 1, 1);
  321. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (21,'ExpAuto10PCV', 1, 1);
  322. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (22,'ExpAuto11PCV', 1, 1);
  323. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (23,'ExpAuto12PCV', 1, 1);
  324. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (24,'ExpAuto13PCV', 1, 1);
  325. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (25,'ExpCyclo', 1, 1);
  326. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (26,'ExpMoto12CV', 1, 1);
  327. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (27,'ExpMoto345CV', 1, 1);
  328. INSERT INTO llx_c_exp_tax_cat (rowid, label, entity, active) values (28,'ExpMoto5PCV', 1, 1);
  329. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (1,4, 0, 1, 1);
  330. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (2,4, 5000, 1, 1);
  331. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (3,4, 20000, 1, 1);
  332. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (4,5, 0, 1, 1);
  333. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (5,5, 5000, 1, 1);
  334. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (6,5, 20000, 1, 1);
  335. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (7,6, 0, 1, 1);
  336. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (8,6, 5000, 1, 1);
  337. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (9,6, 20000, 1, 1);
  338. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (10,7, 0, 1, 1);
  339. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (11,7, 5000, 1, 1);
  340. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (12,7, 20000, 1, 1);
  341. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (13,8, 0, 1, 1);
  342. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (14,8, 5000, 1, 1);
  343. INSERT INTO llx_c_exp_tax_range (rowid,fk_c_exp_tax_cat,range_ik, entity, active) values (15,8, 20000, 1, 1);
  344. CREATE TABLE llx_expensereport_rules (
  345. rowid integer AUTO_INCREMENT PRIMARY KEY,
  346. datec datetime DEFAULT NULL,
  347. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  348. dates datetime NOT NULL,
  349. datee datetime NOT NULL,
  350. amount numeric(24,8) NOT NULL,
  351. restrictive tinyint NOT NULL,
  352. fk_user integer DEFAULT NULL,
  353. fk_usergroup integer DEFAULT NULL,
  354. fk_c_type_fees integer NOT NULL,
  355. code_expense_rules_type varchar(50) NOT NULL,
  356. is_for_all tinyint DEFAULT 0,
  357. entity integer DEFAULT 1
  358. )ENGINE=innodb;
  359. ALTER TABLE llx_expensereport_det ADD COLUMN rule_warning_message text;
  360. ALTER TABLE llx_expensereport_det ADD COLUMN fk_c_exp_tax_cat integer;
  361. ALTER TABLE llx_user ADD COLUMN default_range integer;
  362. ALTER TABLE llx_user ADD COLUMN default_c_exp_tax_cat integer;
  363. ALTER TABLE llx_extrafields ADD COLUMN fk_user_author integer;
  364. ALTER TABLE llx_extrafields ADD COLUMN fk_user_modif integer;
  365. ALTER TABLE llx_extrafields ADD COLUMN datec datetime;
  366. ALTER TABLE llx_extrafields ADD COLUMN enabled varchar(255) DEFAULT '1';
  367. ALTER TABLE llx_extrafields ADD COLUMN tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
  368. -- We fix value of 'list' from 0 to 1 for all extrafields created before this migration
  369. --VMYSQL4.1 UPDATE llx_extrafields SET list = 1 WHERE list = 0 AND fk_user_author IS NULL and fk_user_modif IS NULL and datec IS NULL;
  370. --VMYSQL4.1 UPDATE llx_extrafields SET list = 3 WHERE type = 'separate' AND list <> 3;
  371. --VPGSQL8.2 UPDATE llx_extrafields SET list = 1 WHERE list::integer = 0 AND fk_user_author IS NULL and fk_user_modif IS NULL and datec IS NULL;
  372. --VPGSQL8.2 UPDATE llx_extrafields SET list = 3 WHERE type = 'separate' AND list::integer <> 3;
  373. --VMYSQL4.1 ALTER TABLE llx_extrafields MODIFY COLUMN list integer DEFAULT 1;
  374. --VPGSQL8.2 ALTER TABLE llx_extrafields MODIFY COLUMN list integer DEFAULT 1 USING list::integer;
  375. --VPGSQL8.2 ALTER TABLE llx_extrafields ALTER COLUMN list SET DEFAULT 1;
  376. ALTER TABLE llx_extrafields MODIFY COLUMN langs varchar(64);
  377. ALTER TABLE llx_holiday_config MODIFY COLUMN name varchar(128) NOT NULL;
  378. ALTER TABLE llx_holiday_config ADD UNIQUE INDEX idx_holiday_config (name);
  379. ALTER TABLE llx_societe MODIFY COLUMN ref_ext varchar(255);
  380. ALTER TABLE llx_socpeople MODIFY COLUMN ref_ext varchar(255);
  381. ALTER TABLE llx_actioncomm MODIFY COLUMN ref_ext varchar(255);
  382. ALTER TABLE llx_expedition MODIFY COLUMN ref_ext varchar(255);
  383. ALTER TABLE llx_livraison MODIFY COLUMN ref_ext varchar(255);
  384. ALTER TABLE llx_contrat MODIFY COLUMN ref_ext varchar(255);
  385. ALTER TABLE llx_actioncomm MODIFY COLUMN label varchar(255) NOT NULL;
  386. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_fk_user_action (fk_user_action);
  387. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_fk_project (fk_project);
  388. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_datep (datep);
  389. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_datep2 (datep2);
  390. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_recurid (recurid);
  391. ALTER TABLE llx_actioncomm ADD INDEX idx_actioncomm_ref_ext (ref_ext);
  392. ALTER TABLE llx_payment_various ADD COLUMN fk_projet integer DEFAULT NULL after accountancy_code;
  393. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_MESSAGE_OK')__ where name = __ENCRYPT('PAYPAL_MESSAGE_OK')__;
  394. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_MESSAGE_KO')__ where name = __ENCRYPT('PAYPAL_MESSAGE_KO')__;
  395. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_CREDITOR')__ where name = __ENCRYPT('PAYPAL_CREDITOR')__;
  396. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_CSS_URL')__ where name = __ENCRYPT('PAYPAL_CSS_URL')__;
  397. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_NEWFORMTEXT')__ where name = __ENCRYPT('PAYPAL_NEWFORMTEXT')__;
  398. UPDATE llx_const set name = __ENCRYPT('ONLINE_PAYMENT_LOGO')__ where name = __ENCRYPT('PAYPAL_LOGO')__;
  399. ALTER TABLE llx_accounting_system ADD COLUMN fk_country integer;
  400. UPDATE llx_accounting_account SET pcg_type = 'INCOME' where pcg_type = 'PROD';
  401. UPDATE llx_accounting_account SET pcg_type = 'EXPENSE' where pcg_type = 'CHARGE';
  402. UPDATE llx_accounting_account SET pcg_type = 'INCOME' where pcg_type = 'VENTAS_E_INGRESOS';
  403. UPDATE llx_accounting_account SET pcg_type = 'EXPENSE' where pcg_type = 'COMPRAS_GASTOS';
  404. ALTER TABLE llx_c_action_trigger MODIFY COLUMN elementtype varchar(24) NOT NULL;
  405. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('CONTRACT_SENTBYMAIL','Contract sent by mail','Executed when a contract is sent by mail','contrat',18);
  406. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPOSAL_SUPPLIER_VALIDATE','Price request validated','Executed when a commercial proposal is validated','proposal_supplier',10);
  407. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPOSAL_SUPPLIER_SENTBYMAIL','Price request sent by mail','Executed when a commercial proposal is sent by mail','proposal_supplier',10);
  408. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPOSAL_SUPPLIER_CLOSE_SIGNED','Price request closed signed','Executed when a customer proposal is closed signed','proposal_supplier',10);
  409. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PROPOSAL_SUPPLIER_CLOSE_REFUSED','Price request closed refused','Executed when a customer proposal is closed refused','proposal_supplier',10);
  410. DROP TABLE llx_projet_task_comment;
  411. CREATE TABLE llx_comment (
  412. rowid integer AUTO_INCREMENT PRIMARY KEY,
  413. datec datetime DEFAULT NULL,
  414. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  415. description text NOT NULL,
  416. fk_user_author integer DEFAULT NULL,
  417. fk_element integer DEFAULT NULL,
  418. element_type varchar(50) DEFAULT NULL,
  419. entity integer DEFAULT 1,
  420. import_key varchar(125) DEFAULT NULL
  421. )ENGINE=innodb;
  422. DELETE FROM llx_const where name = __ENCRYPT('MAIN_SHOW_WORKBOARD')__;
  423. -- Adherent - Update old constants
  424. UPDATE llx_const SET value = REPLACE(value, '%', '__') WHERE name LIKE 'ADHERENT%';
  425. -- Accountancy - Remove old constants
  426. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_SELL_JOURNAL')__;
  427. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_PURCHASE_JOURNAL')__;
  428. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_SOCIAL_JOURNAL')__;
  429. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_MISCELLANEOUS_JOURNAL')__;
  430. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_GROUPBYACCOUNT')__;
  431. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPORT_GLOBAL_ACCOUNT')__;
  432. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPORT_LABEL')__;
  433. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPORT_AMOUNT')__;
  434. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPORT_DEVISE')__;
  435. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPORT_PIECE')__;
  436. DELETE FROM llx_const WHERE name = __ENCRYPT('ACCOUNTING_EXPENSEREPORT_JOURNAL')__;
  437. -- VMYSQL4.1 ALTER TABLE llx_c_paiement DROP PRIMARY KEY;
  438. ALTER TABLE llx_c_paiement ADD COLUMN entity integer DEFAULT 1 NOT NULL AFTER id;
  439. ALTER TABLE llx_c_paiement DROP INDEX uk_c_paiement;
  440. ALTER TABLE llx_c_paiement ADD UNIQUE INDEX uk_c_paiement(id, entity, code);
  441. -- VMYSQL4.1 ALTER TABLE llx_c_payment_term DROP PRIMARY KEY;
  442. ALTER TABLE llx_c_payment_term ADD COLUMN entity integer DEFAULT 1 NOT NULL AFTER rowid;
  443. ALTER TABLE llx_c_payment_term ADD UNIQUE INDEX uk_c_payment_term(rowid, entity, code);
  444. ALTER TABLE llx_projet CHANGE datec datec datetime;
  445. create table llx_c_email_senderprofile
  446. (
  447. rowid integer AUTO_INCREMENT PRIMARY KEY,
  448. entity integer DEFAULT 1 NOT NULL, -- multi company id
  449. private smallint DEFAULT 0 NOT NULL, -- Template public or private
  450. date_creation datetime,
  451. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  452. label varchar(255), -- Label of predefined email
  453. email varchar(255), -- Email
  454. signature text, -- Predefined signature
  455. position smallint, -- Position
  456. active tinyint DEFAULT 1 NOT NULL
  457. )ENGINE=innodb;
  458. ALTER TABLE llx_c_email_senderprofile ADD UNIQUE INDEX uk_c_email_senderprofile(entity, label, email);
  459. -- Add new chart of account entries
  460. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 67,'PC-MIPYME', 'The PYME accountancy Chile plan', 1);
  461. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 7,'ENG-BASE', 'England plan', 1);
  462. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 49,'SYSCOHADA-BJ', 'Plan comptable Ouest-Africain', 1);
  463. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 60,'SYSCOHADA-BF', 'Plan comptable Ouest-Africain', 1);
  464. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 24,'SYSCOHADA-CM', 'Plan comptable Ouest-Africain', 1);
  465. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 65,'SYSCOHADA-CF', 'Plan comptable Ouest-Africain', 1);
  466. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 71,'SYSCOHADA-KM', 'Plan comptable Ouest-Africain', 1);
  467. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 72,'SYSCOHADA-CG', 'Plan comptable Ouest-Africain', 1);
  468. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 21,'SYSCOHADA-CI', 'Plan comptable Ouest-Africain', 1);
  469. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 16,'SYSCOHADA-GA', 'Plan comptable Ouest-Africain', 1);
  470. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 87,'SYSCOHADA-GQ', 'Plan comptable Ouest-Africain', 1);
  471. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (147,'SYSCOHADA-ML', 'Plan comptable Ouest-Africain', 1);
  472. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (168,'SYSCOHADA-NE', 'Plan comptable Ouest-Africain', 1);
  473. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 73,'SYSCOHADA-CD', 'Plan comptable Ouest-Africain', 1);
  474. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 22,'SYSCOHADA-SN', 'Plan comptable Ouest-Africain', 1);
  475. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 66,'SYSCOHADA-TD', 'Plan comptable Ouest-Africain', 1);
  476. INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 15,'SYSCOHADA-TG', 'Plan comptable Ouest-Africain', 1);
  477. -- Update old chart of account entries
  478. UPDATE llx_accounting_system SET fk_country = 1 WHERE pcg_version = 'PCG99-ABREGE';
  479. UPDATE llx_accounting_system SET fk_country = 1 WHERE pcg_version = 'PCG99-BASE';
  480. UPDATE llx_accounting_system SET fk_country = 1 WHERE pcg_version = 'PCG14-DEV';
  481. UPDATE llx_accounting_system SET fk_country = 2 WHERE pcg_version = 'PCMN-BASE';
  482. UPDATE llx_accounting_system SET fk_country = 4 WHERE pcg_version = 'PCG08-PYME';
  483. UPDATE llx_accounting_system SET fk_country = 10 WHERE pcg_version = 'PCT';
  484. UPDATE llx_accounting_system SET fk_country = 80 WHERE pcg_version = 'DK-STD';
  485. UPDATE llx_accounting_system SET fk_country = 67 WHERE pcg_version = 'PC-MIPYME';
  486. UPDATE llx_accounting_system SET fk_country = 6 WHERE pcg_version = 'PCG_SUISSE';
  487. UPDATE llx_accounting_system SET fk_country =140 WHERE pcg_version = 'PCN-LUXEMBURG';
  488. UPDATE llx_accounting_system SET fk_country = 12 WHERE pcg_version = 'PCG';
  489. CREATE TABLE llx_actioncomm_reminder(
  490. -- BEGIN MODULEBUILDER FIELDS
  491. rowid integer AUTO_INCREMENT PRIMARY KEY NOT NULL,
  492. dateremind datetime NOT NULL,
  493. typeremind varchar(32) NOT NULL,
  494. fk_user integer NOT NULL,
  495. offsetvalue integer NOT NULL,
  496. offsetunit varchar(1) NOT NULL,
  497. status integer NOT NULL DEFAULT 0
  498. -- END MODULEBUILDER FIELDS
  499. ) ENGINE=innodb;
  500. ALTER TABLE llx_actioncomm_reminder ADD INDEX idx_actioncomm_reminder_rowid (rowid);
  501. ALTER TABLE llx_actioncomm_reminder ADD INDEX idx_actioncomm_reminder_dateremind (dateremind);
  502. ALTER TABLE llx_actioncomm_reminder ADD INDEX idx_actioncomm_reminder_fk_user (fk_user);
  503. ALTER TABLE llx_actioncomm_reminder ADD UNIQUE INDEX uk_actioncomm_reminder_unique(fk_user, typeremind, offsetvalue, offsetunit);
  504. UPDATE llx_tva SET datec = tms where datec IS NULL;
  505. -- VPGSQL8.2 CREATE SEQUENCE llx_supplier_proposal_rowid_seq;
  506. -- VPGSQL8.2 ALTER TABLE llx_supplier_proposal ALTER COLUMN rowid SET DEFAULT nextval('llx_supplier_proposal_rowid_seq');
  507. -- VPGSQL8.2 ALTER TABLE llx_supplier_proposal ALTER COLUMN rowid SET NOT NULL;
  508. -- VPGSQL8.2 SELECT setval('llx_supplier_proposal_rowid_seq', (SELECT MAX(rowid) FROM llx_supplier_proposal));
  509. -- VPGSQL8.2 CREATE SEQUENCE llx_supplier_proposaldet_rowid_seq;
  510. -- VPGSQL8.2 ALTER TABLE llx_supplier_proposaldet ALTER COLUMN rowid SET DEFAULT nextval('llx_supplier_proposaldet_rowid_seq');
  511. -- VPGSQL8.2 ALTER TABLE llx_supplier_proposaldet ALTER COLUMN rowid SET NOT NULL;
  512. -- VPGSQL8.2 SELECT setval('llx_supplier_proposaldet_rowid_seq', (SELECT MAX(rowid) FROM llx_supplier_proposaldet));
  513. create table llx_onlinesignature
  514. (
  515. rowid integer AUTO_INCREMENT PRIMARY KEY,
  516. entity integer DEFAULT 1 NOT NULL,
  517. object_type varchar(32) NOT NULL,
  518. object_id integer NOT NULL,
  519. datec datetime NOT NULL,
  520. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  521. name varchar(255) NOT NULL,
  522. ip varchar(128),
  523. pathoffile varchar(255)
  524. )ENGINE=innodb;
  525. -- May have error due to duplicate keys
  526. ALTER TABLE llx_resource ADD UNIQUE INDEX uk_resource_ref (ref, entity);
  527. ALTER TABLE llx_facture_rec ADD COLUMN modelpdf varchar(255) AFTER note_public;
  528. ALTER TABLE llx_facture_rec ADD COLUMN generate_pdf integer DEFAULT 1 AFTER auto_validate;
  529. ALTER TABLE llx_blockedlog ADD COLUMN date_creation datetime;
  530. ALTER TABLE llx_blockedlog ADD COLUMN user_fullname varchar(255);
  531. ALTER TABLE llx_blockedlog MODIFY COLUMN ref_object varchar(255);
  532. -- SPEC : use database type 'double' to store monetary values
  533. ALTER TABLE llx_blockedlog MODIFY COLUMN amounts double(24,8) NOT NULL;
  534. ALTER TABLE llx_chargesociales MODIFY COLUMN amount double(24,8);
  535. ALTER TABLE llx_commande MODIFY COLUMN amount_ht double(24,8) default 0;
  536. ALTER TABLE llx_commande_fournisseur MODIFY COLUMN amount_ht double(24,8);
  537. ALTER TABLE llx_don MODIFY COLUMN amount double(24,8);
  538. ALTER TABLE llx_expensereport_rules MODIFY COLUMN amount double(24,8);
  539. ALTER TABLE llx_loan MODIFY COLUMN capital double(24,8);
  540. ALTER TABLE llx_loan MODIFY COLUMN capital_position double(24,8);
  541. ALTER TABLE llx_loan_schedule MODIFY COLUMN amount_capital double(24,8);
  542. ALTER TABLE llx_loan_schedule MODIFY COLUMN amount_insurance double(24,8);
  543. ALTER TABLE llx_loan_schedule MODIFY COLUMN amount_interest double(24,8);
  544. ALTER TABLE llx_paiementcharge MODIFY COLUMN amount double(24,8);
  545. ALTER TABLE llx_paiementfourn MODIFY COLUMN amount double(24,8);
  546. ALTER TABLE llx_payment_donation MODIFY COLUMN amount double(24,8);
  547. ALTER TABLE llx_payment_expensereport MODIFY COLUMN amount double(24,8);
  548. ALTER TABLE llx_payment_loan MODIFY COLUMN amount_capital double(24,8);
  549. ALTER TABLE llx_payment_loan MODIFY COLUMN amount_insurance double(24,8);
  550. ALTER TABLE llx_payment_loan MODIFY COLUMN amount_interest double(24,8);
  551. ALTER TABLE llx_payment_salary MODIFY COLUMN salary double(24,8);
  552. ALTER TABLE llx_payment_salary MODIFY COLUMN amount double(24,8);
  553. ALTER TABLE llx_prelevement_bons MODIFY COLUMN amount double(24,8);
  554. ALTER TABLE llx_prelevement_facture_demande MODIFY COLUMN amount double(24,8);
  555. ALTER TABLE llx_prelevement_lignes MODIFY COLUMN amount double(24,8);
  556. ALTER TABLE llx_societe MODIFY COLUMN capital double(24,8);
  557. ALTER TABLE llx_tva MODIFY COLUMN amount double(24,8);
  558. ALTER TABLE llx_subscription MODIFY COLUMN subscription double(24,8);
  559. ALTER TABLE llx_resource ADD fk_country integer DEFAULT NULL;
  560. ALTER TABLE llx_resource ADD INDEX idx_resource_fk_country (fk_country);
  561. ALTER TABLE llx_resource ADD CONSTRAINT fk_resource_fk_country FOREIGN KEY (fk_country) REFERENCES llx_c_country (rowid);
  562. create table llx_facture_rec_extrafields
  563. (
  564. rowid integer AUTO_INCREMENT PRIMARY KEY,
  565. tms timestamp DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  566. fk_object integer NOT NULL,
  567. import_key varchar(14) -- import key
  568. ) ENGINE=innodb;
  569. ALTER TABLE llx_facture_rec_extrafields ADD INDEX idx_facture_rec_extrafields (fk_object);
  570. -- VMYSQL4.1 ALTER TABLE llx_product_association ADD COLUMN rowid integer AUTO_INCREMENT PRIMARY KEY;
  571. -- drop very old table (bad name)
  572. DROP TABLE llx_c_accountancy_category;
  573. UPDATE llx_cronjob set entity = 1 where entity = 0 and label in ('RecurringInvoices', 'SendEmailsReminders');
  574. UPDATE llx_cronjob set entity = 0 where entity = 1 and label in ('PurgeDeleteTemporaryFilesShort', 'MakeLocalDatabaseDumpShort');
  575. -- VMYSQL4.3 ALTER TABLE llx_c_shipment_mode MODIFY COLUMN tracking varchar(255) NULL;
  576. -- VPGSQL8.2 ALTER TABLE llx_c_shipment_mode ALTER COLUMN tracking DROP NOT NULL;
  577. ALTER TABLE llx_paiementfourn ADD COLUMN fk_user_modif integer AFTER fk_user_author;