ODOO Technical Training

Complete Series of ODOO Technical Training from Basic to Advance Level training by ODOO Experts.
4.4 (34 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
191 students enrolled
$50
Take This Course
  • Lectures 34
  • Contents Video: 18.5 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 4/2015 English

Course Description

Our highly affordable OpenERP/ODOO technical training is typically dedicated to IT professionals, developers and integrators who want to grasp a comprehensive knowledge of technical aspects of OpenERP/ODOO. We ensure that our training programs are delivered by industry professionals who possess extensive experience in technical implementation of OpenERP/ODOO and are aware of the professional challenges that one may face in an organizational environment.

Course contains video series and material used for demonstrating the course. All code developed during training and material will be provided with the outline.

This training outline is starting from setting up developer environment and installing odoo to expert level customization on Reports, Wizards and Business process workflows. Developers with basic Python knowledge can take this course and build their career in Odoo development as technical consultant.

What are the requirements?

  • Intermediate level experience in Python Language
  • Understanding of Object Oriented Concepts
  • Basic knowledge of ODOO
  • Eclipse editor configured in the system

What am I going to get from this course?

  • Understand the development concepts and architecture.
  • Develop a new ODOO module.
  • Integrate any third-party tool to ODOO

What is the target audience?

  • ODOO Beginner who wish to customise ODOO Module
  • Technical Experts who worked on OpenERP and want to learn ODOO API
  • ERP expert who wish to customise ODOO technical, Business Process, Reports

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

05:23

This is introductory session for the attendees.

You will get to know about history of ODOO, About the editor, About TinyERP, OpenERP, ODOO.

Section 1: Technical Fundamental of ODOO Addons
24:36

In this video you will learn :-
ODOO Addons module directory structure
__openerp__.py manifest file parameters and its usage
Different dIrectory used to differenciate ODOO tools

38:19

In this video you can learn :

How to create basic fields.
How to use fields attributes in paritcular fields.
How to create basic views like :- Form, List and search view.
How to create action and Menu and how to bind action on menu.

32:52

In this video you can learn :-
How to create relation fields, Complex fields and Functional fields.
How to create advance search view like :- Add filter using domain, Add group by on field.
How to set domain In action using domain field.
How to set default values on fields in action using context field.

28:25

In this video you can learn :-

How to start web-client in developer mode. Once user can activating developer mode than user can easily debug technical information.
Widgets :- Widgets is use for change user inteface. Many widgets are available in ODOO like :- Selection, URL, Radio, email, image, float_time, many2many_tags, many2onebutton, progressbar, handle, password=True, Status bar and priority.

33:13

In this video you can learn :-

-> A domain is a list of criteria used to select a subset of a model's records. Each criteria is a triple with a field name, an operator and a value. Using domain user can search specific records base on specific search criteria.
-> The attrs is an element in ODOO which is responsible to alter the attributes of a field, not the value. The 'attrs' attribute can be used to dynamically change the attributes of view components based on the value of other fields. Buttons in OpenERP use states attribute for dynamic visibility, they too can be used with attrs. It can be used on field, page, group, button and notebook tags. Remember, there is no RPC call ever made because this is a pure client side attribute at view level.
-> The “onchange” mechanism provides a way for the client interface to update a form whenever the user has filled in a value in a field, without saving anything to the database.

01:12:11

In this video you can learn :-

-> Views define the way the records of a model are displayed. Each type of view represents a mode of visualization (a list of records, a graph of their aggregation, …). Views can either be requested generically via their type (e.g. a list of partners) or specifically via their id. For generic requests, the view with the correct type and the lowest priority will be used (so the lowest-priority view of each type is the default view for that type). Also you can learn how to use different attributes on field level and view level.
-> The diagram view can be used to display directed graphs of records.
-> Graph views allow aggregated overview and analysis of models, their root element is <graph>. Graph views have 4 display modes, the default mode is selected using the @type attribute.
-> Calendar views display records as events in a daily, weekly or monthly calendar.

52:43

The model attributes are nothing but the attributes/ class variables. These are connected with the model. Each of the model attributes have their own significance. For e.g. name is used as the name of the model and a table is created in the database from the _name attribute. similarly _description is used to describe the model. There are list of attributes which can be used with model which are _rec_name, _inherit, _inherits, _sql_constraints, _constraints, _auto, _track and many more.

Creating a basic Module
13 questions
26:40

In this video you can learn :-

The fields parameters are the attributes of the fields for e.g. string will be the label of that field on the view. help would be the tool tip and required, readonly are the attributes that will decide the type of the field whether it should be mandatory or readonly. Similarly there are many other attributes and each attribute has it's own perspecitve.

32:07

In this video you can learn :-

The other set of Fields are Complex Fields. These fields are different and complex than basic fields and relational fields. The Complex fields are related field, property field and functional field.
The Related field is used to fetch another field from the relational table. The Property field is a field in which a default values is filled based on the company selected. Very useful in case of multi company environment. The Functional field is used to compute some value from existing fields.

49:19

In this session you will learn :

Writing and Designing Kanban view,

Set Kanban card content, add widget in Kanban Card and set colours,

Grouping Kanban cards and change record values with Drag-Drop.

24:06

In this video you can learn :-

Constraints are set of rules which are used for the validation process before creation, updation or deletion of a record.
There are basically two types of constraint in Odoo.
1. SQL Constraints
-> These are the constraints which will be applied on the table in database. and they will be validated when a query is fired in the database.
2. Object Constraints.
-> These are the constraints which are not applied on the table but are validated via a python code method defined in the model and is validated when create(), write() or unlink() method is called.

There are some fields which are automatically created when a table is created in the datbase. id, create_date, create_uid, write_date, write_uid. id is the primary key of the table and other four fields are very useful to trace the records for audittrail.

Apart from the Automatic fields there are some reserved fields which are used by odoo but they are manually created by the developer. They have certain significance in odoo. For e.g. name field is a required field specially if the model is having many2one relationship from some other model. The M2O field displays the name of the record. active is another one, if the active field is checked only then the record will be displayed in the list else not. The others are state and sequence.

Section 2: Inheritance
31:01

There are basically two types of Inheritance in Oddo. One of them is used to udpate existing model's fields and it's views. This can be achieved using the _inherit attribute of the model. When you want to use View Inheritance you need to use the tag xpath with it's attributes expr and position to place the field at a specific position in the existing view.

Section 3: ORM Methods
56:01

This session explains the Core of Odoo, the ORM Methods which are responsible for the interaction of Odoo with the Postgresql. The mehods are create, write, read, browse, search, copy, unlink. These methods are used to create, update, read, search, duplicate or delete records. Using these methods you can perform the operations mentioned above in the same model as well as any other model using the object of the model.

18:11
This session shows how to use the advanced ORM methods which are different from the conventional ORM Methods which deal with the database records for creation, updaion, deletion, fetching, searching etc. These method don't directly deal with the database but are still crucial for displaying the data in the GUI. Using this method we can have default values, our specified views, a string to be displayed in the M2O field can be searched with more than one field in M2O field's search etc.
12:37

This session explains how the action calls from GUI are executed and which methods are called from when any action is performed on GUI and how it reaches to the server to create, update or delete the data and sequence of methods in which manner they are being called.

15:49
Decorators are concept of python which minimizes the efforts of the devlopers to pass the environmental variable every now and then like Cursor, Logged in User and Context.
A Decorator itself is a method, and it uses the concept of nesting. Whenever you call a method which is decorated first the decorator is called and then the method which is decorated is called.
It's also seen how the method calls in the prior version differ from the method calls of Odoo(v8) which are using API decorators
28:01
All the ORM methods, Functional field's method, on_change method are using the decorators from the Odoo API.
api.one, api.multi, api.model. api.constrains, api.depends, api.returns, api.v7, api.v8 are most commonly used decorators. Using the decorators the system has become much faster than before and the code has been made simpler avoiding passing the same arguments in all methods.
30:26

In this session you will learn :
Overview of How x2many fields differ in DB operations in ORM Framework
x2Many patterns Overview, Create Records into x2many table - create()
Update the records of one2many table with IDS for the parent record - write()
Delete the records of x2many and option to choose to remove from DBs or unink relation
Update the records of Many2many
Unlink Many2Many relational records, but not from DB
Remove all existing relational records and overwrite by new relational records
Module Recorder by SerpentCS in Odoo

25:25
Overview of ORM Methods and introduction to Basic Models.
Introduction to ORM Model
Most commonly used model for humans (customers, suppliers) is res.partner.
Others are res.users for Users, res.groups for Groups(Roles), res.company for Company. res.country for Country and res.currency for Currency
Few more technical ir.ui.view to store the views of all models, ir.actions.act_window to store the actions of views. ir.ui.menu to store the Menus, ir.model.access to store the Access rights,
ir.model and ir.model.fields to store Models and Fields respectively, ir.module.module to store the modules.
Apart from these models the other models of other official addons modules usef for Products, Warehouse, Invoices, Accounting, Sales, Purcahse, Manufacturing, HR, Project etc.
Section 4: Introduction to Different Types of Button and Overview of Linked Views
43:02

There are basically 3 types of button available in Odoo.
1. Object
-> Object button is used to call a model's method.
2. Action
-> Action button is used to call an action to open another view
3. Workflow
-> Workflow button is used to call a signal to make a transition in the workflow.
Apart from these buttons there are Smart buttons which are customizable buttons and become very handy when we have relations with other models.
Just like Action buttons we have act_window which are used as a link from one model to another model but unlike buttons they don't appear in the form view but it appears in the more... dropdown on top of the view. It does the same thing, opening up another view.
We have one more special button which is link button, Instead of a normal button it is displayed as a link and does the same operations like other buttons.

Section 5: Creating Demonstration Data and Sequence
23:13

Demo and Data are related to creation of records when we install module. XML, YML files are used to create both Demo and Data. There's a difference between demo and data. Technically when you create a new database you have a checkbox "Load Demonstration Data". When you check this checkbox then the Demo data are created. When you have data they are always created irrespecitve of the checknbox. Demo are used only for demonstration and are not universal for all the industries for e.g. Customers, Products etc. Data are universal for all the industries for e.g. Countries, Currencies etc. Sequence is technically same as our sequence in database. It is used to get a auto incremental number generating. Used mostly for Invoice Numbers, Manufacturing Orders, Sale Orders, Purchase Orders, Journal Entries etc. The Sequence can be generated based on the prefix, suffix, number. You can skip the numbers if you want on a regular interval. for e.g. if you want only odd numbers it is possible to have. Moreover you can also use Company, Year, Month etc in the Sequence as well.

Section 6: Wizard
47:13

Wizard is nothing but a popup dialogue box which is opened to perform some operation on the fly. Wizard can be used to update some information, create/update/delete records, print reports etc. Wizard works transparently same as our Odoo model i.e we can use read, browse, default_get methods for it. The difference between Odoo Model and Wizard is that the wizard table record is not permanent. It stores data temporarily which elapses after some time.

Section 7: Web Services
25:42
Introduction to Web Services.
-> Connecting Odoo using XML-RPC
-> Connecting Odoo using JSON-RPC
Section 8: ODOO Server Parameters and Configuration
50:58

In this session you will learn :
Overview of Command Line Arguments while starting Odoo Server
Most Used Args : Ports, Addons path, Language, dbListDatabase related Operations : hosts, ports, and credentials.
How to see the list of server params and version of Odoo
Specifying a Config file
Saving the command line args into a config file
Loading a module from terminal on specific DB,
--init and -d Update the module from terminal, using -u MODULENAME/ALLUpdate the module from terminal,
without loading demo data Import partial data even the crash is found while importing module
Use Pid file to store process id of the Odoo server.
Running Server with multiple addons path
Load server wide modules by default
Specify Directory to store File data for Document ManagementSystem
XMLRPC Config, TCP port, Server port, proxy mode, log polling portXMLRPC Secure option with port,
Certification file for ssl and PEM file
Filtering the Database options to be seen by end user

Display no Database option to the end user
Load Test file, saving test results of YML files
Logging configurations, loglevels and logfiles.
SMTP Configuration, Database related Operations : hosts, ports, and credentials.
Internationalisation config, loading language from Terminal
Update Module for a specific Database
Load foreign Language from terminal
Load language from GUI, AutoReload server and putting into debug mode
Stopping server after initializing
Setting timezone from Terminal, Setting the age of Virtual memory/Transient records by time,
number of records, Setting the limit of Scheduler calls, Unaccenting the database to store only English chars
Setting up GEOIP database file
Configure workers and limits of CPUs for multiprocessing

Section 9: Security in Odoo
24:55

In this session you will learn :
ODOO Security system for different levels like Menu, Action, Field, Model, Record, Button
ODOO has very easy to setup security systems with Groups, Users, Record Rules and Access Controls on different objects.

47:11

In this session you will learn :

Configuring Security Groups from Module, Loading Access Rights using csv file in module.

Managing Menu and Action with Groups and Access Control

Record Level Security with Record Rules

Field Level and Button Level Security using groups

Section 10: Designing Analytical (BI) view
31:50

In this session you will learn :
Designing Analytic Views (BI) Reporting using postgres view and Export analytic data to excel

Section 11: Workflow
15:37

In this session you will learn :
Workflow Fundamentals, Elements of Workdlow : State, Transaction, Activity
Use of Workflow and Actions, Requirements and Use of Workflow

44:31

In this session you will learn :
Designing and developing your workflow, Registering workflow, Flow Start, Flow Stop

Section 12: Reporting
28:42

In this session you will learn :
Qweb engine tags for Setting paper size, looping, Conditions, Attributes of different tags, Setting Variables, Calling sub-templates

01:02:55

In this session you will learn :
Fundamental of Qweb Templating, Report Module structure in ODOO,
Explanation of different layers of Qweb Engine,
Predefined Qweb Master Templates,
Understanding Qweb Report Attributes and Tags,
Registering Report with report tag in ODOO

23:45

In this video you will learn :
How to inherit existing Qweb Template and Make changes in existing report with xpath and inheritance.

Module Development Promo
Preview
15:02

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Mr. Jay Vora, Where Quality, Time and Accuracy are Valued The Most.

Serpent Consulting Services Pvt. Ltd. specializes in business of providing custom application development, offshore software outsourcing services, Support maintenance and migration services and functional & technical trainings to its clients worldwide on open source tools and technologies like OpenERP, Tryton, Alfresco, Magento, SugarCRM, Vtiger etc. Our expertise lies in reducing costs and enhancing productivity by bringing the strategic advantage of offshore software development to the very doorsteps of our customers in more ways than one. By improving reliability, speed and agility, we enable our customers to achieve sustainable differential advantage over their competitors. We are expertised in providing highly cost effective solution through open source technology. Our resourceful services include consulting, cost control, project planning, e-platform development, database programming, trainings and support.

Instructor Biography

Mr. Husen Daudi, Instructor at SerpentCS

- 8+ years of strong experience in ERP Technology with world's largest Open Source Business Applications.

- Played key role in developing and maintaining various ERP Product modules and integrating them on Open Source ERP Environment.

- Experience on Scrum methodology for project management

- Experience in Team Building

- Experience to handle offshore clients and work with big team.

- Conducted 30+ national and international training on CRM, SRM, MRP, Accounting, Medical, HRM, Payroll.

- Conducted 40+ OpenERP Technical training on various countries.

Specialties: Python, OpenERP, ODOO, Django, zope, plone, joomla, wordpress, silverstripe, ERP functional expert, consultant, Android and ios application designing.

Ready to start learning?
Take This Course