How to merge delivery order In OpenERP


Here I would like to share with you that how to merge delivery orders in OpenERP 7.0.
it will check following condition while merging a delivery orders

1. Delivery order should be in same state
2. Delivery order should be in same invoice state
3. Delivery order should be in same customer

Mayur Maheshwari

How to Install Odoo (formerly OpenERP) from github


As all know that OpenERP have changed  brand to odoo where you find e-commerce apps , website builder , crm , sales ,purchase accounting and so many apps 

I would like to share with you about  how to Install Odoo ( (formerly OpenERP) from github on Ubuntu system which is first stap to intract with Odoo

Install Odoo ( (formerly OpenERP) from github

Odoo Github Link :

1. You need to install first gi on you ubuntu system for that open you terminal and type following commend

 a) Update apt source list
sudo apt-get update

 b) install update package

sudo apt-get upgrade

c) now install git 

 sudo apt-get install git

2. Install Python packages  which required for Odoo installation

sudo apt-get install graphviz ghostscript postgresql-client \
python-dateutil python-feedparser python-matplotlib \
python-ldap python-libxslt1 python-lxml python-mako \
python-openid python-psycopg2 python-pybabel python-pychart \
python-pydot python-pyparsing python-reportlab python-simplejson \
python-tz python-vatnumber python-vobject python-webdav \
python-werkzeug python-xlwt python-yaml python-imaging

sudo apt-get install gcc python-dev mc bzr python-setuptools python-babel \
python-feedparser python-reportlab-accel python-zsi python-openssl \
python-egenix-mxdatetime python-jinja2 python-unittest2 python-mock \
python-docutils lptools make python-psutil python-paramiko poppler-utils \
python-pdftools antiword postgresql

3. Install PostgreSQL database 

sudo apt-get install postgresql

4. Create database user for Odoo

sudo -u postgres createuser -s odoo

5. Download Odoo from Github to your system

a). make directory in home 
     sudo mkdir home/workplace

b).move to  directory
    cd home/workplace

c) Download odoo from Github

sudo git clone

6. Once finish a download need to run odoo server  

a). go to oddo path

   cd home/workplace/odoo

b). run a odoo server


7.To check odoo installation is perfectly work  on your system  so for that  just open your browser type 

Odoo Login screen
Odoo Login screen


Mayur Maheshwari
Skype: mayur_maheshwari1

How to create Qweb report in odoo

Hello All,

         I would like to share with you how to create a Qweb report in odoo [OpenERP].let we go stap by stap to create Qweb report in odoo [OpenERP].

What is Qweb Report ??

Qweb Report is the newest version of the Odoo reporting Format and its uses the bootstrap css classes and Qweb Template Engine for Make Quick Report Design in Odoo.

About Bootstrap :

Bootstrap is a free collection of tools for creating websites and web applications.It contains HTML and CSS-based design templates for typography, forms, buttons, navigation and other interface components, as well as optional JavaScript extensions

Expressions used in Odoo report templates :

There are some magic variables used in the report rendering. The main ones are the following:
        records for the current report
        list of ids for the docs records
       model for the docs records
       a reference to time from the Python standard library

a function to translate a part of a report. It must be used as follow:
<t t-foreach="doc_ids" t-as="doc_id">
<t t-raw="translate_doc(doc_id, doc_model, 'partner_id.lang', account.report_invoice_document')"/>
     res.user record for the user printing the report
      record the current user‘s company

Custom Report

A generic report use the default rendering context, containing the magic variables as explained before. If you want a new rendering context containing anything you want to process your data Odoo AbstractModel, a custom module is needed. These reports are called “particular report”.

For a particular report, you have to write an Odoo Model containing a render_html method. Classically, this method returns a call to the original QWeb render with a custom rendering context.

from openerp import api, models

class ParticularReport(models.AbstractModel):
_name = 'report.<<module.reportname>>'
def render_html(self, data=None):
report_obj = self.env['report']
report = report_obj._get_report_from_name('<<module.reportname>>')
docargs = {
'doc_ids': ids,
'doc_model': report.model,
'docs': self.env[report.model].browse(ids),
return report_obj.render('<<module.reportname>>', docargs)

Create Report  in Qweb odoo [OpenERP]

Steps to create in Following Ways ::

STEP 1 ::

Create View File For Rendring the Qweb in Odoo
the view file it self uses the the Bootstrap classes for designing the Qweb Report.

Create custom module in odoo and then  Navigate

YOUR MODULE NAME/View/yourview_file.xml

And also add the Entry of xml in the file

STEP 2 ::

Create Python class for report in report Dir

import time
from import report_sxw
from openerp.osv import osv

class your_class_name(report_sxw.rml_parse):

def get_lines(self, user,objects):
for obj in objects:
return lines

What ever function Which You want to access in the Qweb Template which are define in the class

We must have to add the Entry in it constructor like this

def __init__(self, cr, uid, name, context):
super(your_class_name, self).__init__(cr, uid, name, context)
'time': time,
'get_lines': self.get_lines,

Add the Entry For the report class which is inherited the osv.AbstractModel object

class report_your_class_name(osv.AbstractModel):
_name = 'report.Your_Module_name.report_reportname'
_inherit = 'report.abstract_report'
_template = 'Your_Module_name.report_reportname'
_wrapped_report_class =your_class_name

Navigate :


And also add the Entry in the file

STEP 3 ::

Add the Menu Action for Print The Report
YOUR MODULE NAME/report_file.xml

string="String to Display in Menu"
And also add the Entry of xml in the file

Special function ::

Hear In odoo use the special widget for print the currency symbol,
add the company address,partner address and many more

like this..

<div class="row">
<div class="col-xs-5 col-xs-offset-7">
<address t-field="o.partner_id"
t-field-options='{"widget": "contact", "fields": ["address", "name"], "no_marker": true}' />
<span t-field="o.partner_id.vat"/>
hear t-field-options attribute use the widget to print the partner detail in Odoo
like name,address,street,country etc... 

Same things for the currency symbol

<td class="text-right">
<span t-field="o.amount_untaxed" t-field-options='{"widget": "monetary", "display_currency": "o.currency_id"}'/>

Mayur Maheshwari (OpenERP/odoo)
Skype: mayur_maheshwari1

How to run query on database from pgAdmin and terminal - OpenERP (Odoo)


I would like to share how to run query on database from pgAdmin and terminal. - OpenERP (Odoo) .This was too easy to do but this post is specially for beginner in query.

What is product and How to configure product in OpenERP

Hello Friends,

Today we will discuss about the product and how to configure product in OpenERP.

Product module in OpenERP

What is product :

    A product is the item offered for sale. A product can be a service or an item. It can be physical or in virtual form.In short it will offered and serves the basic business needs like sales, purchase, manufacture and services.

    We can also say product is key of ERP. To unlock the erp with the key of product we should know about the product and how to configure product If product is not properly configured then it will creates so many issue and ERP flow is break down.

Product kanban View in OpenERP

How to configure product in OpenERP :

    In OpenERP Product Form, There are three fields are important for stock management when you are configuring a new product
    Product Type
    Procurement Method
    Supply Method

1] Product Type :
            The Product Type determines how the product will be managed in stock management.
In OpenERP three distinct product types are:

 (a) Stockable Product : This product is used in stock management and it will demanded in stock less or more based on it's defined reordering rule [minimum stock rule] in the system. Examples:- Computer, shoes, beg
 (b) Consumable : This product is not used in stock management. once you receive it and delivery it because this type of product stock is not maintain in the system . it just like a stock of some time of duration. Examples:- Fruit, Milk, Food ...

 (c) Service : This product is not used in stock management. This type of product will configure when your company is providing any type of services. Examples:- Man Power, a consulting service.

2] Procurement Method :
            The procurement method determines how the product will be replenished.
   In OpenERP two distinct procurement method are:
   (a) Make to Stock : when stock is needed then the product will take from the stock, If the quantities in stock is too low to fulfill the order then it will set a quantity based on the reordering rule [minimum stock rule] in Procurement and generate purchase or manufacturing order [depends on supply method] to meet the needs of product
   (b) Make to Order : when sale order is confirmed, it will not check the stock level and immediately it will generate the purchase or manufacturing order [depends on supply method] with the same quantity of ordered.

3] Supply Method :
            The supply method determines the purpose of the product either it will be buy or produce.
   In OpenERP two distinct supply method are:
  (a) Produce : when the product is manufactured or the service is supplied from internal resources.
  (b) Buy : when the product is bought from a supplier

Cheers ENJOY OpenERP  !!


Mayur Maheshwari

Eclips xml template for OpenERP 7.0


     OpenERP 7.0 basically brings about huge improvements in the area of usability. By usability we mean a better user experience through a better user interface. We know that in OpenERP, the user interface is designed via XML. OpenERP 7.0 has introduced some new features in XML.

Here I have made a very good Eclipse XML templates which may prove useful to OpenERP developers as well as beginners. These templates will provide a fast and easy method of coding in XML. Now no need to remember all syntax of XML,  just play with these Eclipse snippets!

To get Eclipse XML templates can contact me :
mail :

Mayur Maheshwari