Introduces important facts and tools to help you get starting with performance improvement.
Learn to monitor and analyze important metrics, then you can start digging and improving.
Includes useful munin probes, predefined SQL queries to investigate your database's performance, and a top 5 of the most common performance problems in custom Apps.
By Olivier Dony - Lead Developer & Community Manager, OpenERP
Title: Ansible, best practices.
Ansible has taken a prominent place in the configmanagement world. By now many people involved in DevOps have taken a look at it, or done a first project with it. Now it is time to step back and look at quality and craftmanship. Bas Meijer, Ansible ambassador, will talk about Ansible best practices, and will show tips, tricks and examples based on several projects.
About the speaker
Bas is a systems engineer and software developer and wasted decades on latenight hacking. He is currently helping out 2 enterprises with continuous delivery and devops.
Introduces important facts and tools to help you get starting with performance improvement.
Learn to monitor and analyze important metrics, then you can start digging and improving.
Includes useful munin probes, predefined SQL queries to investigate your database's performance, and a top 5 of the most common performance problems in custom Apps.
By Olivier Dony - Lead Developer & Community Manager, OpenERP
Title: Ansible, best practices.
Ansible has taken a prominent place in the configmanagement world. By now many people involved in DevOps have taken a look at it, or done a first project with it. Now it is time to step back and look at quality and craftmanship. Bas Meijer, Ansible ambassador, will talk about Ansible best practices, and will show tips, tricks and examples based on several projects.
About the speaker
Bas is a systems engineer and software developer and wasted decades on latenight hacking. He is currently helping out 2 enterprises with continuous delivery and devops.
This lecture discusses the concept of Regular Expressions along with its usage in different tools such as grep, sed, and awk
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
OpManager is integrated network management software that offers network monitoring, server monitoring, bandwidth analysis, configuration management, firewall log analysis, and IP & switch port management.
Hands On Introduction To Ansible Configuration Management With Ansible Comple...SlideTeam
Hands On Introduction To Ansible Configuration Management With Ansible Complete Deck is designed for the upper and mid-level management. Take advantage of the informative visuals of this PPT slideshow to elucidate the application deployment tool. With the help of our intuitive PowerPoint template deck, explain the advantages of the Ansible automation tool. This viewer-friendly PPT theme is perfect to elaborate on the architecture of Ansible software. This is because of the state-of-the-art diagrams that simplify the explanation. Consolidate the characteristics and capabilities of Ansible applications such as configuration management and cloud provisioning. This PowerPoint presentation features an Ansible installation flowchart for an organization. Employ the neat tabular format to compile the differences between Ansible and Puppet. This will assist your organization to implement Ansible and its configuration in an effective manner. Hit the download icon and begin instant personalization. https://bit.ly/3mLQJtJ
Unix , Linux Commands
Unix, which is not an acronym, was developed by some of the members of the Multics team at the bell labs starting in the late 1960's by many of the same people who helped create the C programming language.
A three hour tutorial I gave at PHP Quebec on the challenges, theory, and concepts behind making asynchronous JavaScript calls for Web 2.0 Applications using PHP
Here I covered the cores of Apache and also discuss each and every core. Virtual host, resistance server process some protocols like HTTP, SMTP, DNS FTP, are also be highlighted.
Focus on some installing part of apache.
Empower your App by Inheriting from Odoo MixinsOdoo
Empower your App by Inheriting from Odoo Mixins. Let us recode everything from scratch! Or not.
Thibault Delavallee, Software Engineer, RD Marketing Team Leader, Odoo
Based on work from Yannick Tivisse, Martin Trigaux, and Damien Bouvy.
This presentation is a supplement to the "Why SAP HANA?" video on Youtube. Download and follow along to the video. An added bonus to this presentation is an Appendix and Presentation Notes slides.
Video Link: https://www.youtube.com/watch?v=VCEr9Y8ZrVQ
In Odoo HR module Payroll management facilitate the management of employee's payroll and related functionalities. We can create each employee's contract details and maintain different salary structures using salary rules. But in Odoo, the whole salary computations are done based on the basic wage that we defined on the employee contract Form. But in some business models, there may be exceptions to it. Suppose someone wants to prepare the payroll based on the total hour the employee worked, such options are actually indeed for most of the firms.
This lecture discusses the concept of Regular Expressions along with its usage in different tools such as grep, sed, and awk
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
OpManager is integrated network management software that offers network monitoring, server monitoring, bandwidth analysis, configuration management, firewall log analysis, and IP & switch port management.
Hands On Introduction To Ansible Configuration Management With Ansible Comple...SlideTeam
Hands On Introduction To Ansible Configuration Management With Ansible Complete Deck is designed for the upper and mid-level management. Take advantage of the informative visuals of this PPT slideshow to elucidate the application deployment tool. With the help of our intuitive PowerPoint template deck, explain the advantages of the Ansible automation tool. This viewer-friendly PPT theme is perfect to elaborate on the architecture of Ansible software. This is because of the state-of-the-art diagrams that simplify the explanation. Consolidate the characteristics and capabilities of Ansible applications such as configuration management and cloud provisioning. This PowerPoint presentation features an Ansible installation flowchart for an organization. Employ the neat tabular format to compile the differences between Ansible and Puppet. This will assist your organization to implement Ansible and its configuration in an effective manner. Hit the download icon and begin instant personalization. https://bit.ly/3mLQJtJ
Unix , Linux Commands
Unix, which is not an acronym, was developed by some of the members of the Multics team at the bell labs starting in the late 1960's by many of the same people who helped create the C programming language.
A three hour tutorial I gave at PHP Quebec on the challenges, theory, and concepts behind making asynchronous JavaScript calls for Web 2.0 Applications using PHP
Here I covered the cores of Apache and also discuss each and every core. Virtual host, resistance server process some protocols like HTTP, SMTP, DNS FTP, are also be highlighted.
Focus on some installing part of apache.
Empower your App by Inheriting from Odoo MixinsOdoo
Empower your App by Inheriting from Odoo Mixins. Let us recode everything from scratch! Or not.
Thibault Delavallee, Software Engineer, RD Marketing Team Leader, Odoo
Based on work from Yannick Tivisse, Martin Trigaux, and Damien Bouvy.
This presentation is a supplement to the "Why SAP HANA?" video on Youtube. Download and follow along to the video. An added bonus to this presentation is an Appendix and Presentation Notes slides.
Video Link: https://www.youtube.com/watch?v=VCEr9Y8ZrVQ
In Odoo HR module Payroll management facilitate the management of employee's payroll and related functionalities. We can create each employee's contract details and maintain different salary structures using salary rules. But in Odoo, the whole salary computations are done based on the basic wage that we defined on the employee contract Form. But in some business models, there may be exceptions to it. Suppose someone wants to prepare the payroll based on the total hour the employee worked, such options are actually indeed for most of the firms.
Odoo views are dynamically created from XML codes. Data of Odoo are stored as objects and XML description is used to expose these objects to the user interface.
There are many widgets present in Odoo user interface to perform different functionalities. Status bar, Checkboxes, Radio button etc. make the operations in Odoo simpler. In this blog, I will be explaining about different default widgets in Odoo, its purpose, and implementation syntax..
Web services are a set of tools available over the internet or intranet networks which use the standardized messaging system to transfer data between applications or systems.
Web services allow interaction between different systems or applications using standard libraries such as HTML, XML, WSDL, and SOAP.
How to configure PyCharm for Odoo development in Windows?Celine George
Installing Odoo in windows is the really easy task. We can do it by just running the ‘.exe’ file. But for development purposes, this method is not preferred. Pycharm is an IDE which can be used for Odoo development in Windows, Linux, and mac. In this blog, we will discuss setting up Odoo development environment in windows using pycharm.
Crafito is HTML5 based theme for Odoo and built with bootstrap. Appjetty helps enterprises to extend Odoo with powerful and feature-rich plugins, extensions, themes and apps. Crafito is customizable, multipurpose and responsive theme for Odoo and it comes with a wide collection of custom snippets that gives control over any part of Odoo website.
How to Create and Manage Wizard in Odoo 17Celine George
Wizards are very useful for creating a good user experience. In all businesses, interactive sessions are most beneficial. To improve the user experience, wizards in Odoo provide an interactive session.
For creating wizards, we can use transient models or abstract models. This gives features of a model class except the data storing. Transient and abstract models have permanent database persistence. For them, database tables are made, and the records in such tables are kept until they are specifically erased.
Mageguru - magento custom module development Mage Guru
step by-step guide for magento module development. Hire dedicated magento 2 developers from mageguru with 5+ years experience, starting at just $18/hr to render highly robust, scalable and high-performance magento 2 compliment your business requisites.
Taming the Legacy Beast: Turning wild old code into a sleak new thoroughbread.Chris Laning
Got a legacy application? Trying to turn into a modern one? This presentation, given by Chris Laning, takes you through a methodical process that helps you attack that seemingly insurmountable task and tame it like a pro! The presentation is ColdFusion focused, but many of the methods employed could be used by programmers in other languages. This presentation was given at NCDevCon on September 13, 2014 in Raleigh, NC.
Chris is a Senior WebDeveloper and has been doing web development since 1996.
Sometimes the biggest blocker to understanding code or starting to write Apex is not having foundational knowledge of the basic building blocks of programming with the Salesforce Platform. In this webinar, Admins will learn the basics of object oriented programming: what they are, how they're used, and even some best practices to take note of in your own org.
How to Build a Module in Odoo 15 Scaffold MethodCeline George
Scaffolding is the way of building a skeleton structure for a module in Odoo. Using Odoo scaffolding we can create the module structure automatically. It saves much of our effort in creating a module manually. This slide lets us see how to use scaffolding in Odoo development.
20 tips and tricks with the Autonomous DatabaseSandesh Rao
This covers the top 20 questions most DBA’s , Developers will have on the Autonomous Database from provisioning to backups , troubleshooting , tips and tricks , security and HA . This is a good introduction for on-prem DBA’s who want to learn how this works quickly without spending too much time on it . Questions like what does the free tier cover , how do I do backup or if its automated how do I manage it , how to scale up and down , how to use tools like SQLDeveloper and SQLModeler , endpoints , terraform all in a quick 45 minute session which might take weeks to pickup reading documentation or spanning several presentations
LESSON 4: INTRODUCING FUNCTIONS AND MODULAR DESIGN
Learn about Functions in Python. Advantages and disadvantages of functions. Introduction to Modular design. Local and Global Variables and their use. Passing parameters. What are arguments? Big questions: Evolution vs Intelligent design in light of functions (and modular design). A closer look at Robotics and advances in this field. Challenges and tasks including with solutions. Suggested research/HW and YouTube video recommendations. A note on Python’s built in functions.
Similar to Odoo (OpenERP) - Creating a module (20)
Enhancing Project Management Efficiency_ Leveraging AI Tools like ChatGPT.pdfJay Das
With the advent of artificial intelligence or AI tools, project management processes are undergoing a transformative shift. By using tools like ChatGPT, and Bard organizations can empower their leaders and managers to plan, execute, and monitor projects more effectively.
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
2. Intro..
OpenERP use open-object server as ORM (I guess everyone is aware of
ORM)
To build a module, first decide what you want and create a sample
scheme.
In this presentation, we’ll create a new module for managing our daily
transactions where we’ll keep a log of where and what money we spent
on a particular day
3. Daily Transaction manager (a start..)
Each transaction will have a subject, date, amount we spent and note
section where we can write additional note regarding the transaction.
We can also categorize transaction based on type. For eg: transport,
household and personal.
This will help us in categorizing where we are spending more.
4. Daily Transaction manager - Modelling
Once our schema is finalized, we can easily extract attribute of each field.
For eg: Subject of transaction is mandatory, Date must be autofilled for
today’s date.
So final schema will be as follow:
Subject – mandatory, text field
Date – Date field, default with current date
Notes – text field
Type – selection field
Amount – mandatory and float
5. Daily Transaction Manager - Modelling
Once our modelling is done, we will create a new module for our Daily
Transaction Manager
To create a new module, first create a folder named daily_transaction
inside app directory of OpenERP
Inside that create 2 files named __init__.py and __openerp__.py (we’ll
discuss about the files further in the presentation)
6. __init__.py
In this file we’ve to write name of all folder and python files which are to be
compiled for this module.
If any python file or a directory is not listed in this file, then those files will be
ignored which could result in fatal error
So in our __init__.py we’ve imported our daily_transaction.py file.
8. __openerp__.py (cont..)
In this file, we’ll write description of our module and its properties. Lets
discuss each field in this file:
Name, description, version, author and category are used to describe our
module and its version. So each time we make any changes we’ll increase the
version number.
Depends : Here we specify if our module depends on other module. For eg: if we
are creating an extension to CRM module we’ll specify ‘depends: [‘crm’]’
Data: Here we specify all xml files related to our project. We’ll discuss about xml in
later part of presentation
Installable & Auto-install : I guess the name is enough to explain these properties.
9. Now lets move to dirtier part of
creating a module
CODING
10. daily_transaction.py
I guess I’ve scared you enough (he he he..!!!!). So lets start with show.
In this file we’ll write our whole code related to our daily transaction, i.e.
Modelling and Logical part.
As you’re aware now OpenERP uses ORM, so you don’t have to write any
SQL for modelling.
FAQ : Do we’ve to write all our code in this file? (this was asked by one of
trainee while I was explaining about module development)
ANS: NOOO..!!!!!! . Be smarter..!!!! Create another python file, write your code
and just include that in __init__.py
12. daily_transaction.py (cont..)
As you can see in previous slide we’ve written our code. Lets discuss each
line in detail now.
Line #1: from openerp.osv import fields, osv
The best explanation so far can be found here (I’m lazy programmer so please
go through this and get the knowledge )
Line #4: class daily_transaction(osv.osv)
In this we are creating a class for our daily transaction which is inheriting osv class
of OpenERP. This will provide openerp properties of a module to our module, eg:
name, description, columns, defaults etc.
Line #5, 6 & 9 are properties of our module
Line #10 to #20 is our modelling of our module we discussed in Daily
Transaction manager - Modelling
13. daily_transaction.py (cont..)
Line #10 to #20 will tell you about power of OpenERP ORM.
This code is enough to create model of our daily_transaction in the
database as well in user interface and guide us which particular field is
mandatory.
‘required=True’ is for adding mandatory attribute to our column.
Other attribute which could be used here are invisible, readonly etc.
We can use these attributes as dependent on other field values. For eg: we
can make notes field mandatory only if type is household.
note: fields.text(‘Notes’, type = {‘household’: [{‘required’:True}]}),
Now our modelling part is done, lets move ahead to UI part now.
14. daily_transaction_view.xml
I hope everyone may be thinking we need to write HTML, CSS and JS as
well as write actions to do CRUD operation. But with OpenERP forget about
all of this.
With OpenERP it’ll take minutes to do complete CRUD operation. So lets
begin with it.
OpenERP uses xml template to render data.
So first create a file named daily_transaction_view.xml in our module folder.
15. daily_transaction_view.xml (cont..)
In this file, we’ll create our module UI
So in basic UI following things are included:
Menu
List View (with OpenERP, we’ll call it Tree view)
Form View
Search View
Other features like datepicker, calendar, sort, group, additional filtering
using AND/OR operation etc. are key features which comes automatically
with OpenERP.
16. daily_transaction_view.xml - Menu
To create menu, we first have to understand our requirements.
We want our module to have a separate Menu header like any other Sales,
Purchase module
So out structure will be as follows:
Daily Transaction (this will be our main menu item for our Module)
Daily Transaction (this will be our sub menu)
Daily Transaction (this will list our records and we’ll do CRUD operation here, i.e. action menu)
So as you can see we’ve to create 3 menus.
17. daily_transaction_view.xml – Menu
(cont..)
<!-- Main Menu Related Info -->
<menuitem name="Daily Transaction" id="base.daily_transaction_root" sequence="60"/>
<!-- Sub Menu Related Info -->
<menuitem id="menu_daily_transaction_root" name="Daily Transaction"
parent="base.daily_transaction_root" sequence="1" />
<!– Action Menu Related Info -->
<menuitem action="action_daily_transaction" id="menu_action_daily_transaction"
parent="menu_daily_transaction_root" sequence="20"/>
So as you can see in our main menu, we have no parent specified. So this will create our parent
menu. In sub menu, we’ve parent, so it’ll create child of that parent menu. And in third we can see
we’ve associated an action to that, so it’ll call that action (we’ll discuss that later in the ppt)
18. daily_transaction_view.xml – Tree
To create list/ tree /table, we first have to understand our requirements.
We want our tree view which will show, subject of our transaction, date of
transaction, type and amount.
So out structure will be as follows:
Daily Transaction (this will be our title of List/tree view)
Subject Date Type Amount
<Record 1>
<Record 2>
19. daily_transaction_view.xml – Tree
(cont..)
This xml will create a record in model ir.ui.view.
<!--Daily Transaction List View-->
<record id="view_daily_transaction_tree" model="ir.ui.view"> <!– here id is the external id for this tree
view which must be unique and will be used for accessing this record -->
<field name="name">daily.transaction.tree</field> <!– this will be our name of record in ir.ui.view -->
<field name="model">daily.transaction</field> <!– this will map out tree view with our daily transaction model -->
<field name="arch" type="xml">
<!-- this will be our title of list/tree view -->
<tree string="Daily Transaction">
<!-- these will automatically map table headers for our list view, so we’ll select out column names of our model here -->
<field name="name"/>
<field name="date"/>
<field name="type"/>
<field name="amount"/>
</tree>
</field>
</record>
20. daily_transaction_view.xml – Form
We’ll create a simple layout for our form
Subject _______________
Date _________________
Type __<Household><Personal>…..__
Amount _________
Notes
_________________________________
_________________________________
21. daily_transaction_view.xml – Form
(cont..)
<!--Daily Transaction Form View-->
<record id="view_daily_transaction_form" model="ir.ui.view">
<field name="name">daily.transaction.form.view</field>
<field name="model">daily.transaction</field>
<field name="arch" type="xml">
<!-- this will be our title of list/tree view -->
<form string="Daily Transaction" version="7.0">
<group>
<field name="name"/>
<field name="date"/>
<field name="type"/>
<field name="amount"/>
<field name="note"/>
</group>
</form>
</field>
</record>
22. CRUD Operation and Controller
Now I guess you all may be thinking, what the ****. We don’t see how we’ll
click our menu item which will open out list view
No records were mapped in our list view just like it happens in any other
mvc where we loop over records and render the data
We didn’t specified which field is mandatory and bla bla..!!!!
The answer to all such questions is action
We’ll create another entry in our xml file for action
23. daily_transaction_view.xml – Action
<record id="action_daily_transaction" model="ir.actions.act_window">
<field name="name">Daily Transaction</field> <!– name of action -->
<field name="res_model">daily.transaction</field> <!– this action will be mapped to model
specified -->
<field name="view_type">form</field>
<field name="view_mode">tree,form</field> <!-- these are type of view our module will show
for our daily transaction mode -->
<field name="search_view_id" eval="False"/> <!– here we specify id of our search view -->
<field name="context">{}</field>
<field name="help">Create new daily transaction.</field> <!– help text for our model -->
</record>
24. daily_transaction_view.xml – Action
(cont..)
Line #1 as we see we specified id =“action_daily_transaction”. Now lets
rewind to daily_transaction_view.xml – Menu (cont..) and see for third menu
where we specified action. This is how when we click on that menu, this
action will be called.
For rest all I’ve mention comment on each line
25. daily_transaction_view.xml
Now wrap the complete xml code we discussed for menu, list, form and action in
following tags:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
_____________________our code here________________
_____________________our code here________________
</data>
</openerp>
Once done, we’ve to tell OpenERP that this will render view of our module. So we’ll
make entry for the filename in __openerp__.py
26. Install our module
Once done, now lets install our module and start managing our daily
transaction. So for that following steps need to be followed:
Step 1: Restart openerp server. (service openerp-server restart)
Step 2: Login to openerp.
Step 3: Goto Settings-> Modules -> Update Modules List
27. Install our module
Step 4: Click on Update
Step 5: Once done, remove installed filter and search for our module name
28. Install our module
Step 6: Click on Install or you can see module properties by clicking on
module name
29. Manage our daily transactions
Once installation is done, you can see our module name in menu bar.
Menu #1
Menu #2
Menu #3
30. Manage our daily transactions -
Create
Click on create and let’s start posting our transactions
32. “
”
Thank you…
I would really appreciate your feedback. If you feel that something is missing,
please post your comment. The code is available here. Feel free to email me
at tarunbehal@hotmail.com