This slide explores the concept of "monkey patching," a technique used to augment existing functionality in Odoo 17. Let's delve into what monkey patching entails and how it can be implemented within the Odoo 17 environment.
How to Load Custom Field to POS in Odoo 17 - Odoo 17 SlidesCeline George
This slide explains how to load custom fields you've created into the Odoo 17 Point-of-Sale (POS) interface. This approach involves extending the functionalities of existing POS models (e.g., product.product) to include your custom field.
Ensure_one method in Odoo - Odoo 17 Technical SlidesCeline George
The ensure_one method is a simple but powerful utility to enforce that operations are performed on a single record in Odoo. It is used to ensure that the recordset contains exactly one record. If the recordset contains zero or more than one record, it raises an error.
The document provides tips for finding resources in the Eclipse workspace using a visitor. It describes creating a class that implements IResourceProxyVisitor and overriding the visit() method. This method would check each resource proxy for a match to the location string and return the resource if found. This allows recursively searching the workspace to locate a resource based on its path or other identifier.
Rhino Mocks is a .NET mocking framework that allows developers to easily create and setup mock objects to test interactions using unit tests. It generates both mocks, which allow expectations to be set and verified, and stubs, which simply return preset values without verification. The document provides examples of using Rhino Mocks to generate mocks and stubs of interfaces, set expectations on mocks, and verify mock interactions using the AAA (Arrange, Act, Assert) syntax. It also distinguishes between mocks and stubs.
The document discusses various techniques for optimizing Django ORM queries to improve performance, including:
1. Using bulk_create, update, and transaction.atomic to perform bulk operations in a single query instead of multiple queries.
2. Prefetching related objects and selecting related fields to avoid N+1 queries when accessing related data.
3. Filtering and ordering prefetched querysets to further optimize related data retrieval.
4. Encapsulating optimizations like select_related in custom model managers to apply them automatically.
The key is to minimize the number of database hits by performing operations in bulk where possible instead of one-by-one. Selecting related fields, prefetching, and
Errors and exceptions in Odoo 18 - Odoo SlidesCeline George
In Odoo 18, there are many kinds of errors and exceptions possible while running the module or code under development.
Error management in Odoo 18 involves understanding how the system handles exceptions and bugs, as well as employing good practices to manage and resolve them effectively.
Когда тестировать, что тестировать, как тестировать, Как ускорить тесты и упростить их написание. Отказываемся от классических фикстур в пользу динамически создаваемых моделей.
The document provides an overview and guidelines for using design patterns with Django. It discusses common patterns for organizing URLs, models, views, and generic views. Some key patterns covered include using multiple managers and custom manager methods for models, handling GET and POST requests in the same view function, and creating chainable and lazy querysets. The document acts as documentation for best practices when building Django applications and sites.
How To Extend Odoo Form View using js_class_Celine George
In Odoo, js_class is used in form views to link JavaScript classes to XML views. This allows developers to extend and customize the behavior of Odoo form views by leveraging the power of JavaScript. First we need to register a class in javascript for a particular view. When we add the same class for a form view, it injects the customized view into the form.
How to perform product search based on a custom field from the PoS screen of ...Celine George
Odoo 17 offers a robust solution for retail businesses, restaurants, and other point-of-sale environments. It’s features like User-Friendly Interface, Multi-Device Compatibility, Inventory Management, Payment Options, Customer Management makes the user so smooth to indulge with.
We know that, Odoo PoS screen opens up with all the retail sellable products on the screen just after creating the session once we are ready for the sale.
How to Create Cohort View in Odoo 17 - Odoo 17 SlidesCeline George
Odoo has a variety of view kinds, including list, form, tree, kanban, graph, pivot, calendar, cohort, and more. Cohort views are a kind of reporting view in Odoo that let us monitor and evaluate user behavior across time. Rows and columns are displayed in the cohort view.
This document provides an overview and instructions for developing a real application called SportsStore using ASP.NET MVC. It discusses starting the domain model by adding a Product model class and creating an abstract IProductsRepository interface. It also covers setting up projects, installing packages, adding references between projects, and configuring the dependency injection container.
The document discusses the history of software testing and introduces unit testing in Django. It covers loading test data through fixtures and factories to set up test data without affecting the database. It also introduces mockers to mock external dependencies like API calls during tests.
Forms in Django allow encapsulating form data and validation logic. This document discusses advanced form techniques in Django, including:
- Dynamically generating forms based on models to handle multiple forms of different types.
- Altering form fields dynamically based on request data, such as restricting a dropdown to related objects owned by the user.
- Fully dynamic form building by defining form fields from database models, such as a survey application where questions are defined in models.
- Common techniques like subclassing form methods, type() function to dynamically generate form classes, and leveraging standard Python to extend Django's capabilities.
A talk i had about the solid principles at AngularJS-IL meetup #15. AngularJS is a great framework, it give you the tools you need to build robust single page web applications. Nut a good design and architecture are framework agnostic. By applying some well known object oriented principles to our angular application we can achieve more clean and modular code base.
The document discusses the decorator pattern and how it can be used to add functionality to objects at runtime as an alternative to inheritance. It provides examples of how the decorator pattern can be used to dynamically add different discount strategies to a product object without modifying the core product class. The composite pattern is also introduced as a way to group different discount strategies together to calculate a total discount amount.
This document provides guidance on a programming primer for encapsulation and abstraction using VB in ASP.NET. It discusses creating an Employee class with private member variables for ID and salary, along with public properties to access these privately. The example shows how to set property values and output them, demonstrating encapsulation. It also explains how abstraction relates to classes representing conceptual models without physical form. The document concludes with exercises on using different access modifiers like private, public, and protected.
Company segmentation - an approach with RCasper Crause
We classify companies based on how their stocks trade using their daily stock returns (percentage movement from one day to the next). This analysis will help your organization determine which companies are related to each other (competitors and have similar attributes).
How to Setup Default Value for a Field in Odoo 17Celine George
In Odoo, we can set a default value for a field during the creation of a record for a model. We have many methods in odoo for setting a default value to the field.
A quick run through explaining actions and filters that are used throughout WordPress (with useful metaphors) and some examples. It is intended to demonstrate that actions and filters are not as scary as people might think and that they can very easily make significant changes with only a few lines of code.
PyCon KR 2018 Effective Tips for Django ORM in PracticeSeomgi Han
In the following slides, I will share my solutions that have worked out with Django ORM. These are not only Django ORM issues but also some resolutions that have been effective with other techniques.
The document discusses the Chain of Responsibility pattern and Command pattern. It defines each pattern, provides examples of how each can be implemented in Java code, and notes related design patterns. The Chain of Responsibility pattern involves passing a request between a chain of objects until an object handles the request, decoupling the sender and receiver. The example shows approving purchase requests by role. The Command pattern encapsulates a request as an object, allowing request parameters and receivers to be changed, decoupling invocation from execution. The example uses actions to trigger window commands.
How to make a component and add it to systray in OdooCeline George
The system tray icon in Odoo serves as a quick-access feature, allowing users to easily interact with certain functionalities of the Odoo system without navigating through the main interface.
This document provides guidance on an exercise to learn encapsulation and abstraction using C#. It instructs the reader to create a class called Employee with private member variables for ID and salary, and public properties to access these values. An event handler is created to instantiate an Employee object, set the property values, and display them, demonstrating encapsulation. The document further explains abstraction by describing how a class represents all behaviors and properties of an entity. It also discusses other access modifiers like protected.
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.
The document describes the author's approach to building a machine learning pipeline for a Kaggle competition to predict product categories from tabular data. The pipeline includes: 1) Loading and processing the training, testing, and submission data, 2) Performing cross-validated model training and evaluation using algorithms like XGBoost, LightGBM and CatBoost, 3) Averaging the results to generate final predictions and create a submission file. The author aims to share details of algorithms, hardware performance, and results in subsequent blog posts.
How to Super Create Write Functions in Odoo 17Celine George
This slide will represent how can we super Create/Write Functions in Odoo 17.
The create method is invoked when a new record is being created. By utilizing the 'super' keyword within the create function, we can augment the creation process with additional features.
Action functions in Visualforce allow JavaScript functions to call Apex controller methods using an asynchronous AJAX request. An action function is defined using <apex:actionFunction> and specifies the Apex method to call. The JavaScript function can then invoke the action function to execute the controller method. Action support adds AJAX functionality to a component and calls a controller method based on events, while action functions can be directly called from JavaScript. The example demonstrates using an action function from a checkbox onclick and action support from an input field to call different controller methods and update an output text.
How to Configure Scheduled Actions in odoo 18Celine George
Scheduled actions in Odoo 18 automate tasks by running specific operations at set intervals. These background processes help streamline workflows, such as updating data, sending reminders, or performing routine tasks, ensuring smooth and efficient system operations.
How to Manage Upselling in Odoo 18 SalesCeline George
In this slide, we’ll discuss on how to manage upselling in Odoo 18 Sales module. Upselling in Odoo is a powerful sales technique that allows you to increase the average order value by suggesting additional or more premium products or services to your customers.
Ad
More Related Content
Similar to What is Monkey Patching & How It Can Be Applied in Odoo 17 (20)
How To Extend Odoo Form View using js_class_Celine George
In Odoo, js_class is used in form views to link JavaScript classes to XML views. This allows developers to extend and customize the behavior of Odoo form views by leveraging the power of JavaScript. First we need to register a class in javascript for a particular view. When we add the same class for a form view, it injects the customized view into the form.
How to perform product search based on a custom field from the PoS screen of ...Celine George
Odoo 17 offers a robust solution for retail businesses, restaurants, and other point-of-sale environments. It’s features like User-Friendly Interface, Multi-Device Compatibility, Inventory Management, Payment Options, Customer Management makes the user so smooth to indulge with.
We know that, Odoo PoS screen opens up with all the retail sellable products on the screen just after creating the session once we are ready for the sale.
How to Create Cohort View in Odoo 17 - Odoo 17 SlidesCeline George
Odoo has a variety of view kinds, including list, form, tree, kanban, graph, pivot, calendar, cohort, and more. Cohort views are a kind of reporting view in Odoo that let us monitor and evaluate user behavior across time. Rows and columns are displayed in the cohort view.
This document provides an overview and instructions for developing a real application called SportsStore using ASP.NET MVC. It discusses starting the domain model by adding a Product model class and creating an abstract IProductsRepository interface. It also covers setting up projects, installing packages, adding references between projects, and configuring the dependency injection container.
The document discusses the history of software testing and introduces unit testing in Django. It covers loading test data through fixtures and factories to set up test data without affecting the database. It also introduces mockers to mock external dependencies like API calls during tests.
Forms in Django allow encapsulating form data and validation logic. This document discusses advanced form techniques in Django, including:
- Dynamically generating forms based on models to handle multiple forms of different types.
- Altering form fields dynamically based on request data, such as restricting a dropdown to related objects owned by the user.
- Fully dynamic form building by defining form fields from database models, such as a survey application where questions are defined in models.
- Common techniques like subclassing form methods, type() function to dynamically generate form classes, and leveraging standard Python to extend Django's capabilities.
A talk i had about the solid principles at AngularJS-IL meetup #15. AngularJS is a great framework, it give you the tools you need to build robust single page web applications. Nut a good design and architecture are framework agnostic. By applying some well known object oriented principles to our angular application we can achieve more clean and modular code base.
The document discusses the decorator pattern and how it can be used to add functionality to objects at runtime as an alternative to inheritance. It provides examples of how the decorator pattern can be used to dynamically add different discount strategies to a product object without modifying the core product class. The composite pattern is also introduced as a way to group different discount strategies together to calculate a total discount amount.
This document provides guidance on a programming primer for encapsulation and abstraction using VB in ASP.NET. It discusses creating an Employee class with private member variables for ID and salary, along with public properties to access these privately. The example shows how to set property values and output them, demonstrating encapsulation. It also explains how abstraction relates to classes representing conceptual models without physical form. The document concludes with exercises on using different access modifiers like private, public, and protected.
Company segmentation - an approach with RCasper Crause
We classify companies based on how their stocks trade using their daily stock returns (percentage movement from one day to the next). This analysis will help your organization determine which companies are related to each other (competitors and have similar attributes).
How to Setup Default Value for a Field in Odoo 17Celine George
In Odoo, we can set a default value for a field during the creation of a record for a model. We have many methods in odoo for setting a default value to the field.
A quick run through explaining actions and filters that are used throughout WordPress (with useful metaphors) and some examples. It is intended to demonstrate that actions and filters are not as scary as people might think and that they can very easily make significant changes with only a few lines of code.
PyCon KR 2018 Effective Tips for Django ORM in PracticeSeomgi Han
In the following slides, I will share my solutions that have worked out with Django ORM. These are not only Django ORM issues but also some resolutions that have been effective with other techniques.
The document discusses the Chain of Responsibility pattern and Command pattern. It defines each pattern, provides examples of how each can be implemented in Java code, and notes related design patterns. The Chain of Responsibility pattern involves passing a request between a chain of objects until an object handles the request, decoupling the sender and receiver. The example shows approving purchase requests by role. The Command pattern encapsulates a request as an object, allowing request parameters and receivers to be changed, decoupling invocation from execution. The example uses actions to trigger window commands.
How to make a component and add it to systray in OdooCeline George
The system tray icon in Odoo serves as a quick-access feature, allowing users to easily interact with certain functionalities of the Odoo system without navigating through the main interface.
This document provides guidance on an exercise to learn encapsulation and abstraction using C#. It instructs the reader to create a class called Employee with private member variables for ID and salary, and public properties to access these values. An event handler is created to instantiate an Employee object, set the property values, and display them, demonstrating encapsulation. The document further explains abstraction by describing how a class represents all behaviors and properties of an entity. It also discusses other access modifiers like protected.
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.
The document describes the author's approach to building a machine learning pipeline for a Kaggle competition to predict product categories from tabular data. The pipeline includes: 1) Loading and processing the training, testing, and submission data, 2) Performing cross-validated model training and evaluation using algorithms like XGBoost, LightGBM and CatBoost, 3) Averaging the results to generate final predictions and create a submission file. The author aims to share details of algorithms, hardware performance, and results in subsequent blog posts.
How to Super Create Write Functions in Odoo 17Celine George
This slide will represent how can we super Create/Write Functions in Odoo 17.
The create method is invoked when a new record is being created. By utilizing the 'super' keyword within the create function, we can augment the creation process with additional features.
Action functions in Visualforce allow JavaScript functions to call Apex controller methods using an asynchronous AJAX request. An action function is defined using <apex:actionFunction> and specifies the Apex method to call. The JavaScript function can then invoke the action function to execute the controller method. Action support adds AJAX functionality to a component and calls a controller method based on events, while action functions can be directly called from JavaScript. The example demonstrates using an action function from a checkbox onclick and action support from an input field to call different controller methods and update an output text.
How to Configure Scheduled Actions in odoo 18Celine George
Scheduled actions in Odoo 18 automate tasks by running specific operations at set intervals. These background processes help streamline workflows, such as updating data, sending reminders, or performing routine tasks, ensuring smooth and efficient system operations.
How to Manage Upselling in Odoo 18 SalesCeline George
In this slide, we’ll discuss on how to manage upselling in Odoo 18 Sales module. Upselling in Odoo is a powerful sales technique that allows you to increase the average order value by suggesting additional or more premium products or services to your customers.
How to Add Customer Note in Odoo 18 POS - Odoo SlidesCeline George
In this slide, we’ll discuss on how to add customer note in Odoo 18 POS module. Customer Notes in Odoo 18 POS allow you to add specific instructions or information related to individual order lines or the entire order.
How to Create A Todo List In Todo of Odoo 18Celine George
In this slide, we’ll discuss on how to create a Todo List In Todo of Odoo 18. Odoo 18’s Todo module provides a simple yet powerful way to create and manage your to-do lists, ensuring that no task is overlooked.
Link your Lead Opportunities into Spreadsheet using odoo CRMCeline George
In Odoo 17 CRM, linking leads and opportunities to a spreadsheet can be done by exporting data or using Odoo’s built-in spreadsheet integration. To export, navigate to the CRM app, filter and select the relevant records, and then export the data in formats like CSV or XLSX, which can be opened in external spreadsheet tools such as Excel or Google Sheets.
How to Manage Purchase Alternatives in Odoo 18Celine George
Managing purchase alternatives is crucial for ensuring a smooth and cost-effective procurement process. Odoo 18 provides robust tools to handle alternative vendors and products, enabling businesses to maintain flexibility and mitigate supply chain disruptions.
How to Set warnings for invoicing specific customers in odooCeline George
Odoo 16 offers a powerful platform for managing sales documents and invoicing efficiently. One of its standout features is the ability to set warnings and block messages for specific customers during the invoicing process.
How to Manage Opening & Closing Controls in Odoo 17 POSCeline George
In Odoo 17 Point of Sale, the opening and closing controls are key for cash management. At the start of a shift, cashiers log in and enter the starting cash amount, marking the beginning of financial tracking. Throughout the shift, every transaction is recorded, creating an audit trail.
How to manage Multiple Warehouses for multiple floors in odoo point of saleCeline George
The need for multiple warehouses and effective inventory management is crucial for companies aiming to optimize their operations, enhance customer satisfaction, and maintain a competitive edge.
Odoo Inventory Rules and Routes v17 - Odoo SlidesCeline George
Odoo's inventory management system is highly flexible and powerful, allowing businesses to efficiently manage their stock operations through the use of Rules and Routes.
How to track Cost and Revenue using Analytic Accounts in odoo Accounting, App...Celine George
Analytic accounts are used to track and manage financial transactions related to specific projects, departments, or business units. They provide detailed insights into costs and revenues at a granular level, independent of the main accounting system. This helps to better understand profitability, performance, and resource allocation, making it easier to make informed financial decisions and strategic planning.
How to Customize Your Financial Reports & Tax Reports With Odoo 17 AccountingCeline George
The Accounting module in Odoo 17 is a complete tool designed to manage all financial aspects of a business. Odoo offers a comprehensive set of tools for generating financial and tax reports, which are crucial for managing a company's finances and ensuring compliance with tax regulations.
Multi-currency in odoo accounting and Update exchange rates automatically in ...Celine George
Most business transactions use the currencies of several countries for financial operations. For global transactions, multi-currency management is essential for enabling international trade.
How to Subscribe Newsletter From Odoo 18 WebsiteCeline George
Newsletter is a powerful tool that effectively manage the email marketing . It allows us to send professional looking HTML formatted emails. Under the Mailing Lists in Email Marketing we can find all the Newsletter.
How to Manage a Customer Account in Odoo 17 SalesCeline George
In the sales module business can create and manage customer accounts and this includes details such as customer name, contact details and addresses, all other relevant datas. Customer account let your customers log in to see their documents
How to Open a Wizard When Clicking on the Kanban Tile in Odoo 18Celine George
In the Odoo backend, Kanban views offer an intuitive, visual way of managing tasks, projects, and workflows. Kanban views are just like a card type of rectangular view which we can get the major details of the model in which it is designed.
Ledger Posting in odoo Continental AccountingCeline George
Continental accounting records costs at the time of purchase. This means expenses related to buying products or services are logged when they occur in the ledger. While it follows GAAP principles, users can choose which accounts to debit or credit.
How to Create & Manage a New User Menu in Odoo 18Celine George
In this slide, we’ll discuss on how to create and manage a new user menu in Odoo 18. The user menu in Odoo acts as a centralized hub for quick access to essential features, enabling efficient navigation through documentation, customization options, and user-specific actions.
How to Add Customer Rating Mixin in the Odoo 18Celine George
In this slide, we’ll discuss on how to add customer rating mixin in the Odoo 18. Every organization needs good customer service to succeed in today's competitive business world. One practical way to improve customer satisfaction is to include customer feedback and ratings in your business processes.
How To Open The Form View Of Many2many Clicking Tag In Odoo 18Celine George
This slide outlines how to open the form view of a many2many field by clicking a tag in Odoo 18. We can enhance the functionality of the many2many field by allowing users to open the form view of a tag with a simple click.
The ever evoilving world of science /7th class science curiosity /samyans aca...Sandeep Swamy
The Ever-Evolving World of
Science
Welcome to Grade 7 Science4not just a textbook with facts, but an invitation to
question, experiment, and explore the beautiful world we live in. From tiny cells
inside a leaf to the movement of celestial bodies, from household materials to
underground water flows, this journey will challenge your thinking and expand
your knowledge.
Notice something special about this book? The page numbers follow the playful
flight of a butterfly and a soaring paper plane! Just as these objects take flight,
learning soars when curiosity leads the way. Simple observations, like paper
planes, have inspired scientific explorations throughout history.
Social Problem-Unemployment .pptx notes for Physiotherapy StudentsDrNidhiAgarwal
Unemployment is a major social problem, by which not only rural population have suffered but also urban population are suffered while they are literate having good qualification.The evil consequences like poverty, frustration, revolution
result in crimes and social disorganization. Therefore, it is
necessary that all efforts be made to have maximum.
employment facilities. The Government of India has already
announced that the question of payment of unemployment
allowance cannot be considered in India
Geography Sem II Unit 1C Correlation of Geography with other school subjectsProfDrShaikhImran
The correlation of school subjects refers to the interconnectedness and mutual reinforcement between different academic disciplines. This concept highlights how knowledge and skills in one subject can support, enhance, or overlap with learning in another. Recognizing these correlations helps in creating a more holistic and meaningful educational experience.
The Pala kings were people-protectors. In fact, Gopal was elected to the throne only to end Matsya Nyaya. Bhagalpur Abhiledh states that Dharmapala imposed only fair taxes on the people. Rampala abolished the unjust taxes imposed by Bhima. The Pala rulers were lovers of learning. Vikramshila University was established by Dharmapala. He opened 50 other learning centers. A famous Buddhist scholar named Haribhadra was to be present in his court. Devpala appointed another Buddhist scholar named Veerdeva as the vice president of Nalanda Vihar. Among other scholars of this period, Sandhyakar Nandi, Chakrapani Dutta and Vajradatta are especially famous. Sandhyakar Nandi wrote the famous poem of this period 'Ramcharit'.
Ultimate VMware 2V0-11.25 Exam Dumps for Exam SuccessMark Soia
Boost your chances of passing the 2V0-11.25 exam with CertsExpert reliable exam dumps. Prepare effectively and ace the VMware certification on your first try
Quality dumps. Trusted results. — Visit CertsExpert Now: https://www.certsexpert.com/2V0-11.25-pdf-questions.html
Exploring Substances:
Acidic, Basic, and
Neutral
Welcome to the fascinating world of acids and bases! Join siblings Ashwin and
Keerthi as they explore the colorful world of substances at their school's
National Science Day fair. Their adventure begins with a mysterious white paper
that reveals hidden messages when sprayed with a special liquid.
In this presentation, we'll discover how different substances can be classified as
acidic, basic, or neutral. We'll explore natural indicators like litmus, red rose
extract, and turmeric that help us identify these substances through color
changes. We'll also learn about neutralization reactions and their applications in
our daily lives.
by sandeep swamy
This chapter provides an in-depth overview of the viscosity of macromolecules, an essential concept in biophysics and medical sciences, especially in understanding fluid behavior like blood flow in the human body.
Key concepts covered include:
✅ Definition and Types of Viscosity: Dynamic vs. Kinematic viscosity, cohesion, and adhesion.
⚙️ Methods of Measuring Viscosity:
Rotary Viscometer
Vibrational Viscometer
Falling Object Method
Capillary Viscometer
🌡️ Factors Affecting Viscosity: Temperature, composition, flow rate.
🩺 Clinical Relevance: Impact of blood viscosity in cardiovascular health.
🌊 Fluid Dynamics: Laminar vs. turbulent flow, Reynolds number.
🔬 Extension Techniques:
Chromatography (adsorption, partition, TLC, etc.)
Electrophoresis (protein/DNA separation)
Sedimentation and Centrifugation methods.
GDGLSPGCOER - Git and GitHub Workshop.pptxazeenhodekar
This presentation covers the fundamentals of Git and version control in a practical, beginner-friendly way. Learn key commands, the Git data model, commit workflows, and how to collaborate effectively using Git — all explained with visuals, examples, and relatable humor.
A measles outbreak originating in West Texas has been linked to confirmed cases in New Mexico, with additional cases reported in Oklahoma and Kansas. The current case count is 817 from Texas, New Mexico, Oklahoma, and Kansas. 97 individuals have required hospitalization, and 3 deaths, 2 children in Texas and one adult in New Mexico. These fatalities mark the first measles-related deaths in the United States since 2015 and the first pediatric measles death since 2003.
The YSPH Virtual Medical Operations Center Briefs (VMOC) were created as a service-learning project by faculty and graduate students at the Yale School of Public Health in response to the 2010 Haiti Earthquake. Each year, the VMOC Briefs are produced by students enrolled in Environmental Health Science Course 581 - Public Health Emergencies: Disaster Planning and Response. These briefs compile diverse information sources – including status reports, maps, news articles, and web content– into a single, easily digestible document that can be widely shared and used interactively. Key features of this report include:
- Comprehensive Overview: Provides situation updates, maps, relevant news, and web resources.
- Accessibility: Designed for easy reading, wide distribution, and interactive use.
- Collaboration: The “unlocked" format enables other responders to share, copy, and adapt seamlessly. The students learn by doing, quickly discovering how and where to find critical information and presenting it in an easily understood manner.
CURRENT CASE COUNT: 817 (As of 05/3/2025)
• Texas: 688 (+20)(62% of these cases are in Gaines County).
• New Mexico: 67 (+1 )(92.4% of the cases are from Eddy County)
• Oklahoma: 16 (+1)
• Kansas: 46 (32% of the cases are from Gray County)
HOSPITALIZATIONS: 97 (+2)
• Texas: 89 (+2) - This is 13.02% of all TX cases.
• New Mexico: 7 - This is 10.6% of all NM cases.
• Kansas: 1 - This is 2.7% of all KS cases.
DEATHS: 3
• Texas: 2 – This is 0.31% of all cases
• New Mexico: 1 – This is 1.54% of all cases
US NATIONAL CASE COUNT: 967 (Confirmed and suspected):
INTERNATIONAL SPREAD (As of 4/2/2025)
• Mexico – 865 (+58)
‒Chihuahua, Mexico: 844 (+58) cases, 3 hospitalizations, 1 fatality
• Canada: 1531 (+270) (This reflects Ontario's Outbreak, which began 11/24)
‒Ontario, Canada – 1243 (+223) cases, 84 hospitalizations.
• Europe: 6,814
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...larencebapu132
This is short and accurate description of World war-1 (1914-18)
It can give you the perfect factual conceptual clarity on the great war
Regards Simanchala Sarab
Student of BABed(ITEP, Secondary stage)in History at Guru Nanak Dev University Amritsar Punjab 🙏🙏
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...larencebapu132
Ad
What is Monkey Patching & How It Can Be Applied in Odoo 17
1. What is Monkey Patching &
How It Can Be Applied in Odoo
17
Enterprise
2. Introduction
Enterprise
This slide explores the concept of "monkey patching," a
technique used to augment existing functionality in Odoo 17.
Let's delve into what monkey patching entails and how it can be
implemented within the Odoo 17 environment.
3. Enterprise
What is Monkey Patching?
Monkey patching is a technique that allows for the modification
or extension of the behavior of existing code at runtime. This
approach facilitates changes to the code without modifying the
source code itself. It is particularly useful for introducing new
features, fixing bugs, or overriding existing code without directly
altering the source code.
4. Enterprise
A typical monkey patching implementation follows a
structured approach:
# Original class
class MyClass:
def original_method(self):
print("This is the original method")
# Monkey patching the class with a new method
def new_method(self):
print("This is the new method")
MyClass.original_method = new_method
5. Enterprise
By assigning new_method to MyClass.original_method, the
original method is replaced with the new method. Consequently,
whenever the original method is called, the new method is
executed, allowing changes without modifying the original
method itself.
6. Enterprise
Example: Splitting Deliveries in Sale Orders
Let's explore a scenario where we need to split deliveries for
each product listed in a sales order. Typically, a single delivery,
referred to as stock picking, is generated for the entire sales
order, including all products. To achieve this, we need to
introduce a field in the order line to specify the delivery date for
each product and modify the _assign_picking method within the
stock.move model to create a pick for each move.
7. Enterprise
Adding a Field in the Order Line
First, we need to add a delivery date field within the sales order line:
class SaleOrderline(models.Model):
"""Inheriting sale order line to add delivery date field"""
_inherit = 'sale.order.line'
delivery_date = fields.Date("Delivery Date")
8. Enterprise
Next, we incorporate the field into the views:
<odoo>
<record id="view_order_form" model="ir.ui.view">
<field name="name">sale.order.inherit.monkey.patching</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="model">sale.order</field>
<field name="arch" type="xml">
<xpath
expr="//field[@name='order_line']/tree/field[@name='price_unit']"
position="before">
<field name="delivery_date"/>
</xpath>
</field>
</record>
</odoo>
11. Enterprise
In this instance, we adjust the date_deadline value to match
the delivery date specified in the corresponding order line. If
the delivery date is not specified, we set it to the order date
plus the customer lead time of the product.
12. Enterprise
Inheriting the stock.move Model
Next, we extend the functionality of the stock.move model by
inheriting it:
class StockMoveInherits(models.Model):
"""Inheriting the stock move model"""
_inherit = 'stock.move'
14. Enterprise
def _assign_picking(self):
pickings = self.env['stock.picking']
grouped_moves = groupby(self, key=lambda m: m._key_assign_picking())
for group, moves in grouped_moves:
moves = self.env['stock.move'].concat(*moves)
new_picking = False
pickings = moves[0]._search_picking_for_assignation()
if pickings:
vals = {}
if any(pickings.partner_id.id != m.partner_id.id for m in moves):
vals['partner_id'] = False
if any(pickings.origin != m.origin for m in moves):
vals['origin'] = False
if vals:
pickings.write(vals)
16. Enterprise
In this implementation:
● We initialize pickings as an empty record of the
stock.picking model.
● We group the moves based on a key derived from the
_key_assign_picking method.
● We search for a picking using the
_search_picking_for_assignation method.
● If a picking is found, we update its fields; otherwise, we
create a new picking for each move.
17. Enterprise
Through these applied monkey patches, we have successfully
implemented the functionality to split deliveries within the
sales order. While monkey patching is a powerful tool, it's
advisable to explore alternative approaches when appropriate.
18. For More Info.
Check our company website for related blogs
and Odoo book.
Check our YouTube channel for
functional and technical videos in Odoo.
Enterprise
www.cybrosys.com