I do not blog anymore. I prefer focusing on building the OpenERP company and product.
If you want to be kept informed about OpenERP or my activities, I suggest you to follow me on twitter:
http://twitter.com/fpopenerp
Thursday, December 8, 2011
Sunday, November 14, 2010
OpenERP V6 CRM in Action
Here is a preview of the new CRM of OpenERP v6. Enjoy !
Labels:
crm,
openerp,
openobject
Saturday, October 16, 2010
OpenERP v6, new logging system for end-users
In order to improve the useability of OpenERP v6 and make it easier to use and learn for new users, we added a logging system on main actions of OpenERP. When a user confirms a document, OpenERP will show him all the next actions that have been prepared by the system.
As an example, when a salesman convert a quotation to a Sale Order, OpenERP will tell him what have been triggered: new delivery orders planned, new tasks created, etc. The screenshot bellow, shows you what happens when you confirm a sale order with two products (PC1 & PC2), one of the two has to be manufactured in "make to order".

You can see that OpenERP tells you that you will have two products required for the manufacturing which are not available in the stock, two manufacturing orders have been scheduled (I used multi-level BoM) and the delivery order is scheduled for the 10/13/2010.
The great thing with this system is that you can click on any line of the log to zoom to the related document. If you need more information about the procurement in exception, just click on it and fix it.
As another example, here is the log that appears when you register a customer payment, that pays two invoices.

You can see that two invoices have been marked as "paid" and a delivery order has been scheduled by OpenERP. That's because the sale order SO/0017 was created with the order policy "Payment before delivery". So, the payment of the invoice triggered the delivery order.
As an example, when a salesman convert a quotation to a Sale Order, OpenERP will tell him what have been triggered: new delivery orders planned, new tasks created, etc. The screenshot bellow, shows you what happens when you confirm a sale order with two products (PC1 & PC2), one of the two has to be manufactured in "make to order".

You can see that OpenERP tells you that you will have two products required for the manufacturing which are not available in the stock, two manufacturing orders have been scheduled (I used multi-level BoM) and the delivery order is scheduled for the 10/13/2010.
The great thing with this system is that you can click on any line of the log to zoom to the related document. If you need more information about the procurement in exception, just click on it and fix it.
As another example, here is the log that appears when you register a customer payment, that pays two invoices.

You can see that two invoices have been marked as "paid" and a delivery order has been scheduled by OpenERP. That's because the sale order SO/0017 was created with the order policy "Payment before delivery". So, the payment of the invoice triggered the delivery order.
Labels:
openerp,
openobject
Friday, September 24, 2010
OpenERP Automated Tests & Reports
The new automated test framework for OpenERP is finished in trunk. It consists of 1604 tests spread in 146 complete scenari. Every commit run a series of tests, according to the modules changed in the commit. These tests are validating the business logic, but also the reports of OpenERP.
The automated test server is built on buildbot. Here is an example of automated test that failed: http://test.openobject.com/builders/buildbot-openobject-addons/builds/38
If you want to see all the available reports in OpenERP, just launch the following queries on a trunk branch:
> createdb trunk --encoding=unicode
> openerp-server.py -i sale,purchase,mrp,project -d trunk --test-report-directory=/tmp --log-level=test
OpenERP will launch automatically all tests scenari and save the generated reports in the /tmp directory.
We are also working on an improved "bzr stats" to get information ala Google Analytics but for the commits on a bazaar branch. The very first prototype has been released here:
https://code.launchpad.net/~openerp-community/bzr-stats/bzr-stats-analytics
This will allow us to get statistics on contributions and developers, related to the automated tests quality report in order to better do continuous improvement in our development process.
The automated test server is built on buildbot. Here is an example of automated test that failed: http://test.openobject.com/builders/buildbot-openobject-addons/builds/38
If you want to see all the available reports in OpenERP, just launch the following queries on a trunk branch:
> createdb trunk --encoding=unicode
> openerp-server.py -i sale,purchase,mrp,project -d trunk --test-report-directory=/tmp --log-level=test
OpenERP will launch automatically all tests scenari and save the generated reports in the /tmp directory.
We are also working on an improved "bzr stats" to get information ala Google Analytics but for the commits on a bazaar branch. The very first prototype has been released here:
https://code.launchpad.net/~openerp-community/bzr-stats/bzr-stats-analytics
This will allow us to get statistics on contributions and developers, related to the automated tests quality report in order to better do continuous improvement in our development process.
Labels:
openerp,
openobject
Sunday, September 12, 2010
Improved Automated Tests for OpenERP: reporting
Here are some news about our work in progress to improve automated tests an code review in OpenERP trunk. Let me first introduce how is our R&D organized.
At OpenERP SA, we use the SCRUM project management methodology to organize our developments on OpenERP. We use the OpenERP scrum module to organize the product backlogs. We have developers spread into 8 teams of about 6 developers per team:
In order to improve the quality of the tests, we setup a test server that launches a series of tests after each commit made on a team branch or the trunk official branch. This server is still under development, but you can already track the firsts results here: http://test.openobject.com/
The tests performed on each module by the test server are:
Today we just added automated tests on OpenERP reports. Each time you install OpenERP, it will launch the generation of sample PDF reports. In the trunk version, you have the possibility to store the generated report into a directory using the new argument "--test-report-directory=/tmp/".
If you want to test this, on the latest OpenERP trunk, you can execute the following commands under Linux:
If you want to know how it has been implemented in the test scenario, check this file in your local installation: addons/sale/test/sale_order_print.yml
The automated test server is still in beta. We plan to release the final version and start using it massively by the end of september. Our current work in progress for the automated test engine are:
At OpenERP SA, we use the SCRUM project management methodology to organize our developments on OpenERP. We use the OpenERP scrum module to organize the product backlogs. We have developers spread into 8 teams of about 6 developers per team:
- Framework: scrum master = Olivier
- Addons 1 (sale, stock, mrp, purchase): scrum master = Quentin
- Addons 2 (crm, dms, survey, misc): scrum master = Quentin
- Addons 3 (account, project, hr, events): scrum master = Quentin
- Usability: scrum master = Aline
- Support / Bugfixes: scrum master = Stéphane
- Web Client: scrum master = Xavier
- GTK Client: scrum master = Naresh
In order to improve the quality of the tests, we setup a test server that launches a series of tests after each commit made on a team branch or the trunk official branch. This server is still under development, but you can already track the firsts results here: http://test.openobject.com/
The tests performed on each module by the test server are:
- Test scenarii to check all the features and workflows, example: http://test.openobject.com/buildersresource/addons-trunk/builds/147/steps/OpenERP-Test/logs/lunch.test/text
- Quality of the code and respect to OpenERP guidelines, example: http://test.openobject.com/buildersresource/addons-trunk/builds/151
- Modules installation and demo data: http://test.openobject.com/buildersresource/addons-trunk/builds/151
Today we just added automated tests on OpenERP reports. Each time you install OpenERP, it will launch the generation of sample PDF reports. In the trunk version, you have the possibility to store the generated report into a directory using the new argument "--test-report-directory=/tmp/".
If you want to test this, on the latest OpenERP trunk, you can execute the following commands under Linux:
createdb mytestdb --encoding=unicodeYou will get a sample PDF file of two sales orders generated by the OpenERP YAML test engine.
./openerp-server.py --init=sale -d mytestdb --test-report-directory=/tmp
xpdf /tmp/sale-sale_order.pdf
If you want to know how it has been implemented in the test scenario, check this file in your local installation: addons/sale/test/sale_order_print.yml
The automated test server is still in beta. We plan to release the final version and start using it massively by the end of september. Our current work in progress for the automated test engine are:
- get statistics on commits, test failures and contributions made by developers
- allows to monitor and test community or partners branches (everyone will be able to subscribe his own branches on the integration server)
- send a clear warning email to the developer that introduced a regression
- add more tests on the OpenERP reports (only the sale order has been made for the prototype)
- add sample of PDF reports in the documentation of the module on doc.openerp.com
Labels:
openerp,
openobject
Thursday, June 17, 2010
OpenERP's reaction to Compiere's acquisition: mixed feelings
The announcement of the acquisition of Compiere by Consona Corporation leaves us with mixed feelings.
First, for us who are deeply committed to Open Source we can only feel sorry that one of the historical pioneers in this area is going to disappear. Reading the press release we understand Consona's interest in the technology but we have a hard time believing their commitment to support the community and indirect model. We know how much dedication it takes to support this business model. Even if Compiere was a competitor, from our perspective it is bad news. We believe that the more successful Open Source vendors the better for our industry as a whole.
Secondly, Compiere's buyout (and in our eyes withdrawal) happens at a very strange time. We have never experienced so much demand than during the past recent months. We see interest from major companies which strongly feel the limitations and the frustrations of dealing with SAP and Oracle, companies we never thought would consider Open Source ERP solutions a few months ago. We also experience increasing global demand: Poland, Mexico, South Africa and Philippines just to mention a few. Our opinion is that Compiere's failure is not resulting from a lack of demand for Open Source solutions, but the consequence of a poor execution and a lack of commitment toward their community.
Finally, Compiere's acquisition reinforces our determination. The Open Source ERP community needs a strong leader and we believe we can play this role. We know that we need to work hand in hand with the community to build not only a good product but the very best.
We are determined to do it by sticking to our vision, to our strategy and with the support of all of you!
Labels:
openerp,
openobject
Friday, March 5, 2010
CalDav and meeting improvements in trunk
The calendars in OpenERP trunk have been completly reviewed. OpenERP supports:
We are also working on a new look & feel for the web calendar. Here is the screenshot:
- caldav synchronisations (with sunbird, outlook, mobile phones, ...)
- recurrent event (with custom rules)
- alerts
- invitations (internal user, partner or emails), connected with the mail gateway for invitation reply
- tasks synchronized through caldav
We are also working on a new look & feel for the web calendar. Here is the screenshot:
Labels:
openobject
Subscribe to:
Posts (Atom)
