Showing posts with label Modules. Show all posts
Showing posts with label Modules. Show all posts

Wednesday, 11 January 2012


OpenERP  Modules :- 



(1) Enterprise Modules -

    • Sales Managenment :-
Sales modules allows you to manage and classify your sales orders on a structural and hierarchical system. It gives you the ability to create new orders and to review the existing orders in their various states. Confirmation of an order can triggers delivery of the goods, and invoicing timing is defined by a setting in each individual order.


Key points:


  • Get all information needed by the salesman to do his quote in one screen
  • Complete follow-up and control of sales orders, deliveries and invoicing
  • Traceability of all customers operations

Integration benefits:


  • Integrated with point of sales
  • Automatic accounting (financial and analytic) entries creation,
  • Integrated with contracts, projects, master production schedule,
  • Integrated with different e-commerce platforms for online selling.
  • Design templates of re-usable offers with the report designer






(2) Logistic  Modules :-


    • Manufacturing :-
  • The manufacturing modules of OpenERP manage all the best-practices concerning manufacturing industries: multi-level BoM and routings, JIT, different costs methods available, phantom BoMs, configurable products, workcenter operations, integrates sales forecasts, etc. It supports several methods to automate productions or purchases propositions: MTS/MTO, Master Production Schedule, Minimum Stock Rules.

  • The scheduler will compute the best proposed planning according to the different constraints on products, customers, orders or workcenters. The production manager will be able to use our Gantt views to organise the different resources or orders.

Key Points:
  • Double-entry stock operations for a powerful traceability
  • Support all best-practices and standards
  • Control costs and margins on orders, projects, products, partners
  • Easy to set-up and run. 


Integration Benefits:


  • Avoid re-encoding everything, all documents are pre-generated.
  • Accountants decisions may have impact on the whole system.
  • Cross reporting with others modules.


 (3)  Accounts And Finance -


    •  Accounting :-
  • OpenERP provides a fully integrated accounting module than cover financial accounting, analytic accounting, third party management, taxes management, budgets, assets, etc. OpenERP has more than 50 extra modules for specific accounting features: electronic bank transfers, assets management, automatic invoicing, analytic controls, financial indicators, statements management, etc.


        Key Points:


  • Multi-company, multi-currencies, multi analytic axes
  • Real-time consolidation of multiple charts of accounts
  • Very good ergonomy for fast encoding of entries and invoices
  • An integrated analytic/cost accounting
  • Lots of customizable reports.


       Integration Benefits:


  • Avoid re-encoding everything, all documents are pre-generated.
  • Accountants decisions may have impact on the whole system.
  • Cross reporting with others modules.


 (4)  Human Resources -

    • Attendance :- 
  • This module allows you to manage your employee’s attendances, their leaves and absences requests, plan the company’s calendar and shows the time attended to projects. It gives you access to your employees schedule and give you the right to complete and validate their timesheets. The main objective of this module is to follow working hours of current projects and costs implications.
 Key points:
  • Validation system included.
  • Personalized menu for each user.
  • Follow up of profitability for each project.


Integration benefits:

  • Integrated to analytic accounting.
  • Integrated with accounting for automatic invoicing.
  • Possibility to get invoices per customer.
  • Dashboards and reports included.



 (5) CRM & SRM -

    •  Customer Relationship Management :-

  • The generic OpenERP Customer Relationship Management system enables a group of people to intelligently and efficiently manage leads, opportunities, tasks, issues, requests, bugs, campaign, claims, etc. It manages key tasks such as communication, identification, prioritization, assignment, resolution and notification.

  • OpenERP ensures that all cases are successfully tracked by users, customers and suppliers. It can automatically send reminders, escalate the request, trigger specific methods and lots of others actions based on your enterprise own rules.

Key Points:


  • Automatic incoming and outgoing email processing using the mail gateway
  • A generic and fully customizable system,
  • A configuration wizard to help you set-up it as per your requirements. 




Integration Benefits:


  • Integrated with the enterprise calendars,
  • Integrated with sales, purchases and after-sales services,
  • Get your enterprise processes running through workflows.





(6) Project Management -

    •  Financial Project Management :-

  • OpenERP integrates financial project management allowing you to stay in control of your different activities. It keep track of costs, budgets, automatic invoicing based on tasks achieved, profitability reports, etc.


Key Points:

  • Based on the analytic accounting
  • Fully integrated with human resources for cost control


Integration Benefits:

  • Planning automatically impacts budgets and treasury
  • Tasks and timesheets are fully integrated
  • Sales orders and tasks control are integrated




    • Operational  Management :-
  • OpenERP integrates a powerful multi-level project management system. It allows to manages tasks allocation, short and long term planning, delegations, etc. It’s fully integrated with sales or purchases.

Key Points:

  • Dynamic Gantt view to organise projects and tasks
  • Retro-Planning computations
  • Integrates best practices: GTD, Scrum


Integration Benefits:


  • Integrated with analytic accounting for financial part
  • Integrated with sales and invoicing to automates tasks
  • Integrated with HR modules for the organisation of the resources



    • Time Sheets:-


  • The timesheet system allows you to record time spent by employees on projects or activities. Its integration with the analytic accounting allows you to manage budgets, planning, costs and re invoicing of human resources.
  • Different working methods are provided according to the need:

  • Sign in/out by projects
  • Simple timesheet encoding
  • Full timesheet integrated with attendances and validation process by manager


Key Points:

  • Fast encoding of activities on tasks or globally
  • Easy and fast project selection, supporting alerts
  • Fully customizable work-flow
  • Multi unit of measure: hours, days, weeks.


Integration Benefits:

  • Integrated with analytic accounting for cost control of employee’s time on projects
  • Accounting integration to re-invoice based on time spent automatically
  • Integrated with tasks from project management, calendar for meetings
  • Integrated with attendances tracking system to spread worked time on projects


    • Purchase :-
  • Purchase management enables you to track your supplier’s price quotations and convert them into Purchase Orders. OpenERP has several methods of monitoring invoices and tracking the receipt of ordered goods.

  • You can handle partial deliveries in OpenERP, so you can keep track of items that are still to be delivered on your orders, and you can issue reminders automatically.

  • OpenERP’s replenishment management rules enable the system to generate draft purchase orders automatically, or you can configure it to run a lean process driven entirely by current production needs.



Key points:


  • Purchase tender management,
  • Integrates best practices: MTS / MTO, JIT, MPS, Kanban,
  • Invoices, delivered products and services control.



Integration Benefits:

  • Automatic procurement propositions based on different logistics,
  • Perfectly integrated with accounting, stock, manufacturing and project management.


  • Point Of Sales :-

  • Manage your point of sales directly with OpenERP. It allows you to easily manage all point of sales operations: selling, stock, encashment, invoicing, etc.
Key Points:

  • Very easy and complete touch-screen interface for end-users
  • Multiple payments systems
  • Support for direct invoicing
  • Support for reimbursements and products exchanges
  • 12 types of supported bar codes


Integration Benefits:

  • Integrated with stocks and accounting to avoid double entries
  • Integrated with sales management
  • Fully customizable

  • Invoicing :-
  • OpenERP support lots of different logistics for the invoicing automation: from the sales orders, from costs (time sheets, purchases, etc.), from tasks, from recurring subscriptions, etc.

Key Points:


  • A powerful price list system
  • A very useful follow-up module


Integration Benefits:


  • No double encoding at all
  • Automatic generation of invoices according to different work-flows
  • Integrated with analytic accounting for profitability.

Monday, 9 January 2012

OpenERP Custom Module Development

OpenERP Custom Module Development

Courtesy :- ibcscorp

Introduction

This article will explain the basic steps involved in developing custom OpenERP modules. It is a “Hello World” kind of guideline, therefore you won’t be able to find out all the theories behind OpenObject platform here. Instead you will get all the necessary information to get started with.
Sample module given here is fully functional and tested on OpenERP version 6.0.2 (with Web Client on Chrome browser). You will be able to download the complete source code at the end of this article.

Module Description

The sample module we are going to develop is a simple Notebook application. It helps to take down notes and contains just three fields namely “Title”, “Note” and “Date” in its data model.

Module Structure

An OpenERP module consists of some basic elements as explained below. Note that what is explained here is only the basic files required and structure will be more complex in real world applications.
  • module_name.py – contains the application logic and database table structure definition.
  • __init__.py – init script will load the application’s main python-module and related in application initialization.
  • view_name.xml – contains the application interface definition and menu structure.
  • __openerp__.py – is the module descriptor file. In previous versions of OpenERP this was known as “__terp__.py”.

File Contents

Even though there is no specific order, I am going to start with the main python class (module) of our OpenERP module. This will handle the core functionality of the module and also will generate the database table to store related data.

[ notebook.py ]

from osv import fields, osv
import time

class notebook(osv.osv):
 _name = "notebook"
 _description = "Simple Notebook"
 _columns = {
  'title' : fields.char('Title', size=30, required=True),
  'note' : fields.text('Note'),
  'note_date' : fields.date('Date'),
 }

notebook()
Next we import the python module we created in application initialization script.

[ __init__.py ]

import notebook
After that we define the view and menu structure of our module.

[ notebook_view.xml ]

<?xml version="1.0" encoding="utf-8"?>
<openerp>
    <data>
        <record model="ir.ui.view" id="notebook_tree_view">
            <field name="name">notebook.tree</field>
            <field name="model">notebook</field>
            <field name="type">tree</field>
            <field name="arch" type="xml">
                <tree string="Notebook">
                    <field name="title"/>
                    <field name="note"/>
                    <field name="note_date"/>
                </tree>
            </field>
        </record>

        <record model="ir.ui.view" id="notebook_form_view">
            <field name="name">notebook.form</field>
            <field name="model">notebook</field>
            <field name="type">form</field>
            <field name="arch" type="xml">
                <form string="Notebook">
                    <field name="title"/>
                    <field name="note"/>
                    <field name="note_date"/>
                </form>
            </field>
        </record>

        <record model="ir.actions.act_window" id="action_notebook_form">
            <field name="name">notebook</field>
            <field name="res_model">notebook</field>
        </record>

        <menuitem name="Notebook" icon="terp-project" id="notebook_menu"/>

        <menuitem name="Notes" parent="notebook_menu" id="notebook_menu_mainform" action="action_notebook_form"/>
    </data>
</openerp>
Finally create the application descriptor as follows.

[ __openerp__.py ]

{
 "name" : "notebook",
 "version" : "0.1",
 "author" : "Serpent Consulting Services",
 "website" : "http://www.serpentcs.com/",
 "category" : "Generic Modules/Others",
 "depends" : ["base"],
 "description" : "Simple demo module",
 "init_xml" : ["notebook_view.xml"],
 "demo_xml" : [],
 "update_xml" : [],
 "active": False,
 "installable": True
}

Packaging and Installing New Module

To prepare your module for installation, following the given path below.
1. Login to OpenERP admin view and open “Update Modules List” screen under “Modules” section in “Administration” area. Click “Update” button. And then close the form.
Note: Sometimes on OpenERP V6, the message ”Loading..” will be continuously displayed, even though your module is successfully updated. In that case simply close the message window and continue to next step.

2. After updating modules list, it will appear under OpenERP “Modules” list. It can be easily located by Searching for the module name. Once you found the module, mark it for installation, then select the check box in front of the module and click “Apply Scheduled Upgrades” link.

Click on “Start update” to continue the installation.

Accessing Your Module

After installing your module successfully, it will appear on the home screen of your OpenERP client as follows.

The sample source code explained above is available here.

Conclusion

Motivation behind preparing this article was the difficulty I have faced in finding out a proper start up guide in custom OpenERP module development. Even official documentation appeared to be incomplete/inconsistent at the moment of writing this article.

Anyway there is a lot more to explore in OpenERP module development. As an OpenERP partner, Binary Quest is always willing to help you in your OpenERP implementation project. If you found this post useful just leave a comment and do not hesitate to contact us on any OpenERP related issue.