Difference between revisions of "Roadmap and Release 3.5.0"

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
m
m
Tag: 2017 source edit
 
(7 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
{{TemplateVersion|
 
{{TemplateVersion|
 
version=3.5.0|  
 
version=3.5.0|  
date=January 2013|
+
date=January 2014|
 
mainfocus=
 
mainfocus=
Should contains all tasks with priority 9 logged when previous version were released in task tracker {{TemplateURLTasks}}
 
 
* Uniformizing of code and api for developers
 
* Uniformizing of code and api for developers
 
* War against major missing and not stable features
 
* War against major missing and not stable features
Line 11: Line 10:
 
'''Detailed Changelog''':
 
'''Detailed Changelog''':
 
<pre>
 
<pre>
 +
 
For users:
 
For users:
 +
 
- New: Add hidden option BANK_DISABLE_DIRECT_INPUT.
 
- New: Add hidden option BANK_DISABLE_DIRECT_INPUT.
 
- New: More options to select status of users into select user list.
 
- New: More options to select status of users into select user list.
Line 19: Line 20:
 
- New: [ task #877 ] Reorganize menus.
 
- New: [ task #877 ] Reorganize menus.
 
- New: [ task #858 ] Holiday module: note on manual holiday assignation.
 
- New: [ task #858 ] Holiday module: note on manual holiday assignation.
- New: [ task #892 ] Add hidden option in thirdparty customer/supplier module to hide non active
+
- New: [ task #892 ] Add hidden option in thirdparty customer/supplier module to hide non active companies in select_company method.
  companies in select_company method.
 
 
- New: [ task #531 ] Add a workload field on tasks.
 
- New: [ task #531 ] Add a workload field on tasks.
 
- New: Add graph of bank account input/output into input-output report page.
 
- New: Add graph of bank account input/output into input-output report page.
 
- New: Add script export-bank-receipts.php
 
- New: Add script export-bank-receipts.php
- New: Add option "filter=bank" onto script rebuild_merge_pdf.php to merge PDF that
+
- New: Add option "filter=bank" onto script rebuild_merge_pdf.php to merge PDF that has one payment on a specific bank account.*
  has one payment on a specific bank account.*
 
 
- New: [ task #901 ] Add Extrafield on Fiche Inter.
 
- New: [ task #901 ] Add Extrafield on Fiche Inter.
 
- New: Show process id in all command line scripts.
 
- New: Show process id in all command line scripts.
Line 32: Line 31:
 
- New: Add options to send an email when paypal or paybox payment is done.
 
- New: Add options to send an email when paypal or paybox payment is done.
 
- New: Clone product/service composition.
 
- New: Clone product/service composition.
- New: [ task #926 ] Add extrafield feature on order lines.
 
- New: [ task #927 ] Add extrafield feature on Proposal lines.
 
- New: [ task #928 ] Add extrafield feature on invoice lines.
 
 
- New: Add option ADHERENT_LOGIN_NOT_REQUIRED.
 
- New: Add option ADHERENT_LOGIN_NOT_REQUIRED.
 
- New: Add a cron module to define scheduled jobs.
 
- New: Add a cron module to define scheduled jobs.
Line 78: Line 74:
 
- Fix: [ bug #1022 ] correct margin calculation for credit notes.
 
- Fix: [ bug #1022 ] correct margin calculation for credit notes.
 
- Fix: Better management of using ajax for upload form (to solve problem when enabling ajax jquery multifile upload in some cases).
 
- Fix: Better management of using ajax for upload form (to solve problem when enabling ajax jquery multifile upload in some cases).
 +
- Fix: Lost stats filters into year selection.
 +
- Fix: Some config data are shared between suppliers orders and suppliers invoices
  
 
New experimental module:
 
New experimental module:
 +
 
- New: [ task #157 ] Add a Skype button (adherents / third parties / contacts)
 
- New: [ task #157 ] Add a Skype button (adherents / third parties / contacts)
  
 
For translators:
 
For translators:
 +
 
- Qual: Normalized sort order of all languages files with English reference files.
 
- Qual: Normalized sort order of all languages files with English reference files.
 
- New: Add language code files for South Africa, France new Caledonia, Vietnam.
 
- New: Add language code files for South Africa, France new Caledonia, Vietnam.
Line 88: Line 88:
  
 
For developers:
 
For developers:
 +
 
- New: DolGraph can build graph with three lines.
 
- New: DolGraph can build graph with three lines.
 
- New: DolGraph accept a parameter to cache data of graph getNbByMonthWithPrevYear.
 
- New: DolGraph accept a parameter to cache data of graph getNbByMonthWithPrevYear.
Line 95: Line 96:
 
- New: Upgrade lib of TCPDF to 6.0
 
- New: Upgrade lib of TCPDF to 6.0
 
- New: Upgrade jquery flot library to 0.8.1
 
- New: Upgrade jquery flot library to 0.8.1
- New: Add property "hidden" into module descriptors to allow to hide a module according to
+
- New: Add property "hidden" into module descriptors to allow to hide a module according to some dynamic conditions.
  some dynamic conditions.
+
- New: Add option MAIN_MOTD_SETUPPAGE to add a content onto setup page. Also content for MAIN_MOTD_SETUPPAGE, MAIN_MOTD_SETUPPAGE, MAIN_HOME now accept "|langfile" into translation key to use a specific language file.
- New: Add option MAIN_MOTD_SETUPPAGE to add a content onto setup page. Also content for
 
  MAIN_MOTD_SETUPPAGE, MAIN_MOTD_SETUPPAGE, MAIN_HOME now accept "|langfile" into translation
 
  key to use a specific language file.
 
 
- New: Make some changes to allow usage of several alternative $dolibarr_main_url_root variables.
 
- New: Make some changes to allow usage of several alternative $dolibarr_main_url_root variables.
 
- Qual: All nowrap properties are now using CSS class nowrap.
 
- Qual: All nowrap properties are now using CSS class nowrap.
- Qual: Move hard coded code of module mailmanspip into trigger.
+
- Qual: Move hard coded code of module mailmanspip into trigger.  
- New: Into POST forms, if you can add a parameter DOL_AUTOSET_COOKIE with a value that is list name,
+
- New: Into POST forms, if you can add a parameter DOL_AUTOSET_COOKIE with a value that is list name, separated by a coma, of other POST parameters, Dolibarr will automatically save this parameters into user cookies.
  separated by a coma, of other POST parameters, Dolibarr will automatically save this parameters
 
  into user cookies.
 
 
- New: Add hook addHomeSetup.
 
- New: Add hook addHomeSetup.
 
- New: Add trigger CATEGORY_LINK and CATEGORY_UNLINK.
 
- New: Add trigger CATEGORY_LINK and CATEGORY_UNLINK.
Line 117: Line 113:
  
 
1) We started to clean hooks code.  
 
1) We started to clean hooks code.  
If your hook want to modify value of $actions, it's role of your hook to modify it. Dolibarr  
+
If your hook want to modify value of $actions, it's role of your hook to modify it. Dolibarr hook code will no more decide this for your module. If your action class for hook was returning a string or an array, instead your module must set $actionclassinstance->results (to return array) or $actionclassinstance->resprints (to return string) to return same thing. The return value must be replaced by a "return 0"; Goal is to fix old compatibility code that does not match hook specifications:  
hook code will no more decide this for your module. If your action class for hook was returning
+
  https://wiki.dolibarr.org/index.php/Hooks_system   
a string or an array, instead your module must set $actionclassinstance->results (to return array)  
 
or $actionclassinstance->resprints (to return string) to return same thing. The return value must  
 
be replaced by a "return 0";
 
Goal is to fix old compatibility code that does not match hook specifications:  
 
  http://wiki.dolibarr.org/index.php/Hooks_system   
 
  
2) If you implemented hook printTopRightMenu, check that output does not include '<td>' tags any more.
+
2) If you implemented hook printTopRightMenu, check that output does not include '<td>' tags any more. All content added must be tagged by a '<div>' with css class="login_block_elem"
All content added must be tagged by a '<div>' with css class="login_block_elem"
 
  
3) Some methods object->addline used a first parameter that was object->id, some not. Of course
+
3) Some methods object->addline used a first parameter that was object->id, some not. Of course this was not a good practice, since object->id is already known, there is no need to provide id as parameter. All methods addline in this case were modified to remove this parameter.  
this was not a good practice, since object->id is already known, there is no need to provide id as  
 
parameter. All methods addline in this case were modified to remove this parameter.  
 
  
 
4) Method ->classer_facturee() is deprecated. It must be replace with ->classifyBilled().
 
4) Method ->classer_facturee() is deprecated. It must be replace with ->classifyBilled().
  
 
5) Property ->tel on objects is now ->phone
 
5) Property ->tel on objects is now ->phone
 +
 +
6) Trigger LINEPROPAL_MODIFY is renamed into LINEPROPAL_UPDATE and Trigger CONTRACT_LINE_DELETE rnamed into LINECONTRACT_DELETE to match naming rules.
 
</pre>
 
</pre>

Latest revision as of 17:24, 25 July 2019

Version: 3.5.0 (List of other versions on page Category:RoadMap)
Release date: January 2014
Main focus (What developers has mainly worked on, but not only, so for full list of changes see the detailed ChangeLog):

  • Uniformizing of code and api for developers
  • War against major missing and not stable features

Detailed Changelog:

For users:

- New: Add hidden option BANK_DISABLE_DIRECT_INPUT.
- New: More options to select status of users into select user list.
- New: [ task #862 ] Add ODT on shipments.
- New: [ task #149 ] Add # of notes and attachments in tabs.
- New: Can edit customer ref at any time.
- New: [ task #877 ] Reorganize menus.
- New: [ task #858 ] Holiday module: note on manual holiday assignation.
- New: [ task #892 ] Add hidden option in thirdparty customer/supplier module to hide non active companies in select_company method.
- New: [ task #531 ] Add a workload field on tasks.
- New: Add graph of bank account input/output into input-output report page.
- New: Add script export-bank-receipts.php
- New: Add option "filter=bank" onto script rebuild_merge_pdf.php to merge PDF that has one payment on a specific bank account.*
- New: [ task #901 ] Add Extrafield on Fiche Inter.
- New: Show process id in all command line scripts.
- New: Module mailman can subscribe/unsubscribe to ML according to categories or type of member.
- New: Add object_hour and object_date_rfc as substitution tag for open document generation.
- New: Add options to send an email when paypal or paybox payment is done.
- New: Clone product/service composition.
- New: Add option ADHERENT_LOGIN_NOT_REQUIRED.
- New: Add a cron module to define scheduled jobs.
- New: Add new graphical boxes (customer and supplier invoices and orders per month).
- New: [ task #286 ] Enhance rounding function of prices to allow round of sum instead of sum of rounding.
- New: Can add an event automatically when a project is create. 
- New: Add option MAIN_GENERATE_DOCUMENT_WITH_PICTURE.
- New: Add option excludethirdparties and onlythirdparties into merge pdf scripts.
- New: [ task #925 ] Add ODT document generation for Tasks in project module.
- New: [ task #924 ] Add numbering rule on task.
- New: [ task #165 ] Add import/export of multiprices.
- New: Add Maghreb regions and departments.
- New: A more responsive design for statistic box of home page.
- New: [ task #1005 ] Adapting to Spanish legislation bill numbering
- New: [ task #1011 ] Now supplier order and invoice deal with payment terms and mode.
- New: [ task #1014 ] Add option to recursively add parent category.
- New: [ task #1016 ] Can define a specific numbering for deposits.
- New: [ task #918 ] Stock replenishment.
- New : Add pdf link into supplier invoice list and supplier order list.
- New : Genrate auto the PDF for supplier invoice.
- New : Add category into filter webservice thirdparty method getListOfThirdParties.
- New : Allow to define margin or mark rate during quoting, ordering, invoicing.
- New : User permissions on margin module.
- New : Add ref supplier into muscadet model/
- New : Add ability to copy contact address to clipboard.
- New: Can use tag {mm} before {yy} even when there is a reset into numbering masks.
- New: [ task #1060 ] Register fields localtax(1|2)_type into details tables.
- New: [ task #923 ] Localtax support for ODT templates. 
- New: [ task #90 ] Barcode search.
- New: Add hidden option MAIN_VAT_DEFAULT_IF_AUTODETECT_FAILS.
- New: Can send an email from thirdparty card.
- New: Can cancel holidays that were previously validated.
- New: Can choose contact on event (action com) creation, and filtered by thirdparty.
- New: Add hidden option MAIN_FORCE_DEFAULT_STATE_ID.
- New: Add page to make mass stock movement.
- New: Add field oustanding limit into thirdparty properties.
- New: Can enter a vat payment of zero.
- New: Add path to installed dir of external modules + Name and web of module provider.
- New: Add option to use a specific mask for uploaded filename.
- New: Can attach external links to objects as we can attach files.
- Qual: Implement same rule for return value of all command line scripts (0 when success, <>0 if error).
- Fix: [ bug #992 ] Proforma invoices don't have a separated numeric count.
- Fix: [ bug #1022 ] correct margin calculation for credit notes.
- Fix: Better management of using ajax for upload form (to solve problem when enabling ajax jquery multifile upload in some cases).
- Fix: Lost stats filters into year selection.
- Fix: Some config data are shared between suppliers orders and suppliers invoices

New experimental module:

- New: [ task #157 ] Add a Skype button (adherents / third parties / contacts)

For translators:

- Qual: Normalized sort order of all languages files with English reference files.
- New: Add language code files for South Africa, France new Caledonia, Vietnam.
- New: Translate string for email to change password.

For developers:

- New: DolGraph can build graph with three lines.
- New: DolGraph accept a parameter to cache data of graph getNbByMonthWithPrevYear.
- New: Can enable tuning info with option MAIN_SHOW_TUNING_INFO.
- New: Show version of client lib used by mysql drivers.
- New: Add function to get content of an url (using all dolibarr setup like timeout, proxies...)
- New: Upgrade lib of TCPDF to 6.0
- New: Upgrade jquery flot library to 0.8.1
- New: Add property "hidden" into module descriptors to allow to hide a module according to some dynamic conditions.
- New: Add option MAIN_MOTD_SETUPPAGE to add a content onto setup page. Also content for MAIN_MOTD_SETUPPAGE, MAIN_MOTD_SETUPPAGE, MAIN_HOME now accept "|langfile" into translation key to use a specific language file.
- New: Make some changes to allow usage of several alternative $dolibarr_main_url_root variables.
- Qual: All nowrap properties are now using CSS class nowrap.
- Qual: Move hard coded code of module mailmanspip into trigger. 
- New: Into POST forms, if you can add a parameter DOL_AUTOSET_COOKIE with a value that is list name, separated by a coma, of other POST parameters, Dolibarr will automatically save this parameters into user cookies.
- New: Add hook addHomeSetup.
- New: Add trigger CATEGORY_LINK and CATEGORY_UNLINK.
- New: A trigger can return an array of error strings instead of one error string.
- New: Add method to use a dictionary as a combo box.
- New: Add update method for web service product.
- Fix also several bugs with old code. 

WARNING: Following change may create regression for some external modules, but was necessary to make
Dolibarr better:

1) We started to clean hooks code. 
If your hook want to modify value of $actions, it's role of your hook to modify it. Dolibarr hook code will no more decide this for your module. If your action class for hook was returning a string or an array, instead your module must set $actionclassinstance->results (to return array) or $actionclassinstance->resprints (to return string) to return same thing. The return value must be replaced by a "return 0"; Goal is to fix old compatibility code that does not match hook specifications: 
 https://wiki.dolibarr.org/index.php/Hooks_system   

2) If you implemented hook printTopRightMenu, check that output does not include '<td>' tags any more. All content added must be tagged by a '<div>' with css class="login_block_elem"

3) Some methods object->addline used a first parameter that was object->id, some not. Of course this was not a good practice, since object->id is already known, there is no need to provide id as parameter. All methods addline in this case were modified to remove this parameter. 

4) Method ->classer_facturee() is deprecated. It must be replace with ->classifyBilled().

5) Property ->tel on objects is now ->phone

6) Trigger LINEPROPAL_MODIFY is renamed into LINEPROPAL_UPDATE and Trigger CONTRACT_LINE_DELETE rnamed into LINECONTRACT_DELETE to match naming rules.