A customer asked us on what he was able to do with pricelists on OpenERP, so we decided to take a look at that functionality. So this post will cover what I learnt today regarding pricelists in OpenERP.
As stated by the tipo you can find in the Pricelist list view; “A pricelist contains rules to be evaluated in order to compute the purchase or sale price for all the partners assigned to a pricelist. Pricelists have several versions (2010, 2011, Promotion of February 2010, etc.) and each version has several rules. Example: the customer price of this category of product will be based on the supplier price multiplied by 1.80″
You can find the pricelist functionality in the Sales > Configuration > Pricelists menu. Clicking on that item, will show you two options, Pricelists and Pricelist Versions.
Click on the New button and you will see the New Pricelist Form
In this form we will enter the pricelist name, whether it is a sales or purchase pricelist, whether it is active or not, and its currency. In this example I will enter “Brazilian pricelist”, select BRL as the currency, and click save. The idea is to have a pricelist that applies to the computer products sold on the brazilian currency, the Real.
After saving the pricelist, we are ready to enter the pricelist versions. The pricelist version determines which rules of the pricelist will be applied when a sale or purchase invoice is entered by the user. These rules can be simple or become quite complex. We will cover some of them.
First you need to enter the pricelist version name, along with its start date, end date and active status. After entering that information, you can enter the rules. These rules apply mostly to products and its categories.
We will enter a new rule to illustrate how this work. The idea is to change the sale price to 150% of the cost price for all items of the Computer Stuff category, in case the quantity sold is greater than 100 items.
We create the new rule by clicking on the New button in the Version form. A new form will popup where we will enter the rule name, we will select the product, product template and product category that applies to the rule, and we will enter the minimum quantity that applies to the rule and its computation rule. We save the form and that’s all we need to do. Doing so we can enter different rules that cover the complexities that might apply to pricelists.
You can also apply pricelists to partners. On the partner form, select the Sales & Purchases tab, and you will be able to select which pricelist applies to that customer/supplier.
- OpenERP stable v6.0 will be released in mid-January 2011 (erpmoldeo.wordpress.com)
These are some things I learnt past week while I was configuring invoices.
Printed invoices in OpenERP are reports. So, if you modify the graphical design of your invoices, such as the logo, all the reports in the system will be modified with the changes you just made. Last week I had to configure the system to print invoices in pre-printed forms. To do that I had to remove the header and footer from the invoices, but doing so I modified all the reports I had already created. Until I figured out what to do.
This is what I did. In the administration menu, I selected the Companies->Companies item.
In the companies list you have to select your company and click on the Header/Footer tab. In this tab you will be able to modify the XML code that is printed on every report. You can remove the header by deleting all the lines between the and tags.
<frame id=”date” x1=”13.5cm” y1=”21.5cm” width=”5.5cm” height=”1.2cm”/>
<frame id=”partner” x1=”3.5cm” y1=”18.9cm” width=”15.5cm” height=”1.2cm”/>
<frame id=”address” x1=”4.0cm” y1=”18.0cm” width=”15.0cm” height=”1.2cm”/>
In order to assign text to each section is:
<condPageBreak height=”12″/><para style=’body’>Cristian Sebastian Rocha</para>
<condPageBreak height=”12″/><para style=’body’>Av. Rivadavia 555</para>
<para style=’body’>[[ formatLang(o.date_invoice,date=True) ]]</para>
<condPageBreak height=”12″/><para style=’body’>[[ o.partner_id.title or '' ]] [[ o.partner_id.name ]]</para>
<condPageBreak height=”12″/><para style=’body’>[[ o.address_invoice_id.street ]]</para>
Checking the OpenERP Facebook page I found the following announcement:
“Our Planning for Openerp 6.0 : RC2: 31/12/2010. Stable V6.0: 17/01/2011 Thanks to community,partners and R&D team for making this possible.”
Can’t wait to get my hands on the new version of this wonderful ERP system.
- The differences between ERP and CRM (trak.in)
Well, how do you learn how to use OpenERP? There are many resources online, and the best way to get started is reading the OpenERP book, which can be found at:
You can either download an e-book or buy the OpenERP book at Amazon. I read the e-book and it is quite good, I highly recommend it. Have not read the printed book yet and I will receive it early January, so I will make a review of it as soon as I read it.
Reasons for reading the e-book? The most important reason is it portrays how the system works and shows different use cases for implementing the basic functionality of the system. It is an excellent way to begin the learning process with OpenERP.
There are plenty of online resources. Three online presentations I recommend are OpenERP Technical Memento, OpenERP Functional Memento and OpenERP Agile Implementation Memento. First I would study the implementation methodology presentation, then I would read the functional one and at last the technical presentation; which covers the technical aspects of developing modules.
You will also find online videos, most of them can be found at OpenERP Videos. These videos will save you a lot of time. And last but not least, you should check the OpenERP Planet and the software forums.
Hope this information helps you get started with OpenERP.
Most of the times, the information you see at OpenERP is either a List or a Form. The first ones are a list of business objects you can view or edit, whereas the latter allow you edit those business objects. So far so good. What might be difficult to grasp at first is how to fill out those forms or how to navigate those lists. Hence this post.
On the top right side of the main tab we can find three buttons. New, Save and Edit, and Cancel. These buttons save what we have done or let us cancel our cnahges. They are designed to allow you change the entry form state. To the right of the buttons we can find the navigation buttons, which allow us go to the previous record on the list and the next one.
After choosing one of the items on the list, we can edit it. Entry forms in OpenERP have a hierarchical structure, with main entries and secundary entries. They can be mandatory or not, and can be identified with the light blue color. They turn red when the user did not enter any information in them.
The secondary entries can be found in the different tabs in the form. For instance, the partner has the following tabs: Main, Sales and Purchases, History, Notes, Accounting and Categories. I advise you to check the different entries before continuing with the form. Below you will see an icon with a hard disk and an arrow pointing at some of the entries.
This icon indicates that it is necessary to save the form before continuing with the entry (just pressing the icon is enough). The entries with these arrows are lists. For instance, the partner can have different contacts and filling this form allows you to create more contacts for this partner.
Another important icon is the folder button, with a magnifying glass on it. This button is related to reference entries. This means that the information to be intered has to exist in the system database. A different way of entering information in a reference field is to write the first letters of the value we wish to enter and press Tab, the system will complete the field with the first value that matches the letters entered on the field. Keep in mind that as long as you enable and disable modules some entries might disappear.
Well, enough for today on OpenERP UI. My next post will cover some of the online resources for learning how to use this ERP system.
The past week I installed and configured an ERP system for a client in Argentina. This client is analyzing and testing this system in order to implement it later. The ERP system is OpenERP, formerly known as TinyERP. This system was developed by OpenERP S.A. and is licensed under the AGPL license. If you would like to get more information on the business model for this company, you can check it out at its website. Enough with the presentation, let’s jump to the system installation.
OpenERP is already available in the Debian and Ubuntu repositories. You can find it at the unstable version of Debian. Ubuntu already has it in its packages. If your server is Debian or Ubuntu, you can do an
$ apt-get install openerp-server
in order to install it. Otherwise I recommend downloading and installing the server from the source code.
To the best of my knowledge this tool needs Python-2.5 or Python 2.6 (I tried both versions, the first one on a Debian server and the latter on an Ubuntu server) and the PostgreSQL database. Once the server is installed, you have to prepare the database. This is done by creating a postgresql user and creating a database. This is necessary, otherwise Postgresql users will not be able to connect to the system.
After installing the server, you need to install a client to use the system. OpenERP has two clients: openerp-client, which is based on GTK and openerp-web which is based on HTML. Both connect through Socket and XML-RPC to the openerp-server. The first client can be downloaded from the Debian/Ubuntu repositories with the following command:
$ apt-get install openerp-client
whereas the web client can be installed with easy_install (these are the instructions for configuring and installing it http://doc.openerp.com/install/linux/web/index.html)
After installing the client, you have to configure the system tables and the system itself. You can do that with both clients in the “Create Database option”.
The most confusing part in the installation procedure is how to configure Postgresql. To make the story short, we ended up with five users:
- the Linux admin user
- the Postgresql admin user
- the openerp admin user
- the openerp database user
- and the openerp user itself
Keep in mind that the postgresql and the openerp database user do not require password! That is the default configuration.
After configuring the database, you need to install the local modules for your country (in this case, Argentina). I did so by installing the argentina modules which can be found at Launchpad. In order to install these modules, you have to install the launchpad tools. We install them first and then we download the argentinian localization mdoule
$ sudo aptitude install bzr
$ bzr branch lp:openerp-argentina
This last step downloads these modules to the current directory. You should copy them to the modules directory in your openerp installation and enable them. But I will cover this in a later post.
What is the goal of this blog? Well, I just wanted to share my experiences implementing an Open Source ERP system. We are using OpenERP with four clients already, and we (my partners and I) thought it made sense to share what we learnt so far along the way.