
This is introductory session for the attendees.
You will get to know about history of ODOO, About the editor, About TinyERP, OpenERP, ODOO.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
This lecture demonstrates the feature of Mass Editing developed by Serpent Consulting Services Pvt. Ltd. This presents a case of advance Odoo programming where you can develop a feature which will work on the ORM Level.
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.
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.
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.
This lecture comes up with the guidelines for developers who wish to extend the skill of integration to the next level. We here demonstrate how you can integrate the various payment gateways to Odoo. We detail on every minute technical aspect of payment acquirer of Odoo.
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
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.
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
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.
The Course contains video series and material used for demonstrating the course. All code developed during training and material will be provided with the outline. The course will lead you the basic of Odoo programming and the same will be useful for Odoo v7, v8, v9 to v12(master, not released yet). The lessons are non-API and API-compliant both, which will be usable for all Odoo versions.
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.