5.0.0-6.0.0.sql 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. --
  2. -- Be carefull to requests order.
  3. -- This file must be loaded by calling /install/index.php page
  4. -- when current version is 5.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. -- Clean corrupted values for tms
  27. -- VMYSQL4.1 SET sql_mode = 'ALLOW_INVALID_DATES';
  28. -- VMYSQL4.1 update llx_opensurvey_sondage set tms = date_fin where DATE(STR_TO_DATE(tms, '%Y-%m-%d')) IS NULL;
  29. -- VMYSQL4.1 SET sql_mode = 'NO_ZERO_DATE';
  30. -- VMYSQL4.1 update llx_opensurvey_sondage set tms = date_fin where DATE(STR_TO_DATE(tms, '%Y-%m-%d')) IS NULL;
  31. -- Remove default not null on date_fin
  32. -- VMYSQL4.3 ALTER TABLE llx_opensurvey_sondage MODIFY COLUMN date_fin DATETIME NULL DEFAULT NULL;
  33. -- VPGSQL8.2 ALTER TABLE llx_opensurvey_sondage ALTER COLUMN date_fin DROP NOT NULL;
  34. ALTER TABLE llx_extrafields ADD COLUMN fieldcomputed text;
  35. ALTER TABLE llx_extrafields ADD COLUMN fielddefault varchar(255);
  36. ALTER TABLE llx_opensurvey_sondage MODIFY COLUMN tms timestamp DEFAULT CURRENT_TIMESTAMP;
  37. ALTER TABLE llx_opensurvey_sondage ADD COLUMN fk_user_creat integer NOT NULL DEFAULT 0;
  38. ALTER TABLE llx_opensurvey_sondage ADD COLUMN status integer DEFAULT 1 after date_fin;
  39. ALTER TABLE llx_opensurvey_sondage ADD COLUMN entity integer DEFAULT 1 NOT NULL;
  40. ALTER TABLE llx_opensurvey_sondage ADD COLUMN allow_comments tinyint NOT NULL DEFAULT 1;
  41. ALTER TABLE llx_opensurvey_sondage ADD COLUMN allow_spy tinyint NOT NULL DEFAULT 1 AFTER allow_comments;
  42. ALTER TABLE llx_opensurvey_sondage ADD COLUMN sujet TEXT;
  43. create table llx_notify_def_object
  44. (
  45. id integer AUTO_INCREMENT PRIMARY KEY,
  46. entity integer DEFAULT 1 NOT NULL, -- multi company id
  47. objet_type varchar(16), -- 'actioncomm'
  48. objet_id integer NOT NULL, -- id of parent key
  49. type_notif varchar(16) DEFAULT 'browser', -- 'browser', 'email', 'sms', 'webservice', ...
  50. date_notif datetime, -- date notification
  51. user_id integer, -- notification is for this user
  52. moreparam varchar(255)
  53. )ENGINE=innodb;
  54. ALTER TABLE llx_facturedet_rec ADD COLUMN vat_src_code varchar(10) DEFAULT '' AFTER tva_tx;
  55. ALTER TABLE llx_extrafields ADD COLUMN langs varchar(24);
  56. ALTER TABLE llx_supplier_proposaldet ADD COLUMN fk_unit integer DEFAULT NULL;
  57. ALTER TABLE llx_ecm_files ADD COLUMN ref varchar(128) AFTER rowid;
  58. ALTER TABLE llx_ecm_files CHANGE COLUMN fullpath filepath varchar(255);
  59. ALTER TABLE llx_ecm_files CHANGE COLUMN filepath filepath varchar(255);
  60. ALTER TABLE llx_ecm_files ADD COLUMN position integer;
  61. ALTER TABLE llx_ecm_files ADD COLUMN keyword varchar(750);
  62. ALTER TABLE llx_ecm_files CHANGE COLUMN keyword keyword varchar(750);
  63. ALTER TABLE llx_ecm_files ADD COLUMN gen_or_uploaded varchar(12);
  64. ALTER TABLE llx_ecm_files DROP INDEX uk_ecm_files;
  65. ALTER TABLE llx_ecm_files ADD UNIQUE INDEX uk_ecm_files (filepath, filename, entity);
  66. ALTER TABLE llx_ecm_files ADD INDEX idx_ecm_files_label (label);
  67. ALTER TABLE llx_holiday ADD COLUMN import_key varchar(14);
  68. ALTER TABLE llx_holiday ADD COLUMN extraparams varchar(255);
  69. ALTER TABLE llx_expedition ADD COLUMN fk_projet integer DEFAULT NULL after fk_soc;
  70. ALTER TABLE llx_expensereport ADD COLUMN import_key varchar(14);
  71. ALTER TABLE llx_expensereport ADD COLUMN extraparams varchar(255);
  72. ALTER TABLE llx_bank_account ADD COLUMN extraparams varchar(255);
  73. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PRODUCT_CREATE','Product or service created','Executed when a product or sevice is created','product',30);
  74. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PRODUCT_MODIFY','Product or service modified','Executed when a product or sevice is modified','product',30);
  75. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('PRODUCT_DELETE','Product or service deleted','Executed when a product or sevice is deleted','product',30);
  76. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_CREATE','Expense report created','Executed when an expense report is created','expense_report',201);
  77. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expense_report',202);
  78. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expense_report',203);
  79. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAYED','Expense report billed','Executed when an expense report is set as billed','expense_report',204);
  80. ALTER TABLE llx_c_email_templates ADD COLUMN content_lines text;
  81. ALTER TABLE llx_loan ADD COLUMN fk_projet integer DEFAULT NULL;
  82. ALTER TABLE llx_holiday ADD COLUMN fk_user_modif integer;
  83. ALTER TABLE llx_projet ADD COLUMN fk_user_modif integer;
  84. ALTER TABLE llx_projet_task_time ADD COLUMN datec date;
  85. ALTER TABLE llx_projet_task_time ADD COLUMN tms timestamp;
  86. ALTER TABLE llx_product_price_by_qty ADD COLUMN fk_user_creat integer;
  87. ALTER TABLE llx_product_price_by_qty ADD COLUMN fk_user_modif integer;
  88. ALTER TABLE llx_product_price_by_qty DROP COLUMN date_price;
  89. ALTER TABLE llx_product_price_by_qty ADD COLUMN tms timestamp;
  90. ALTER TABLE llx_product_price_by_qty ADD COLUMN import_key varchar(14);
  91. ALTER TABLE llx_user ADD COLUMN import_key varchar(14);
  92. CREATE TABLE llx_product_attribute
  93. (
  94. rowid INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
  95. ref VARCHAR(255) NOT NULL,
  96. label VARCHAR(255) NOT NULL,
  97. rang INT DEFAULT 0 NOT NULL,
  98. entity INT DEFAULT 1 NOT NULL
  99. );
  100. ALTER TABLE llx_product_attribute ADD CONSTRAINT unique_ref UNIQUE (ref);
  101. CREATE TABLE llx_product_attribute_value
  102. (
  103. rowid INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
  104. fk_product_attribute INT NOT NULL,
  105. ref VARCHAR(255) DEFAULT NULL,
  106. value VARCHAR(255) DEFAULT NULL,
  107. entity INT DEFAULT 1 NOT NULL
  108. );
  109. ALTER TABLE llx_product_attribute_value ADD CONSTRAINT unique_ref UNIQUE (fk_product_attribute,ref);
  110. CREATE TABLE llx_product_attribute_combination2val
  111. (
  112. rowid INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
  113. fk_prod_combination INT NOT NULL,
  114. fk_prod_attr INT NOT NULL,
  115. fk_prod_attr_val INT NOT NULL
  116. );
  117. CREATE TABLE llx_product_attribute_combination
  118. (
  119. rowid INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
  120. fk_product_parent INT NOT NULL,
  121. fk_product_child INT NOT NULL,
  122. variation_price FLOAT NOT NULL,
  123. variation_price_percentage INT NULL,
  124. variation_weight FLOAT NOT NULL,
  125. entity INT DEFAULT 1 NOT NULL
  126. );
  127. ALTER TABLE llx_bank_account drop foreign key bank_fk_accountancy_journal;
  128. -- Fix missing entity column after init demo
  129. ALTER TABLE llx_accounting_journal ADD COLUMN entity integer DEFAULT 1;
  130. -- Add journal entries
  131. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (1,'VT', 'Sale journal', 2, 1);
  132. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (2,'AC', 'Purchase journal', 3, 1);
  133. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (3,'BQ', 'Bank journal', 4, 1);
  134. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (4,'OD', 'Other journal', 1, 1);
  135. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (5,'AN', 'Has new journal', 9, 1);
  136. INSERT INTO llx_accounting_journal (rowid, code, label, nature, active) VALUES (6,'ER', 'Expense report journal', 5, 1);
  137. -- Fix old entries
  138. UPDATE llx_accounting_journal SET nature = 1 where code = 'OD' and nature = 0;
  139. UPDATE llx_accounting_journal SET nature = 2 where code = 'VT' and nature = 1;
  140. UPDATE llx_accounting_journal SET nature = 3 where code = 'AC' and nature = 2;
  141. UPDATE llx_accounting_journal SET nature = 4 where (code = 'BK' or code = 'BQ') and nature = 3;
  142. UPDATE llx_bank_account as ba set accountancy_journal = 'BQ' where accountancy_journal = 'BK';
  143. UPDATE llx_bank_account as ba set accountancy_journal = 'OD' where accountancy_journal IS NULL;
  144. ALTER TABLE llx_bank_account ADD COLUMN fk_accountancy_journal integer;
  145. ALTER TABLE llx_bank_account ADD INDEX idx_fk_accountancy_journal (fk_accountancy_journal);
  146. UPDATE llx_bank_account as ba set fk_accountancy_journal = (SELECT rowid FROM llx_accounting_journal as aj where ba.accountancy_journal = aj.code) where accountancy_journal not in ('1', '2', '3', '4', '5', '6', '5', '8', '9', '10', '11', '12', '13', '14', '15');
  147. ALTER TABLE llx_bank_account ADD CONSTRAINT fk_bank_account_accountancy_journal FOREIGN KEY (fk_accountancy_journal) REFERENCES llx_accounting_journal (rowid);
  148. --Update general ledger for FEC format & harmonization
  149. ALTER TABLE llx_accounting_bookkeeping MODIFY COLUMN code_tiers varchar(32);
  150. ALTER TABLE llx_accounting_bookkeeping MODIFY COLUMN label_compte varchar(255);
  151. ALTER TABLE llx_accounting_bookkeeping MODIFY COLUMN code_journal varchar(32);
  152. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN thirdparty_label varchar(255) AFTER code_tiers;
  153. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN label_operation varchar(255) AFTER label_compte;
  154. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN multicurrency_amount double AFTER sens;
  155. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN multicurrency_code varchar(255) AFTER multicurrency_amount;
  156. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN lettering_code varchar(255) AFTER multicurrency_code;
  157. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN date_lettering datetime AFTER lettering_code;
  158. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN journal_label varchar(255) AFTER code_journal;
  159. ALTER TABLE llx_accounting_bookkeeping ADD COLUMN date_validated datetime AFTER validated;
  160. ALTER TABLE llx_paiementfourn ADD COLUMN model_pdf varchar(255);
  161. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_CREATE','Expense report created','Executed when an expense report is created','expensereport',201);
  162. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_VALIDATE','Expense report validated','Executed when an expense report is validated','expensereport',202);
  163. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_APPROVE','Expense report approved','Executed when an expense report is approved','expensereport',203);
  164. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('EXPENSE_REPORT_PAYED','Expense report billed','Executed when an expense report is set as billed','expensereport',204);
  165. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_CREATE' ,'Leave request created','Executed when a leave request is created','holiday',221);
  166. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_VALIDATE','Leave request validated','Executed when a leave request is validated','holiday',222);
  167. insert into llx_c_action_trigger (code,label,description,elementtype,rang) values ('HOLIDAY_APPROVE' ,'Leave request approved','Executed when a leave request is approved','holiday',223);
  168. ALTER TABLE llx_societe_remise_except ADD COLUMN fk_invoice_supplier_line integer;
  169. ALTER TABLE llx_societe_remise_except ADD COLUMN fk_invoice_supplier integer;
  170. ALTER TABLE llx_societe_remise_except ADD COLUMN fk_invoice_supplier_source integer;
  171. ALTER TABLE llx_societe_remise_except ADD CONSTRAINT fk_soc_remise_fk_invoice_supplier_line FOREIGN KEY (fk_invoice_supplier_line) REFERENCES llx_facture_fourn_det (rowid);
  172. ALTER TABLE llx_societe_remise_except ADD CONSTRAINT fk_societe_remise_fk_invoice_supplier FOREIGN KEY (fk_invoice_supplier) REFERENCES llx_facture_fourn (rowid);
  173. ALTER TABLE llx_societe_remise_except ADD CONSTRAINT fk_societe_remise_fk_invoice_supplier_source FOREIGN KEY (fk_invoice_supplier) REFERENCES llx_facture_fourn (rowid);
  174. ALTER TABLE llx_facture_rec ADD COLUMN vat_src_code varchar(10) DEFAULT '';
  175. DELETE FROM llx_const WHERE name = __ENCRYPT('ADHERENT_BANK_USE_AUTO')__;
  176. UPDATE llx_const SET value = __ENCRYPT('moono-lisa')__ WHERE value = __ENCRYPT('moono')__ AND name = __ENCRYPT('FCKEDITOR_SKIN')__;
  177. ALTER TABLE llx_product_price ADD COLUMN default_vat_code varchar(10) AFTER tva_tx;
  178. ALTER TABLE llx_product_fournisseur_price ADD COLUMN default_vat_code varchar(10) AFTER tva_tx;
  179. ALTER TABLE llx_user ADD COLUMN model_pdf varchar(255);
  180. ALTER TABLE llx_usergroup ADD COLUMN model_pdf varchar(255);
  181. INSERT INTO llx_const (name, entity, value, type, visible, note) VALUES (__ENCRYPT('PRODUCT_ADDON_PDF_ODT_PATH')__, 1, __ENCRYPT('DOL_DATA_ROOT/doctemplates/products')__, 'chaine', 0, '');
  182. INSERT INTO llx_const (name, entity, value, type, visible, note) VALUES (__ENCRYPT('CONTRACT_ADDON_PDF_ODT_PATH')__, 1, __ENCRYPT('DOL_DATA_ROOT/doctemplates/contracts')__, 'chaine', 0, '');
  183. INSERT INTO llx_const (name, entity, value, type, visible, note) VALUES (__ENCRYPT('USERGROUP_ADDON_PDF_ODT_PATH')__, 1, __ENCRYPT('DOL_DATA_ROOT/doctemplates/usergroups')__, 'chaine', 0, '');
  184. INSERT INTO llx_const (name, entity, value, type, visible, note) VALUES (__ENCRYPT('USER_ADDON_PDF_ODT_PATH')__, 1, __ENCRYPT('DOL_DATA_ROOT/doctemplates/users')__, 'chaine', 0, '');
  185. INSERT INTO llx_const (name, entity, value, type, visible, note) VALUES (__ENCRYPT('MAIN_ENABLE_OVERWRITE_TRANSLATION')__, 1, __ENCRYPT('1')__, 'chaine', 0, 'Enable overwrote of translation');
  186. ALTER TABLE llx_chargesociales ADD COLUMN ref varchar(16);
  187. ALTER TABLE llx_chargesociales ADD COLUMN fk_projet integer DEFAULT NULL;
  188. ALTER TABLE llx_cronjob ADD COLUMN processing integer NOT NULL DEFAULT 0;
  189. ALTER TABLE llx_website ADD COLUMN fk_user_create integer;
  190. ALTER TABLE llx_website ADD COLUMN fk_user_modif integer;
  191. -- Add missing fields making not possible to enter reference price of products into another currency
  192. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
  193. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_price_ttc double(24,8) DEFAULT NULL;
  194. ALTER TABLE llx_product_fournisseur_price ADD COLUMN fk_multicurrency integer;
  195. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_code varchar(255);
  196. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
  197. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_price double(24,8) DEFAULT NULL;
  198. ALTER TABLE llx_product_fournisseur_price ADD COLUMN multicurrency_price_ttc double(24,8) DEFAULT NULL;
  199. ALTER TABLE llx_product_fournisseur_price_log ADD COLUMN fk_multicurrency integer;
  200. ALTER TABLE llx_product_fournisseur_price_log ADD COLUMN multicurrency_code varchar(255);
  201. ALTER TABLE llx_product_fournisseur_price_log ADD COLUMN multicurrency_tx double(24,8) DEFAULT 1;
  202. ALTER TABLE llx_product_fournisseur_price_log ADD COLUMN multicurrency_price double(24,8) DEFAULT NULL;
  203. ALTER TABLE llx_product_fournisseur_price_log ADD COLUMN multicurrency_price_ttc double(24,8) DEFAULT NULL;
  204. create table llx_payment_various
  205. (
  206. rowid integer AUTO_INCREMENT PRIMARY KEY,
  207. tms timestamp,
  208. datec datetime,
  209. datep date,
  210. datev date,
  211. sens smallint DEFAULT 0 NOT NULL,
  212. amount double(24,8) DEFAULT 0 NOT NULL,
  213. fk_typepayment integer NOT NULL,
  214. num_payment varchar(50),
  215. label varchar(255),
  216. accountancy_code varchar(32),
  217. entity integer DEFAULT 1 NOT NULL,
  218. note text,
  219. fk_bank integer,
  220. fk_user_author integer,
  221. fk_user_modif integer
  222. )ENGINE=innodb;
  223. create table llx_default_values
  224. (
  225. rowid integer AUTO_INCREMENT PRIMARY KEY,
  226. entity integer DEFAULT 1 NOT NULL, -- multi company id
  227. type varchar(10), -- 'createform', 'filters', 'sortorder'
  228. user_id integer DEFAULT 0 NOT NULL, -- 0 or user id
  229. page varchar(255), -- relative url of page
  230. param varchar(255), -- parameter
  231. value varchar(128) -- value
  232. )ENGINE=innodb;
  233. ALTER TABLE llx_default_values ADD UNIQUE INDEX uk_default_values(type, entity, user_id, page, param);
  234. ALTER TABLE llx_supplier_proposaldet ADD INDEX idx_supplier_proposaldet_fk_supplier_proposal (fk_supplier_proposal);
  235. ALTER TABLE llx_supplier_proposaldet ADD INDEX idx_supplier_proposaldet_fk_product (fk_product);
  236. UPDATE llx_supplier_proposaldet SET fk_unit = NULL where fk_unit not in (SELECT rowid from llx_c_units);
  237. ALTER TABLE llx_supplier_proposaldet ADD CONSTRAINT fk_supplier_proposaldet_fk_unit FOREIGN KEY (fk_unit) REFERENCES llx_c_units (rowid);
  238. ALTER TABLE llx_supplier_proposaldet ADD CONSTRAINT fk_supplier_proposaldet_fk_supplier_proposal FOREIGN KEY (fk_supplier_proposal) REFERENCES llx_supplier_proposal (rowid);
  239. -- NEW inventory module
  240. CREATE TABLE llx_inventory
  241. (
  242. rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY,
  243. datec datetime DEFAULT NULL,
  244. tms timestamp,
  245. fk_warehouse integer DEFAULT 0,
  246. entity integer DEFAULT 0,
  247. status integer DEFAULT 0,
  248. title varchar(255) NOT NULL,
  249. date_inventory datetime DEFAULT NULL
  250. )
  251. ENGINE=InnoDB;
  252. CREATE TABLE llx_inventorydet
  253. (
  254. rowid integer NOT NULL AUTO_INCREMENT PRIMARY KEY,
  255. datec datetime DEFAULT NULL,
  256. tms timestamp,
  257. fk_inventory integer DEFAULT 0,
  258. fk_warehouse integer DEFAULT 0,
  259. fk_product integer DEFAULT 0,
  260. batch varchar(30) DEFAULT NULL,
  261. qty_view double DEFAULT NULL,
  262. qty_stock double DEFAULT NULL,
  263. qty_regulated double DEFAULT NULL,
  264. pmp double DEFAULT 0,
  265. pa double DEFAULT 0,
  266. new_pmp double DEFAULT 0
  267. )
  268. ENGINE=InnoDB;
  269. ALTER TABLE llx_inventory ADD INDEX idx_inventory_tms (tms);
  270. ALTER TABLE llx_inventory ADD INDEX idx_inventory_datec (datec);
  271. ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_tms (tms);
  272. ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_datec (datec);
  273. ALTER TABLE llx_inventorydet ADD INDEX idx_inventorydet_fk_inventory (fk_inventory);
  274. insert into llx_c_tva(fk_pays,taux,code,recuperableonly,note,active) values (1, '8.5', '85', '0','VAT standard rate (DOM sauf Guyane et Saint-Martin)',0);
  275. insert into llx_c_tva(fk_pays,taux,code,recuperableonly,note,active) values (1, '8.5', '85NPR', '1','VAT standard rate (DOM sauf Guyane et Saint-Martin), non perçu par le vendeur mais récupérable par acheteur',0);
  276. insert into llx_c_tva(fk_pays,taux,code,recuperableonly,localtax1,localtax1_type,note,active) values (1, '8.5', '85NPROM', '1', 2, 3, 'VAT standard rate (DOM sauf Guyane et Saint-Martin), NPR, Octroi de Mer',0);
  277. insert into llx_c_tva(fk_pays,taux,code,recuperableonly,localtax1,localtax1_type,localtax2,localtax2_type,note,active) values (1, '8.5', '85NPROMOMR', '1', 2, 3, 2.5, 3, 'VAT standard rate (DOM sauf Guyane et Saint-Martin), NPR, Octroi de Mer et Octroi de Mer Regional',0);
  278. ALTER TABLE llx_events MODIFY COLUMN ip varchar(250);
  279. ALTER TABLE llx_facture ADD COLUMN fk_fac_rec_source integer;
  280. DELETE from llx_c_actioncomm where code in ('AC_PROP','AC_COM','AC_FAC','AC_SHIP','AC_SUP_ORD','AC_SUP_INV') AND id NOT IN (SELECT DISTINCT fk_action FROM llx_actioncomm);
  281. -- Fix: delete orphelin category.
  282. delete from llx_categorie_product where fk_categorie not in (select rowid from llx_categorie where type = 0);
  283. delete from llx_categorie_societe where fk_categorie not in (select rowid from llx_categorie where type in (1, 2));
  284. delete from llx_categorie_member where fk_categorie not in (select rowid from llx_categorie where type = 3);
  285. delete from llx_categorie_contact where fk_categorie not in (select rowid from llx_categorie where type = 4);
  286. delete from llx_categorie_project where fk_categorie not in (select rowid from llx_categorie where type = 5);
  287. ALTER TABLE llx_inventory ADD COLUMN ref varchar(48);
  288. create table llx_loan_schedule
  289. (
  290. rowid integer AUTO_INCREMENT PRIMARY KEY,
  291. fk_loan integer,
  292. datec datetime,
  293. tms timestamp,
  294. datep datetime,
  295. amount_capital real DEFAULT 0,
  296. amount_insurance real DEFAULT 0,
  297. amount_interest real DEFAULT 0,
  298. fk_typepayment integer NOT NULL,
  299. num_payment varchar(50),
  300. note_private text,
  301. note_public text,
  302. fk_bank integer NOT NULL,
  303. fk_user_creat integer,
  304. fk_user_modif integer
  305. )ENGINE=innodb;
  306. ALTER TABLE llx_tva ADD COLUMN datec date AFTER tms;