v61 Release Notes
-
Upload
ricardo-salvador-valencia-dominguez -
Category
Documents
-
view
232 -
download
0
Transcript of v61 Release Notes
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 1/26
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 2/26
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 3/26
Introduction
This new version is the result of 6 months of development with _____ man*month, ______ commits, ______ lines of code added and ______ lines of code removed. During these 6 months, our teamprocessed _____ community feedback notes from _____ contributors. These contributions lead to _____ emails to discuss new features and bugs with the community, _____ terms translated to ______ languagescovering ______ official modules. This version includes the process of community contributions (code review, bugs qualification and fixes,merge proposals), strong usability improvements (mainly with the purpose to make it easier to use andconfigure), improvements in the framework as well as well as some new features. Our priority on this axisis given by the graph bellow that summarize our working effort by type of work done by our R&D team inman*months. --- pie chart of type of activities in man*months, to be computed based on our HR teams ---
As you can see in the graph above, our focus has been set on making OpenERP easier and cleaningthe code (mainly the framework and the web client that have been re-written from scratch). The biggestchallenge for the v6.1, was the complete rewrite of the whole web client from scratch based on newtechnologies. It was a ____ man*month job and we succeeded to achieve it in less than 6 months with ateam of 9 developers. As usual, all our developments are released under the open source AGPL licence.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 4/26
Usability Improvements
Objective: making ERP affordable for small businesses
We want OpenERP v6.1 to be easier to install, to configure and to use. For years, full featured ERPs havebeen dedicated to large enterprises. We think we can change the market with OpenERP and give all thefeatures of complete ERPs, while keeping the software easy to use and keep affordable implementationcosts. In order to design the perfect software, our usability experts organized a lot of user testing sessions withlambda users to detect what could be simplified in OpenERP. For the v6.1, we wanted new users to beable to test the software without having to configure anything. OpenERP is now ready to use out-of-the-box and the configuration wizards are optional and launchable afterwards. A new user can create hisfirst sale order two clicks after the installation !
Install, Test and Start Using: No Configuration
A smarter “welcome page”
In order to speed up the discovering process, we speed up the installation of a new database:
2x faster than V6.0 for local installation and 2 seconds for OpenERP Online (Test here:
http:\\openerp.com\subscribe).
After having created your database, you are directly logged into the application. The initial welcome pagereminds you the credentials to connect on your OpenERP later and helps you choose the application you
want to install and test first. In only one click, you install the first application and you are redirected to
the related dashboard. You can directly use the application: there is no configuration required1 (*) and
a 'best practice' setup has been defined by default for every application.
1depending on the modules you install, there is only one configuration wizard which is still required,: it's thechart of account selection according to your country. If you install a module based on accounting, you willhave to answer its wizard.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 5/26
Improved dashboards to guide new users So, one click after the installation, you are redirected to the dashboard of the application you want to test.
The first menu and dashboard you see is the one of the application you are interested in. It's easier than
discovering a full ERP for the first time.
We wanted that a new user could start directly to record a document (sale order, invoice, task, ...) right
after the installation. We noticed during our usability testing sessions that the new users do not detect the
menu directly. So, we put a "new" button on every dashboard section so that it's clear where to click to start
recording a document.
--- dashboard of sale application with empty SO to create on the fly---
Ready-to-use, using the new many2one fields
Two clicks after the installation new users can start
creating their first document, for example a sales order.
But there are no customers or products registered in the
database yet. So, it was important to be able to create
very easily, on-the-fly, a new customer or product directly
from a sale order.
Most of the beta tests we organized emphasized the
same difficulties with lambda users on the use of
many2one relation fields. (check this video as an
example: ...) So, we completely redesigned the relation
field so that it looks like a selection box. We also added
auto-completion, quick-create and a “more...” to open
the search window.
This allows new users to create their first sales order by
creating the partner and the product on the fly, simply by writing the name of the customer in the customer
field. Of course, in order to allow this, we had to do a lot of small improvements on main OpenERP objects:
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 6/26
● when you create a partner, it automatically creates his address by default
● when you create a product just with the name, it correctly sets most of the fields: related taxes,
category, income/expense accounts, ...
Best practices by default
Our testing sessions with lambda users showed us that it's much easier for new users to adapt an existing
configuration than to configure OpenERP from scratch. In order to be usable out-of-the-box, OpenERP v6.1
comes with best practices configured by default at the installation.
Here are some examples of pre-configured environment:
● if you install the CRM, sales stages are setup by default following the 'solutions selling'
methodology,
● if you install the HR periodic evaluations, a generic employee evaluation form is provided with
questions we made by working with human resources experts. This is great as most of the small
companies do not even have a periodic evaluation form for their employees.
● if you install the accounting, default payment terms are defined so that you can use them directly
These default configurations allow users to: start using OpenERP without having to configure anything, give
best practices and advice to small companies, simplify the configuration process as it's easier to adapt a
few elements than to configure everything from scratch.
Sample of Employee Evaluation form.
The Setup Cookbook
The configuration panel
Once you are ready to fine-tune OpenERP to your own needs, you can access the configuration panel from
the administration menu. This panel is a cookbook of all the steps you must follow to configure the systemaccording to the modules you installed. A progressbar gives you the status of the overall configurationprocess.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 7/26
All the configuration wizards have been reviewed for v6.1 in order to be more business oriented. In total, wedeveloped _____ configuration steps to cover all official modules. Bellow, you will find 3 examples of theseconfiguration wizards.
Example 1: Configure the company
The wizard to configure the company in V6.0 looks like the above screenshot:
Through wizard the new users may encounter several difficulties:
● the setup of the company and the logo is on the same screen, but someone who configures the
company may not have the logo at the right size on hand. So, we split this wizard into two: configure
the company and upload your logo,
● the report header and footer are used to put your bank account data for your customer payments,
VAT numbers, etc... It was a big problem as we noticed a lot of OpenERP online customers
forgot to put their VAT number at this place and noticed only after having printed the first invoice.
Unfortunately, they could not update the configuration and reprint the invoice as if you reprint an
invoice it always appears like the preceding print (this is a legal requirement in several countries)
The new configuration screen looks like that:
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 8/26
Details of the improvements:
● it's not anymore a wizard but the normal company definition form so that you can modify it later,
easily
● we have put a series of fields for the VAT and other references
● the bank account data directly comes from the bank account configuration wizard (that creates
journals, accounts,...)
● all parameters of the company are configured from this screen using the tabs
Example 2: Setup Your Invoicing Methods
The screenshot bellow presents the wizard to configure the invoicing method in V6.0. This wizard just set
the default value on the sales order for the field invoicing method.
A new configuration wizard (shown bellow) has been introduced to help setup your system according to
your invoicing needs: invoices based on sale orders, deliveries, project tasks, timesheets, contracts, etc
Example 3: Create new user
We made a lot of improvements in the user definition form in V6.1 but the major one was the access rightsconfiguration. Instead of assigning a list of groups to users, we created a dynamic view that represents all
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 9/26
the applications. It's more intuitive now as you just have to activate the application you want to give to auser. Then, you have to tell which is his role in this application (manager, user ...). Groups are configured by defaults, which means that lambda users don't even have to understandwhat's a group. So, in the simplified view of OpenERP, we hid everything related to groups. Theadministrator just has to configure the access rights on the user form without having to understand what's agroup and how to configure it.
As a technical point of view, the group system of OpenERP did not change between v6.0 and v6.1. Mainly,we did a better way to configure access rights for a user. The only improvement we applied to groups is aninheritance between groups (ex: a sales manager is automatically a sales user).
Import Your Initial Data
Automated import and sync from other applications
One of the most complex part when setting up a new management software is the importation of data from
your preceding applications. In order to help new customers to get started very quickly, we developed
automated import tools for the following applications:
● quickbooks vX
● google apps,
● salesforce vX
● sugarcrm vX
● Ms. Outlook.
When you use this feature, OpenERP automatically downloads all information from these softwares toyour new OpenERP instance. You can launch the wizard several times to update what has been modified
recently. The wizard also proposes to frequently synchronize through a cron. (an automatically scheduled
background task).
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 10/26
A smart Import tool for lambda users
For companies that have to import data from other applications, we improved a lot the import wizard to beeasier to use. Here is a screenshot of the new import CSV feature. --- screenshot import csv ---
With this new wizard, you just give your CSV file in OpenERP and you can configure directly in OpenERP,with a preview, how you want to import these data in OpenERP. You can do this by mapping by thecolumns and checking the preview bellow.
Easier to Use
Reviewed menutips and tooltips
We got a lot of feedback from our training sessions, our OpenERP online customers and launchpad
contributors on things that were not easy to understand in OpenERP. We used this feedback to detect
terms, documentation and tooltips that must be improved for clarity. So, we reviewed a lot of tips on the top
of screens, tooltips on fields and even terms of the application.
Here are 3 examples:
● Good examples of menutips improved● Good examples of tooltips improved● The terms "Real &Virtual stock" have been replaced by "Quantity On Hand & Quantity Forecast"
Follow the status of the documents with the new progressbar We noticed it was quite complex for new users to understand the flow of each document. As an example,
the status of a picking list changes like the following: Draft, Confirmed, Available, Done. Only a few users
understood this in their first test and, in 35% of the tests we did, the users thought his document was
completed when it was in the status confirmed !
We think that every document flow must be as easy as buying products online on an e-commerce website.
In order to clarify where you are in the process of a document and what are the previous and next steps,
we replaced the status selection box by a progress bar that shows all steps and the current one. Look at
the example bellow for the pickling list and a sales order in exception.
--- screenshot of picking list confirmed, just the widget ---
--- screenshot of a sale order in exception, just the widget ---
Simplification of complex screens
Our usability expert reviewed the most complex screens of OpenERP to make them easier to use. We will
not detail all the screens here but just to give you an example, take delivery grid configuration.
Defining carriers, delivery methods, delivery grids and delivery grid rules was quite complex in v6. We need
this complexity to handle all the possible cost computation on the delivery orders (based on weight, free for
a maximum amount, by country, by region...). In v6.1, we made a simplified version of the delivery grid for
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 11/26
companies that have standard needs. From this screen, the user can activate all the rules and get all the
features of the v6 screen.
Easier to Learn
Books
As a summary, we did a lot of work to make OpenERP become very easy to use and affordable to
integrate. But we know enterprise management can request very complex flows and some users will stillface some difficulties to integrate OpenERP. That's why, in parallel, we worked on a series of 6 books for
the end users to cover most of the management challenges in OpenERP.
● Drive your Sales & Marketing Activities with OpenERP● Integrate your Logistic Processes with OpenERP
● Streamline your Manufacturing Processes with OpenERP● book 4
● book 5
● book 6
You can purchase these books on Amazon or through our online store:
Certified Training Partners
So, now, you have a software which is complete and simple and you have books to learn by yourself. But
an ERP in the end is still an ERP : it's quite complex because companies have complex needs. So, in
order to train more people on OpenERP, we launched the certified training partner program with our main
OpenERP partners to have certified training centers on OpenERP all around the world. (fortunately, you
don't have to go anymore in Belgium to get trained on OpenERP :)
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 12/26
Buzzy ERP: Social, Viral & Mobile
Be Social: Collaborate with Partners
The relationship between people changed a few years ago with services like facebook, google+ or twitter.Individuals are now strongly related to each others, they can share information very quickly, collaborate onprojects efficiently and organize events in a few clicks. We think the next generation of ERPs should allowcompanies to work online with their partners, customers and suppliers. OpenERP v6.1 allows companies collaborate better together:
● when you work with resellers, they can check the current availabilities of stocks online, order someproducts, control their invoices and deliveries, etc... They are up-to-date with everything you do andall your information is directly integrated in their own management software,
● when you send an invoice to a customer, he directly receives the related supplier invoice in hisaccounting system so that he does not have to record it, but just to validate it. He can also pay your
invoice online and the transaction of the payment is automatically created in your accounting,● when you work on a project with some partners, everyone can work on the same list of tasks, you
can share documents related to the project, ....● when you need to buy some products, you just create a request for quotation in OpenERP. Your
suppliers receives emails requesting them to quote for what you need. If you confirm the order, theyautomatically receive a sales order in their own management software.
Share your documents easily
When you are in a list of filtered documents, you can press the share icon ( ) to share these documents
to anyone. When you do that, OpenERP asks you if you want to give a read-only or a read-write access.
As an example, this feature allows you to:
● give access for the tasks of a project to a customer, so
that you can easily collaborate on the project,
● export invoices to your customers or suppliers so that
they can reprint them and track their status,
● give visibility on your product or stock to your resellers,
● export support tickets or timesheets so that your
customer can control what has been done, ...
Embed content in your website
Any part of the OpenERP web client can be embeddable into a website, or another application, simply byinserting a small javascript code provided by OpenERP. This allows you to easily:
● insert a contact form into your website which is directly connected to OpenERP,● export statistics or graphs in a portal or in your website, etc.
--- screenshot one --- You can test this page where we embedded different features into a single page to present some of thev6.1 new features: http://...
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 13/26
Improved Email Integration
In version 6.0, we had different modules that used emails in different ways: the mailgateway, the mails sentfrom the marketing campaigns, email_template, and tools to send emails from leads and opportunities. Inv6.1, we unified all emails operations. They all use the same object that support:
● a clean way to send emails
● template of emails for automated generation● clean management of the attachments● indexation of the content● integration with mail client like Thunderbird and Outlook,
--- screenshot of emails displayed on the partner form ---
Emails sent by default
We configured the different workflows so that different documents send automated emails when they are
validated:● a confirmation of the sales order will send an email to the customer to acknowledge the order,
● when an invoice is validated, an email is sent to the customer with his invoice in attachment and the
link to pay online (we decreased our customer aged balance of ten days at OpenERP SA since we
setup this feature in production)
● when you create a new user, a mail is sent to this user with the data to connect on the system
--- screenshot of the email sent when we confirm an invoice ---
EDI by default
When a document is sent to a customer, he receives the link that displays his document online. Here is anexample with a customer invoice. --- screenshot of a customer invoice --- From this screen, your customer can:● print his invoice● pay the invoice online (using paypal or other payment methods)● push / synchronize this invoice in his own management software
If he wants to push this invoice in his own management software, he has 3 solutions:1. if he uses OpenERP, he just has to provide the link to his OpenERP instance and he will receive
a supplier invoice in draft correctly created in his accounting. So, he does not have to record theinvoice manually.
2. if he does not use OpenERP, he receives an URL that he can use to download the invoice into a json format so that he can easily develop an integration for his own management software
3. if he does not use OpenERP, he can create an OpenERP online instance in two clicks and he getsconnected to his instance with the supplier’s invoice automatically created.
After having done this, your customer is integrated with your own instance and all business documents youwill share will be automatically created in the other instance. This will really open a new era of productivitybetween companies working together.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 14/26
OpenERP Mobile: access everywhere
OpenERP v6.1 includes an interface to access OpenERP from your mobile phones. Currently it's only
in read-only mode, but you can access all your data from this mobile user interface. It's based on jquery
mobile and it is a module for the web client. You can access the mobile UI from the same URL than your
web interface.
--- screenshot of the menu ---
--- screenshot of search in the list of so ---
--- screenshot of a so form ---
In order to introduce a better rendering of records, we added the possibility to return an html version in
a name_get function call. This allows to return an address formatted on multiple lines according to the
country. As an example, the list of sales order above is displayed using e name_get call on the sales
orders.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 15/26
New Modules
Touchscreen Point-of-Sale
The new touchscreen OpenERP Point of Sale interface:
● is a web client module
● that works even if you have no internet connection to the server and/or you restart the browser
● but synchronize automatically with OpenERP server when the connection is available
● it works on any touchscreen device like an ipod, ipad or any tablet pc.
The current features are:
● select product through barcode reader, browsing categories, or text search
● multiple tickets can be recorded at the same time
● multiple payment methods allowed
--- screenshots of order ---
--- screenshot of payment ith keyboard ---
As it is a web client module, it is very easy to extend it to add new features or extend current ones
(payment with a credit card, tables management, ...)
You can get more information about this module here: http://www.openerp.com/products/pos
Generic Payroll Engine
This new module includes a generic payroll engine that handles everything required to compute he salary
slips, the taxes to pay, etc. The following concepts are managed:
● salary rule: are used to compute data like allowances, deductions, net, taxes, contribution registers,
etc
● salary structure: define a set of rules usually applied to a category of employee
● contribution registers: are organisms to whom the company or the employee have to pay taxes
● employee and contract: includes everything required to compute the salary slip of the employee.It uses the new temporal feature to keep a history of all modifications on the contract or on the
employee
● salary slip: are used o compute the payoll for an employee for one month. It includes the input data
like the number of working days (that is computed automatically from the holidays management
module), the commissions, the advances, ...
This payroll engine is fully customizable around the concept of rules so that it's easy to create localisations
for different countries. The firsts payroll localisation we developed are for Belgium and India.
--- 2 screenshot payslip ---
Assets
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 16/26
The version 6.1 includes a complete asset management module. It's features are:
● support for multiple depreciation methods: linear, progressive, ...
● generation of the depreciation board as graphic or a grid,
● automatic generation of periodic accounting entries,
Portal This module allows to easily create customized access for your customers and suppliers for differentdocuments in order to collaborate efficiently. Based on the new sharing feature, you can design customportals in a few clicks by selecting which resources and what access rights you want to provide to your partners. --- screenshot home of partner portal --- The above picture is a screenshot of the partner portal we give to official OpenERP partners. From theportal they can track their support tickets, ask for a database migration and follow the service, check theleads we forward to them, etc... We also developed a way to easily contact or give access to severalpartners to the portal and to manage the logins you give to your partners.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 17/26
The New Web Client Revolution
Challenges & Objectives
For v6.1, we decided to start the development of a new web client from scratch with a new architecture. Asthe v6 web client was complex to maintain and to improve we thought it was the right time for a completecleaning. Our objectives were to:
● relay mainly on javascript and not anymore on mix of python+javascript,● being able to easily reuse existing js libraries (dhtmlx gantt and calendar, dracula diagram
editor, ...),● make any part of the web client become embeddable in a website or shareable to some partners,● build a strong framework for building web applications on top of OpenERP leveraging the builtin
features of OpenERP. This was a big challenge as it's a 54-man months effort and we wanted it to be ready for v6.1. So, we had
to release this new web user interface in only 5 months with a team of 10 developers. The result is quiteamazing:
● it has more features than v6.0 but ______ lines of code less● it's faster than the v6 client. It's even faster than the GTK client for most operations● developing new modules is much easier with this new client than before,● we fixed the troubles we had with the v6.0 (gantt chart not clean, editable lists in one2many, ...)
New and Improved Features
Fast like a rocket !
A lot of effort has been made to speed up the OpenERP web client and it's by far much faster than before.
As everything is in javascript, we reduced a lot the communication on the network.
Opening a list of 80 sales orders takes _____ seconds against _____ seconds in v6.0. (___x fast)
Opening a sale order form takes _____ seconds against _____ seconds in v6.0. (___x faster)
The New Vertical View: Everything at a Glance
In order to improve the productivity of end users, we developed a drag & drop kanban view for someobjects. This view allows you to recorganize easily your records (tasks, opportunities, recruitment, ...) and
have a global overview of all records.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 18/26
Here is the XML code of the above view:
<vertical string="Tasks">
...
<'/vertical>
Customizable Dashboards
Dashboards of each application are now fully customizable directly from the user interface. You can change
the layout of the dashboard (1, 2, or 3 columns), insert or remove some data (lists, graphs, ...) using your
custom filters, rename or drag & drop some elements.
We introduced a new tag <board> to be used in forms view to define dashboard. Here is code defining the
above dashboard:
<board string="Tasks">
...
<'/board>
Simple and reusable advanced filters.
The new web client allows you to create, use and store complex filter expressions like:
● sales analysis group by countries on:○ sales with order date between March and May 2011 AND○ having a product in the category "computers" OR○ having a product = 'iPad'
● AND the order concerns customers in one of the countries in Europe Filter expressions uses normal fields and not only character fields, which is more convenient to createexpressions based on dates or many2one fields. If you save a filter and reuse it later, the filter appearsin the same way so that you can easily modify it for different needs.
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 19/26
Dynamic Gantt Charts
Gantt view has been completely reviewed using the dhtmlxscheduler widget (http://...). Gantt supportsfiltering and the grouping through buttons of the search window. We added constraints between the parentand children elements but you can move the whole group by using shift drag & drop. We also addedprogress bar inside an element if a gantt chart and dependencies between elements. -- screenshot of a gantt ---
Here is code of the view defining the above gantt chart:
<gantt string="Tasks">
...
<'/gantt>
Many2one Fields
The usability of the many2one fields have been completely improved. In v6.1, they look like a selection box
so that it's very easy for lambda users to use it. Some of their features include:
● auto-completion when you write● clear on 'more...' to get the full search view popup
● quick-create without any popup (if the record supports it by having only one required field with no
default value)
● 'create and edit' that opens the record for edition
● report, action and relation related to the linked record
● fully usable using the keyboard, without mouse
Technical Improvements
Modularity
explain why the modularity of the web client is cool...
name_get supports html
The name_get method on an OpenERP object used to return the following values [(id, textrepresentatiion)
]. Since version 6.1, you can return a third argument in the tuples that is the html representation of a record:
[(id, textrepresentation, htmlrepresentation)]. This html representation will be used by the user interface that
supports it like the web and the mobile UI.
Here is what has been returned by the name get on sales orders:
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 20/26
[ (
1,
'SO0006'
''' <div ....
</div> '''
)]
Here is how it looks in the mobile user interface:
--- screenshot so list in mobile ---
Here is how an address looks in a form view:
--- screenshot of so form wi an address formated on multiple lines ---
Clean Dependencies ... explain new architecture and the list of dependencies...
New Debugging Facilities
... explain new debug facilities ...
--- screenshot 1 firefox ---
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 21/26
Framework Improvements
Speed improvements
Lots of speed improvement in the kernel Here is a comparison benchmark between version 6.0 and v6.1 for the speed of different operations on aquad core ______________. We did the tests on a database having ______ sales orders.
● installation of a new database in English● installation of a new database with a language pack● second installation of a new database● loading a partner form from the web client● reading 1000 orders at once
● reading 100x 10 sales orders
Multi-thread for scheduled operations
Each cron operation is now launched in a separate thread so that they can be launched in parallel. This avoids
having slow process like the MRP scheduler that makes the others cron jobs waiting for a long time.
Translations management
check with vmt to explain the improvements
Json-RPC
not sure it will be released on time...
done in web, check for server
Unaccent searches
If you install the _______ postgresql plugin, OpenERP will be able to perform searches which are not
dependant on the accents. If you activate this feature, aLl indexes are adapted so that the performance is
not impacted by this option.
Cleaning & Maturity
Simplify manual & automated tests: runbot
In order to help our development process, we developed a new integration server called runbot thatmonitors every commit made on launchpad branches. Each time there is a commit by a developer, itperforms automatically the following operations:
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 22/26
● install two databases (one without modules, one with all modules install) so that you can connectand test the branch online directly without having to install a branch and create a db
● launch all automated tests to verify that no bugs have been introduced (the box is green or red)● launch code coverage tests to detect which part of the code is covered by our automated tests and
which is not● gives you the detailed log file of the tests and installation to test online if there is a problem● it automatically links to related branch, commit, bug report and merge proposal on launchpad
You can test the buildbot online through this url: http://runbot.openerp.com
Code Coverage, Objectives 80%
In v6.0, we started to integrate a lot of automated tests in OpenERP. _____ tests have been introducedon all official modules. At that time, the code coverage was 40%. In v6.1, we integrated a code coveragecontrol on any commit made by one of our developers. We also developed more automated tests to cover 80% of the code with our tests (_____ lines more than in v6.0) You can check the current code coverage here: http://runbot.openerp.com (http://runbot.openerp.com/addons-trunk/logs/coverage-all/)
Bugfixes & small features
During the last 6 months, we managed _______ community feedback items on launchpad (bugs andwhishlist) resulting in _______ emails discussions with the community in order to find the best way toimprove the software. This community feedback is very important for OpenERP and it allows the softwareto grow so quickly in maturity. In order to manage all these feedback items we assigned _______ full timedevelopers to qualify the launchpad bugs. If a bug is qualified, it was assigned to one of the ____ teams byactivities: web client, sales & CRM, accounting, usability, ... _____% of the bugs reported by the communityhave been qualified as real bugs or accepted wishlist.
On the http://feedback.openerp.com/ platform, we got ______ feedback items and ______ of them havebeen implemented (_____ %). This ratio is less on feedbacknthzn on launchpad because our priority isto clean and improve existing features rather than implementing new ones. Since v6.1, we also setupdashboards to control our performance by managing community feedback on launchpad and mergeproposals. Our statistics on the community collaboration is available on this document: http://... --- screenshot of community dashboard --- Our goal is to qualify all launchpad bug reports within a few days (not the fix, but the qualification) and
review merge proposals within two weeks. We have been quite good managing bug reports on launchpadbut we still have to improve our performance in the merge proposals review. In order to improve our community processes, all our R&D teams have to follow the same process than community contributions(merge proposals with code review by the team leader). In 6 months, we have reviewed _____ merge proposals and _____ branches have been created by thecommunity and OpenERP.
Improve developer’s life
Objects Instantiation & definition Since the version 6.1, osv objects are instanciated automatically in two passes. You do not need to
instanciate your classes anymore and you don't need to split classes in two for circular references between
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 23/26
fields.
In v6.0, we used to write the following code:
class partner(osv.osv):
_name = 'res.partner'
_columns = {
'name': char 'addresses': one2many('res.partner.address', )
}
partner()
class address(osv.osv):
_name = 'res.partner.address'
_columns = {
'name': char
'partner_id': many2one
}
address()
class partner2(osv.osv):
_inherit= 'res.partner'
_columns = {
'main_addresses_id': many2one('res.partner.address', )
}
partner2()
In v6.1, this code can be reduced in:
class partner(osv.osv):
_name = 'res.partner'
_columns = {
'name': char
'addresses': one2many('res.partner.address', )
'main_addresses_id': many2one('res.partner.address', )
}
class address(osv.osv):
_name = 'res.partner.address' _columns = {
'name': char
'partner_id': many2one
}
Less code, less side effects, less maintenance
Code removed:
● web widgets (everything is a dashboard)● osv_memory, replaced by osv● emails managemen team
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 24/26
Multiple “on_change” and inheritancies
to be written by vmt ...
Temporal Objects Temporal objects are objects that keep the history of every modification made on the object and that allows
you to easily read data at a specific date in the past or in the future. This feature is, for example, used in
the new payroll module. In every payroll application, it's important to keep track of every modification made
on an employee situation or a contract. This allows, when you compute the payslip for a month, to use the
data at this month and not the one currently applicable (the employee situation lay have changed).
... to be completed by qdp to explain how it works technically...
Exemple of code:
....
Refactorisation of external libs
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 25/26
Minor Improvements by Modules
Projects & Tasks: Improved productivity
Explain vertical viewBetter Gantt view
CRM: Improve your sales productivityExplain the vertical viewExplain the Todos based on tasks in CRM
HR Recruitment: improved screens
Accounting & Finance
The following multi-currencies improvement have been achieved:
● follow-ups● payments voucher
These improvements have been made during a one week code sprint with OpenERP and CampToCamp,financed by Canonical and Camptocamp. new reports:
● treasury better localisations
● l10n_us
Delivery Prices Management
Invoicing Methods
Contract management based on analytic accounts
8/4/2019 v61 Release Notes
http://slidepdf.com/reader/full/v61-release-notes 26/26
Since version 4.2 of OpenERP, we use the analytic accounts to manage, invoice and control customer
contracts. This is a great feature of OpenERP but analytic accounts were not easy to understand for
lambda users. In version 6.1, we introduced the concept of contract based on analytic accounts.
Now, you have the following features in order to help you manage your contracts:
● a menu called "Analytic Accounts / Contracts to renew" that lists all contracts that should be
renewed because the number of hours / days is overpassed (like prepaid support contract) or the end date
is passed (like annual contract)● when a contract should be closed or renewed, OpenERP sets it automatically in pending state so
that you get warning when people work on this contract (from timesheets)
● once a week, an email is automatically sent to salesmen responsible of the contracts to renew
requesting them to contact the customer to renew or close the contracts and change the state accordingly.
Outlook Plugin
The Outlook plugin was not cleanly integrated in Outlook in the version 6.0. This was partially due to the
technology used to develop this Outlook plugin (python with ______ library). We decided to restart thedevelopment from scratch using objective C directly. The new outlook plugin is now:● easier to install as there is no more external dependencies● more integrated to Outlook so that you don't have warning messages anymore on the first use● faster.