- Get Involved
- About Us
he graph views OpenERP
layouthan those of the version 6.1 of OpenERP support numerous extra features
Migration of DB with custom modules is totally possible and supported by our migration platform. Here are the steps:
1) The partner dumps his customer DB (the whole DB with custom modules)
2) He uploads this DB on our migration platfom: http://migration.openerp.com/
3) OpenERP does the migration job:
1 WITHOUT custom modules data (custom views, custom workflows, some attachments, ... and anything which will prevent us from doing functional tests were removed). This database is mostly useful for us, never install it on a production server
he job from OpenERP's side is done, all certified modules (and their data) are migrated. Now the partner has the choice for the custom part: he can handle the migration himself or ask OpenERP to do it for him.
If he chooses to do it himself:
6) The partner fixes any problem that may occur
To show you how it works concretely, here is an example and step by step process:
I have my database working on v of OpenERP with the following custom modules installed:
Service from OpenERP:
OpenERP can do the job of migrating the custom modules from one version to any future version. This is an extra service, not included in the OERP Enterprise contract. The price of this migration service is based on the code lines of the custom modules (800€ per batch of 1000 lines of code).
The structure (partner, address, contact) s too complex and and not companies.
We hope that this will help you to further integrate even more your tools with OpenERP!
We are happy to introduce Elico Corp as the first CTP Premium Partner for China.
OpenERP has designed a Certified Training Partner Program to leverage OpenERP training capabilities worldwide. This program aims to enable OpenERP Partners to provide a consistent and high quality level of training.
OpenERP Partners who wish to become Certified Training Partner must provide specialized functional and technical trainings. These trainings cover aspects such as Product lifecycle management, Supply chain management, Warehouse Management, Customer Relationship Management, Sales Order Processing, Online Sales, Financials, Human Resources and Decision Support System, etc. With Elico Corp, OpenERP is able to reach China and offer trainings locally.
Elico Corp is a Sino-European OpenERP official partner. They are fully dedicated to OpenERP consulting solutions towards Chinese-based SMEs. European and Chinese consultants provide out-of-the-box and tailor-made OpenERP implementations completed by local technical team for hosting solutions, hotline assistance and OpenERP development services. Their area of expertise ranges from CRM and services, supply chain management, trading and manufacturing.
More information: http://www.openerp.net.cn
We have just concluded our three day annual summit in Brussels. It has been a great opportunity for the OpenERP team to share the new features of v7.0., our vision and strategy for 2012, tips and tricks on how to manage OpenERP projects and many more. Furthermore, it has also been a great chance for our community and partners to showcase what they have been working on, may they be developments or successful case studies.
Whether you have been part of our event or not, you can find the presentations held during the Open Days 2012 on our slideshare channel http://slidesha.re/9zuI5o. There were more than 40 presentations covering technical, functional and success stories. Feel free to browse through them, download and share.
We also invite you to look at the pictures of the event. Find yourself, tag and share http://on.fb.me/J3Sk9p Also, after you're done with Facebook, check out what the participants have tweeted during the event http://bit.ly/HQImsU.
3 days, approximately 600 participants, more than 40 presentations!
We want to thank all participants for joining us and sharing our vision. A special thanks goes to all our community members and partners who have presented a topic and contributed to this amazing OpenERP Customer, Community and Partner Summit.
P.S. If you participated to this event and want to give us your feedback, email events(at)openerp.com!
We are going to develop significant improvements in the framework for the version 7.0. These improvements will allow OpenERP to be even more modular, to be easier to learn for new developers, to develop module with less lines of code and to be more pythonic.
Our first tests allowed us to reduce a simple module (the "idea" one) from 300 lines of code to 200 lines (33% less). We also significantly reduced the number of methods' signatures to learn by making all concepts more orthogonal and generic. This will lower the learning curve for new developers.
Among all the improvements, the most important ones are:
Of course, we will ensure that all those improvements will be backward compatible so that v7.0 will still support all community modules.
All these improvements will be presented and discussed/challenged during the community meeting of the next week. If you want to read the presentation before or you can not join us next week, you can already find it at http://thu.openerp.com/open-days-2012/core-api-draft.html.
OpenERP 6.1 comes with a load of new features, and one of them provides a much greater ability to scale up on modern hardware. Until now, OpenERP offered only one option: a multi-threaded HTTP layer, with a limited ability to use available computing resources. F or the 6.1 release, one of the goal was to make it easy to run the OpenERP server in multiple processes, harvesting big performance gains. Doing so introduces nice deployment choices and development opportunities.
By running a Python application such as OpenERP 6.1 in multiple processes instead of multiple threads, one can avoid Python's Global Interpreter Lock (GIL) and take advantage of the multiple cores of today's machines.
This (rather technical) post explains how the upcoming OpenERP version runs more efficiently on multi-core systems by using the excellent Gunicorn HTTP server.
This subject will also be covered during the 2012 OpenDays. The slides for the talk are already available at http://bit.ly/IkOYyq
Dance around the GIL
To create and manage processes, we first thought to use the `multiprocessing` module. When the time to finally implement a multi-process solution arrived, we quickly thought it was better to handle the added complexity in the Unix way: make a specific piece of code to manage processes. As it happens, such specific piece of code already exists and we didn't write anything (and thus didn't use `multiprocessing`): we simply turned the server into a WSGI-compliant application, leaving the responsibility to manage it to someone else. That someone else is Gunicorn.
Gunicorn is a Python HTTP server with support for WSGI. It uses the pre-fork model to spawn a WSGI-compliant application into different processes. In our case, the WSGI application is the OpenERP server. The server has its WSGI entry point located in the `openerp.wsgi` module. It is simply named `application`. In our repository, we also provide a sample `gunicorn.conf.py` configuration file. Assembling the pieces together, launching the server with multiple processes is a simple as:
> gunicorn openerp:wsgi.core.application -c /path/to/gunicorn.conf.py
You can modify the configuration to your liking. Gunicorn is well documented and the comments in the sample configuration file should prove enough to get you started. Just note that it is not possible to pass arguments to OpenERP on the command line (i.e. the way you would do it with `openerp-server`). Instead, you can directly set OpenERP's configuration values from within the Gunicorn configuration file (as it is done in the example file).
Awesomeness provided by the beast
It is still possible to start the server with the regular `openerp-server` script. Doing so uses a multi-threaded HTTP layer (this is not the 6.0 HTTP layer: we also use the WSGI entry point, this time serving it with `werkzeug`). But serving OpenERP with Gunicorn is great! When handling two concurrent CPU-bound requests with two workers (on at least two cores), you can expect a nearly 2x speed-up. Of course, if the two requests lock the same rows in database and don't spend much of their time running Python code, you might achieve no speed-up at all.
Beside taking advantage of a multi-core setup, Gunicorn provides a few hooks that we use to limit the resources made available to each request. It is also possible to automatically kill and restart processes after they have served a few thousands of requests, to mitigate memory waste, if any. We have added three new options -- although they are documented as command-line options, they really are used only with Gunicorn:
* `virtual-memory-limit` limits how much memory a process can allocate. When the limit is reached, a `MemoryError` is raised.
* `virtual-memory-reset` is a similar limit: when the amount of memory used exceeds that limit, the process will gracefully die after the current request and Gunicorn will re-spawn a new process. This is again a safety net against memory leak.
* `cpu-time-limit` limits the amount of CPU time a request can use, also raising an exception when the limit is reached.
WSGI and statelessness
To ensure we could run multiple OpenERP processes safely, we had to modify the server to make it stateless, because any request can be handled by any process. For this reason, we changed the implementation (and the name) of the `osv_memory` class. Instead of being held in memory, a `TransientModel` is stored in database, just like a regular `Model` (the new name for `osv`). The difference with a `Model` is that `TransientModel` rows are automatically deleted after a while.
Server-side caching is another issue. It's useful for improving performance in some situations, but makes the server partially stateable and thus requires synchronization. Fortunately, most of OpenERP caches are of minor importance and read-only, so the relatively fast process recycling will take care of refreshing The only cache that really required an update is the login cache; because an authentication check is done for each request, if you change your password (causing only one process cache to be updated) you will immediately be locked out. The trivial way we fixed it was to ignore the login cache whenever an authentication fails, causing a refresh of the cache on that process. After a change of password all caches will thus be refreshed transparently one by one.
Still, for the situation that needs it (i.e. it is really necessary to run multiple processes while still allowing configuration changes), we implemented a signalling scheme using the PostgreSQL database. Whenever caches are invalidated on a process, or a new module is installed, the process signals the change to other processes (managed by the same Gunicorn instance, or running on a different machine). The solution will be part of a next 6.1 release.
As mentioned above, the OpenERP server is now a library exposing a WSGI entry point. It is also a kind of WSGI middleware as it can dispatch requests to other, registered entry points. This is indeed the way we have now embedded the web client in the server: the `openerp-web` project provides its own addons directory, which is put in the server's addons path. The server loads the web addons at startup because it is the default value in the new `server_wide_modules` option (exposed on the command line as `--load`). When being loaded, the web addons registers itself as a WSGI entry point: the server serves XML-RPC and regular browser requests on the same port (8069 by default). Of course you can use the same principle for your own modules.
Please note the web client is storing its sessions on disk. If you plan to deploy multiple web clients, embedded in the server or not, you have to make sure the sessions can be accessed by any of them.
Embracing existing (and great) tools allow us to be leaner and meaner. This is true with WSGI and Gunicorn but we hope to continue in this direction. One important question is left unanswered: how many processes must Gunicorn spawn on a given machine to be as efficient as possible? We don't know yet the answer but we should have it quite soon: we are assembling benchmarks in the `openerp-command` repository.
 My use of the word 'speed-up' may not be completely appropriate: speed-up is normally used for parallel computation. In this post a 2x speed-up means you can run a second request with no impact on another one.
 Server-wide modules are not tied to a particular database. For instance, the web client can serve a page to create a new database; obviously the web client has to run even if a database is not yet loaded.
The news is out, OpenERP's latest version 6.1. is here. It's more user-friendly, even more business oriented and efficient to manage your company..
We have also put together a functional demo that presents 6.1. Watch this video to learn directly from us what OpenERP 6.1. can do for you. Share it in your company, with your clients and implement it now for your business.
We remind you that we will present v6.1. in detail at our 2012 Community, Customers and Partners Summit. Find out more and get your free ticket to our most important event of the year.
Make sure click "View fullscreen" on the buttom of the slides to visualize the agenda better!
Write it down your agenda and book your tickets. This year's OpenERP Community, Customers and Partners Summit will take place from April 11th to April 13th in Brussels. Last year was a success and we are confident that this year more people will join and more ideas and knowledge will be shared.
What are these days all about?
The event is dedicated to all our community and partners and, for the first time, also for clients. It's a time when we all come together and we present the new features, future version, achievements and a place where you can showcase your case studies, methodology or developments.Be there and see directly from the source the features of the 6.2 release!
What's new for this edition?
See agenda below:
We are glad to announce another brilliant and useful development that you might not have heard of, but which can help your business. Taxes are always a drag and can be an excruciating process. But if you are running your business on OpenERP, now you can take advantage of a new solution to help you with your taxes. Recently, Avalara together with one of our USA partners, NovaPoint have developed AvaTax. AvaTax is great solution to help you calculate your tax. Read below more info.
"Avalara, the leading provider of fully automated, up-to-date sales and use tax compliance solutions, announced the certified release of AvaTax for OpenERP, as part of its strategic partnership with NovaPoint Group LLC. NovaPoint, a premier provider of IT Consulting solutions for small to medium-sized businesses is the leading U.S. partner of OpenERP."
"AvaTax is a fully-integrated solution, offering Avalara’s easy-to-use sales tax calculation and filing capability, eliminating the hassle of tax compliance processes and minimizing the risks associated with sales and use tax audits. AvaTax is a web-based service that delivers instant sales tax calculations using a centrally-managed, highly-accurate calculation engine. OpenERP clients receive the most up-to-date sales tax rates, rules and jurisdiction boundaries currently available."
To read the whole article, access the link here!
This announcement is for all the OpenERP partners and community members! We want to give you the heads-up about our annual OpenERP Community and Partners Days!
Come and share your experience with community members, the OpenERP team and other partners during these three days. Last year we had a great time, updated everyone with the latest OpenERP news, features and had enough time to network. Read more about last year's edition
This year's edition, we are will focus on the new 6.1 version, all the new features, offers and many other relevant information.
When: Wednesday 11, Thursday 12, Friday 13 of April 2012
Where: Université Libre de Bruxelles (Avenue Franklin D. Roosevelt 50, 1050, Bruxelles - Belgium, map: http://bit.ly/sdmRiK)
More info: http://bit.ly/rLfr9E.
Participation is free, but we haven't opened registration for now. Nevertheless, save the date and plan your visit to Brussels.
Enjoy your first look at OpenERP 6.1! We are looking forward to your feedback and impressions!
Watch here a short video on how this feature works!
With 15 years of SAP experience and 2 years of OpenERP partnership, Feridis is the author of "OpenERP evaluation with SAP as reference". The book objectively describes the current differences and challenges, along with the opportunity for you to select a solution, expand your knowledge and hopefully find new business.
Along with this new exciting book, OpenERP has worked on its latest book to help you improve the management of your company and the ease of use in OpenERP. In this respect, OpenERP has published a total of 4 books this year. The books cover subjects like: CRM, Logistics, Manufacturing and the latest one covering Accounting.
Be among the first to get your hands on these book! Take advantage of this promotion and benefit from our special pack of two books. You can acquire a special pack now, just acces our ecommerce page:
"OpenERP evaluation with SAP as reference" is a new book which gives you an idea on everything you ever needed to know about what an open source ERP can do. Through detailed analysis, it evaluates and compares SAP and OpenERP, the leading open source system. Why is OpenERP easier to use? How does its function allow companies to innovate and customise? Why is open source more affordable when it comes to implementation? Read more...
"Open Source Accounting with OpenERP" In this company your accounting can be managed on a national and international level, also in a multi-company environment. With the smart user interface, entries, reconciliation and payments can be quickly managed. Analytic accounting can be integrated with projects, budgets, timesheets, and warehouse management to name some. Read more...
Order now your pack directly from our website!