This document provides pricing and contact information for home staging services offered by Home Staging Visuals. Consultations are available over the phone for $195 with 3 photos or in person for $275. Virtual staging starts at $220 for 4 photos. Full home staging is $100 per hour with approximately 3 hours needed per room. Additional photos above the included amount are $45 each. Contact information including phone number, email, and website are listed for Home Staging Visuals.
Ryde Academy is a school that publishes a student magazine called the Sixth Form Mag to help students think about their future. The magazine is put together by Ryde Academy students.
Übersicht über die aktuellen Trends aus dem Jahr 2011, zu unseren fastNOTE SchreibService Dienstleistungen, zusammengefasst in einem Dokument zum herunterladen. Die technischen und personellen Voraussetzungen, die zur professionellen Datenerfassung und -pflege notwendig sind, sprengen oft die Kapazitäten eines Unternehmens. Nicht nur die Bewältigung von Massendaten ist ökonomisch im eigenen Haus meist unhaltbar. Selbst geringe Datenmengen (z.B. handgeschriebene Aufzeichnungen) können Ihre Mitarbeiter von ihrer eigentlichen Aufgabe stundenlang abhalten.
1) O documento apresenta os critérios de correção para um teste de língua portuguesa.
2) Inclui 15 questões com as respostas corretas identificadas por letras.
3) A comissão técnico-científica e a comissão técnico consultiva da Escola Básica e Secundária Vale de Ovil elaboraram os critérios.
Cielo apartamento Freguesia.Localizado no melhor ponto da Freguesia. O Cielo oferece qualidade de vida, além da praticidade de morar na região com toda Infra-estrutura que sua familia precisa. Apartamento 2 e 3 quartos com suíte e coberturas duplex. Lazer completo e segurança total para toda a família. Veja mais detalhes nas imagens abaixo ou ligue para nossos corretores. Corretora Dora Mello (21) 3647-1625 / 7883-4126 / 12*87143 Acesse www.novoslancamentosnorio.com. Skype doramellocorretora
Este documento trata sobre los sistemas de evacuación y rescate en instalaciones industriales de difícil acceso. En primer lugar, justifica la necesidad de estos sistemas debido a los requisitos legales en materia de seguridad y salud laboral. Luego describe varias instalaciones comunes que presentan dificultades de acceso, como chimeneas, tanques de almacenamiento, hornos y torres de destilación. Finalmente, analiza la normativa aplicable en cuanto a planes de emergencia y rescate de trabajadores atrapados.
Business Update December 2011 - Passing On A Family Businessnevillebeckhurst
The document discusses considerations for passing a family business to the next generation. It notes that only 30% of UK family businesses remain under family control after 10 years, so succession planning is important. Key points discussed include gradually involving children in the business, realistically assessing a child's skills and interest, balancing family shares and responsibilities, and considering tax implications like entrepreneurs' relief and inheritance tax rules. Planning succession takes years and the business must be assessed as a genuine inheritance worth handing down.
A árvore de Natal tem origem em tradições antigas de representar cenas bíblicas em pinheiros. Com o tempo, os pinheiros passaram a ser enfeitados com guloseimas, luzes e brinquedos para simbolizar alegria e fraternidade na época natalina. Atualmente, os enfeites da árvore representam valores como proteção, esperança e generosidade.
O documento repete os dados de contato da corretora Dora Mello Corretora, incluindo o telefone (21) 7883-4126, o ID 12*87146 e o site www.webrioimoveis.com.br várias vezes.
The new release of Oracle BI 11g R1 - OGH – 15 September 2010Daan Bakboord
15 september 2010 - OGh themabijeenkomst: Oracle BI 11g R1
Afgelopen 7 juli was het zover: de launch van de nieuwe versie van Oracle BI 11g R1. We hebben er meer dan drie jaar op moeten wachten. Wat is er in die tijd gebeurt? Waarom moest het zo lang duren? En natuurlijk: was het het wachten waard? De eerste geluiden zijn erg enthousiast, maar er worden ook kritische noten gekraakt. In deze themabijeenkomst gaat Daan Bakboord, Oracle BI Consultant bij Scamander Solutions, in op deze vragen en deelt hij zijn eerste ervaringen.
Kijken we bijvoorbeeld naar Oracle Fusion Middleware, dan zien we dat deze is gericht op het integreren van diverse Oracle Applicaties. De nieuwe Oracle BI release speelt hier ondertussen een belangrijke rol in. Je kunt Oracle BI inzetten als datahub in een netwerk van verschillende Oracle toepassingen en Daan gaat hier in zijn presentatie op in.
The EPUB Platform and the Readium Open Source Initiative
James English
NISO/BISG 8th Annual Forum on The Changing Standards Landscape: Managing an Increasingly Complex and Interconnected World of Content
June 27, 2014
IT обучение и сертификация. Информация об УЦ "Сетевые Технологии"TechExpert
Учебный Центр "Сетевые Технологии" с 1997 г. предоставляет комплексные услуги по обучению и сертификации ИТ-специалистов по направлениям: Microsoft, Cisco® Systems,Linux/FreeBSD, Hewlett-Packard ProCurve, Oracle, LotusXen, Asterisk VMWare, Symantec.
Кроме того, Учебный Центр проводит целый ряд тренингов для IT-менеджеров, менеджеров проектов и пользователей: ITIL,
Методология управления проектами, Microsoft Project, Microsoft Office (оригинальные авторские методики).
www.nt.ua
Timesheet Workshop: The Timesheet App People Love!Odoo
This document introduces an app called Awesome Timesheet that allows users to track their working times, manage employees, work offline anywhere, and report and analyze data. It provides a demonstration of the app's features including tracking product, sales, projects, timesheets, employee management, and reporting on a website.
This document discusses using the Google model-viewer widget to display and interact with 3D models in the GLB format within Odoo. It describes addons developed to integrate 3D product viewing into the backend, frontend, and e-commerce sections of Odoo. The document also provides background on glTF as an open standard for 3D content and the model-viewer library, which is based on three.js and allows easy 3D model embedding on websites. Future steps discussed include expanding AR capabilities on mobile browsers and converting models to the required glTF format.
The document announces an Odoo Experience online event, unveiling the new features of Odoo 14. It promotes sessions on topics like ROI analysis for ERP selection, website design tips, supply chain management, and HRMS. Speakers will provide insights into Odoo's ORM and certification. Attendees can participate in surveys, quizzes and choose their adventure for a digital CEO roleplay game. The event aims to deliver an amazing experience for amazing attendees.
Extending Odoo with a Comprehensive Budgeting and Forecasting CapabilityOdoo
Essatto is a budgeting and forecasting software that integrates with Odoo. It was implemented by Global Car Sales, a company that sells cars globally using Odoo. Essatto streamlined Global Car Sales' forecasting processes by capturing forecasts at a more detailed item level, providing historical sales data to salespeople, automatically consolidating submissions, and producing interactive daily/weekly reports. It also enabled powerful budgeting, data analysis, reporting tailored to different user needs, flexibility to changes, and importing data from multiple sources including Odoo.
Managing multi-channel selling involves selling through multiple online and offline sales channels. This allows sellers to reach more customers but also presents challenges in order management, fulfillment, and inventory management across channels. Odoo and Emipro provide integrated solutions to help sellers manage orders, inventory, products, and reporting across marketplaces, e-commerce platforms, and brick-and-mortar stores in a centralized system. Emipro's solutions sync inventory, orders, and products across channels; integrate with popular marketplaces, shipping carriers, and warehouses; and provide inventory and sales reporting.
The Product Configurator allows for simple setup and flexibility. It can help sales go faster by integrating with a company's website, point of sale systems, and manufacturing processes. The Configurator aims to streamline operations.
Accounting Automation: How Much Money We Saved and How?Odoo
This document discusses the benefits of automating finance and accounting processes. It finds that digitizing and automating invoice processing, purchase-to-pay, and order-to-cash can significantly reduce costs compared to traditional paper-based manual processes. Specific cost savings identified include reducing processing times for invoices from over 25 minutes to just 1-2 minutes. The break-even point for automating typically occurs within 12 months for companies processing over 100 invoices per month. Automation is recommended for companies of all sizes and industries to improve efficiency and cash flow management.
1. Camptocamp developed an open source WMS and SCM ecosystem for Odoo to meet the complex needs of a major medical logistics customer.
2. Key features include integrated procurement, warehouse management, order processing, delivery, and replenishment powered by Odoo applications and custom developments.
3. A case study of the customer's operations highlights the various storage types, equipment, and end-to-end supply chain flows managed through the system.
Transition from a cost to a flow-centric organizationOdoo
The document discusses transitioning from a traditional cost accounting approach to a throughput accounting approach based on the Theory of Constraints. It explains that traditional cost accounting focuses on profit margins by product, but this does not consider system constraints. The Theory of Constraints identifies the constraint in a production system and prioritizes production to maximize throughput. The document provides an example of a clothing company that increases profits by identifying sewing capacity as the constraint and allocating production accordingly. It advocates adopting a demand-driven operating model to further elevate system constraints and improve inventory, lead times, and alignment between strategy and operations.
This document summarizes how a distance university runs its operations using Odoo. It discusses the university's study programs and key metrics like employee and student counts. It then outlines how Odoo provides functionality for expenses, HR, accounting, ticketing, mailing and more. Apps are used for areas like admissions, student/teacher/evaluation portals, and connecting to the learning management system. Business intelligence tools give insights into enrollments. HR modules cover leaves, attendance and expenses while finance manages accounting, budgets and reporting. The university aims to improve recruitment, integrate its website and enhance CRM and marketing in the coming years.
Sodexis is an Odoo partner that specializes in implementing Odoo to help manufacturing and distribution companies improve efficiency. Cecilie Barreto, a business analyst at Sodexis, gave a presentation on implementing purchase order down payments in Odoo, demonstrating how to configure, register, and apply down payments to final invoices and reviewing the corresponding journal entries. The presentation also discussed other apps Sodexis offers to help customers, such as payment processing, EDI connectors, credit management, and inventory availability checking.
Odoo Implementation in Phases - Success Story of a Retail Chain 3Sach foodOdoo
The document provides information about Port Cities Group, an Odoo consulting firm that has been helping businesses grow since 1997. It lists Jakub Smolka as the Director of Consulting, with teams located in various countries. Port Cities has implemented Odoo solutions in over 25 projects across multiple countries. The rest of the document outlines the story of 3Sach Food, a client that went through a multi-phase Odoo implementation with 120 employees across 10 stores and 2 kitchen studios over 2 years.
This document describes a customer success story of a San Francisco-based company that provides personal emergency medical alert services. The company was facing challenges with its previous technology stack, including a lack of integrated contact center experience. It implemented a new technology solution from Brainvire using Odoo for CRM, accounting, ecommerce, and integration. This enabled an improved omni-channel customer experience, streamlined subscription payments and billing, quick transformation of business processes and technology, improved integration with third parties, and customization to fit the company's unique business needs and practices. The new solution enhanced processes, automated shipping with third parties, and provided cost effectiveness and real-time communication across the organization.
Preventing User Mistakes by Using Machine LearningOdoo
This document discusses an anomaly detection module for inventory management created by Bista Solutions to prevent user errors in Odoo. It describes common user mistakes like incorrect tagging or data entry that can cause inventory issues. The machine learning module is trained on inventory data patterns to identify anomalies and alert users. This helps prevent damages from inventory mistakes by users in remote locations or from barcode tagging errors. A case study shows it provided better visibility and avoidance of human errors for robust inventory management.
Becoming an Odoo Expert: How to Prepare for the Certification Odoo
Port Cities Group is a consulting firm that has helped businesses grow since 1997. It has implemented Odoo in several countries and has branches in Mexico, Japan, Hong Kong, Vietnam, Malaysia, Singapore, Indonesia, Australia, the UK, and Colombia. The document provides tips for preparing for the Odoo certification exam, including doing homework in the Odoo e-learning system, following business logic through cases, learning Odoo principles like functions and models, and understanding the exam format.
Instant Printing of any Odoo Report or Shipping LabelOdoo
Odoo Direct Printing allows users to print documents like shipping labels and delivery slips directly from Odoo without needing to download files or use additional software. It works with both local and remote Odoo installations via an app and Printnode client. Case studies showed companies saving 70-80% efficiency by automating printing tasks like labels from warehouse apps. The solution integrates subscription plans directly in Odoo and provides a Raspberry Pi installation for easy setup.
Pavel Sodomka discusses his company Simple Hardware's migration from various tools like Vtiger, Hubspot, and Shopify to Odoo. Some key reasons for migrating to Odoo included needing integrated inventory management, manufacturing workflows, and e-commerce capabilities. While the migration process revealed documentation and support issues, Odoo provided a remarkably integrated system at a fair price. Odoo's customizability and growing community were major benefits, but it still lacks some modern features like live chat. With improvements to documentation, support, and responsiveness, Odoo could better compete with alternatives like Hubspot and Shopify.
1. OpenERP v6.0
Technical Improvements
Olivier Dony
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
2. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
3. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
4. OpenERP is disruptive
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
5. OpenERP is disruptive
Disruptive product Disruptive business
• Modern • Free download
programming • Contributions and
language Community fuel the
• Modular approach product
• Fully web-based • Value created is
• Classical or cloud fairly split between
deployment Customer, Service
Provider, and
Publisher
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
6. 2010 = Cornerstone for OpenERP
During the last 5 years, OpenERP has matured
into a smart Enterprise Management
software suite, with a world-wide brand, and
a strong market demand.
OpenERP SA now puts focus on being the
OpenERP Publisher
OpenERP v6 focuses on ease-of-use for these
smaller companies!
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
7. Technical Goals for OpenERP v6.0
Make OpenERP easier for smaller companies
Global code review and simplification
New features
New development processes
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
8. Easier for smaller companies
OpenERP becomes a true suite of Business
applications
• Menus and modules structure reviewed and split
• Smaller, specific applications
» account = invoicing only
» account_accountant = full financial management
Simplified views (vs. extended)
Business-oriented screens and filters
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
9. Business Applications
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
10. Business-oriented screens
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
11. Code Review & Simplifications
Improved modularity
• e.g: procurement (follows), analytic, resource
Global Code Review
• Modules rewritten: crm, hr, caldav,
• Performance improvements: lists, reports
• Lint cleanup
• Simpler aggregation/reporting objects
Hundreds of tests
Lots of source code lines removed
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
12. New R&D Processes
Dedicated R&D Teams
SCRUM methodology
Bug qualification team
Testing tools and test suite
Continuous integration system: Buildbot
More on this in Part 2...
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
13. New features
New views: search, diagram, improved lists
Improved API – core objects
Focus on reusable and generic features
• custom filters
• mail.gateway, caldav, resources
Multi-company built-in
» Let's zoom in...
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
14. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
15. Search Views
Improves over built-in search features in v5
Always associated with other view: list, calendar, …
Deprecates select=1, select=2 select = True
New view type: <search>
Two main building blocks:
• <field name='...'>
• <filter domain='...' context='...'>
Structured with:
• <group>
• <separator>
• <newline>
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
16. Search Views
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
17. Advanced Search Views
<fields> with embedded <filters>
Advanced attributes for <field>:
• context=”{'country_visible':True}”
• domain=”[('country_id', '=', 'Belgium')]”
• filter_domain=”['|', ('location_to', '=', self),
('location_src', '=', self)]”
Default values for filters and fields, via action context:
• context=”{'search_default_filter1': True}”
• context=”{'search_default_field1': 'test'}”
• context=”{'search_default_field1': lang}”
Specific search view can be forced in caller action:
• <field name="search_view_id"
ref="view_project_project_filter"/>
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
18. Search views: toggle group-by
context attribute of elements can toggle aggregation
of associated list views
• <filter string="Manager"
name="manager"
icon="terp-personal"
context="{'group_by':'user_id'}"/>
Multiple group-by levels are supported
• <filter string="Manager,State"
name="manager_state"
context="{'group_by':['user_id','state']}"/>
Order of group-by entries matters!
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
19. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
20. Improved Lists
List views can now display buttons
• Regular <button> elements as in form views
• Action/Method/Workflow called on single record
Columns can be toggled via context
• context = {'section_mode': True}
• <field name=”country_id”
invisible=”context.get('invisible_country')”>
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
21. Improved Lists
List views now support aggregation aka group-by
• Simple or multiple level aggregation
• Controlled via context: e.g. search view or caller action
context = {'group_by':['field_1','field_2']}
• All contexts are combined
• Aggregated columns shown on group header
» Numeric fields summed by default
» Set group_operator in _columns to customize (avg, min, … )
New server-side API method: read_group()
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
22. Group-by = Real-time Reporting!
Combine group_by values to get quick and intuitive
real-time analysis
When individual records are too low-level or
irrelevant, hide them (e.g. stock moves) :
• context = {'group_by_no_leaf': 1}
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
23. Building Reporting Objects
...
...
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
24. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
25. Diagram Views
Workflow Editor existed in Web Client 5.0
Transformed into generic view, available in GTK too
New <diagram> view type
Constructed with
• <node object=”node.model”
shape=”...”
bgcolor=”...”>
• <arrow object=”transition.model”
source=”source_field”
destination=”dest_field” >
• <field> (included in quick view)
Objects must form a coherent graph
<node> model must have a many2one to its container
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
26. Diagram Views
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
27. Diagram Views
Allows graphical definition of complex structures
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
28. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
29. Multi-Company
Now built-in in all applications
multi_company module = demo data only
in-depth review added specific internal operations:
• e.g. for warehouse management:
» inventory push/pull flows, transit locations
» multi-company invoice control based on push/pull flows
» More on this in functional training (tomorrow PM)
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
30. Multi-company
Many models now have a direct or indirect link to a
company (many2one or related field)
• e.g: sale.order.line sale.order shop company
Relevant company is assigned when creating new
records
Special group is needed to view multi-company fields
• Useability/Multi Companies
Users can belong to several companies, but select the
one the current context they work in, via Preferences
Visibility of records depends on Company they belong
to, current Company of user, and Record Rules.
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
31. Multi-company
Record rules have been improved since v5.0
No more rule groups – directly linked to user groups
Now controlled per mode: create/read/update/delete
Strong security semantics between “global” and
“local” (group-specific) rules
• Global rules cannot be bypassed under any circumstance, and
always restrict the access
• Local rules are additive and grant more access
global1 AND global2 AND (local1 OR local2)
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
32. Multi-company: Security
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
33. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
34. Testing framework: YAML
New YAML data serialization supported in v6
Data-oriented syntax “YAML Ain't a Markup Language”
Whitespace delimiters, Python-like
Human-readable
• no quotes, brackets, braces, … by default
Works very well for data, quite suited for tests
receipt: Oz-Ware Purchase Invoice
date: 2007-08-06
customer: Dorothy Gale
items:
- part_no: A4786
descrip: Water Bucket (Filled)
price: 1.47
quantity: 4
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
35. Testing framework: YAML
Supports everything supported by XML and more
• Calling internal service such as workflows
• Arbitrary python code
When added to the test section of the module
descriptor, tests are rolled back by default
New logging level test for showing test results
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
36. OpenERP YAML Syntax
OpenERP supports specific custom types:
• !record {model: res_model, id: xml_id, context: {…} }
• !python {model: res_model}
• !workflow {model:res_model, action:signal, ref: xml_id}
And equivalents for all XML supported elements
• !act_window
• !report
• !function
• !menuitem
• !assert
• etc.
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
37. Simple YAML Example
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
38. Advanced YAML Example
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
39. YAML: Scenario Export
base_module_record can now output YAML as well
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
40. YAML: Continuous Integration
http://test.openobject.com (buildbot) builds each of
our hundreds of YAML tests after each commit
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
41. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
42. Usability Guidelines
Several Guidelines sections have been added to the
online documentation (doc.openerp.com)
• Coding Guidelines
• YAML Guidelines
• Usability Book (including guidelines)
Usability guidelines are very important for 6.0!
Needed to maintain coherent look and feel
Help users directly locate what they need, when they
need it, to be efficient “Don't make me think”
Hide the complexity!
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
43. Usability Guidelines
Integrate within Business Applications
• Note: Groups and Access Rights are per Business Application
(not per module)
Keep menu structure “lean”, and in logical sequence
Design Search Views
Integrate/use the new configuration wizards
• See new res.config and res.config.installer core classes
Add Dashboard views and real-time Reports
(group_by)
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
44. Usability: menu structure
Most important items / First ones at top
Reporting is at bottom
Configuration is hidden (admin only)
Use short, business-oriented names
Example:
• Main application
» (Address book)
» … other items ...
» (Billing)
» (Products)
» Reporting
» Configuration
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
45. Usability: Search Views
Filters are on top-left, grouped by context, most important
ones first
Then search fields, same order as list columns
Optional collapsed group for “Extended filters”
• Organized by logical context
• Add nested filter to toggle column visibility when useful
Optional collapsed group for “Group-By”
• Buttons organized by logical context
• Usually: Persons, Document States, Places, Dates
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
46. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
47. New R&D Processes
Agile methodology for Product development: SCRUM
Formal Bug management and Bug handling process
• R&D teams distinct from Support/Maintenance teams
Strong focus on
• Quality
• Peer Reviews
• Continuous testing
• Continuous improvement
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
48. Product Development Process
Agile SCRUM sprints
Sprint contents: Product
backlog + Launchpad
R&D Teams:
• Web, GTK, Framework
• Addons1, Addons2, Addons3
All code reviewed by team leaders before end-of-
sprint and merge into trunk
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
49. Bug Management Process
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
50. Bug Management Process
Unqualified Assigned
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
51. Continuous Integration
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
52. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
53. Web Add-ons
Web client was overhauled for v6.0:
design and technology
Web client may now have add-ons
Web Add-ons are embedded in regular
modules
Web Add-ons may alter the default web
client in the following areas:
• Controllers
• Templates
• Widgets
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
54. Web Add-ons: structure
Embedded within web directory inside module
Easy deployment
Inspired by server-side modules, but simplified
__openerp__.py
• name and dependencies, you may add
your own metadata
__init__.py
• Python package, ensure that everything
that needs to be loaded within web
client is imported
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
55. Web-Addons: Controllers
Inherit from either:
• openobject.controllers.BaseController
• openerp.controllers.SecuredController
(for logged-in controllers)
CherryPy exposition of methods, @expose shortcut
_cp_path to define the controller’s root
Can Python-inherit from existing controller object to
extend
Set same _cp_path to override existing controller
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
56. Web Add-on: Controller Example
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
57. Web Add-on: Templates Extension
Web client uses Mako-based templates
Add-ons can register editor objects to do text
manipulation of the “raw” mako code
Example:
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
58. Web Add-on: Example
See the pad module for an example
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
59. HTML in views
Apart from web add-ons, <html> may now be
embedded in XML views
Supported by web client
only
See html_view module
for an example
Example:
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
60. Agenda
Part 1
• Short overview
• Search views
• Improved Tree views, aggregation, dynamic reports
• Diagram views
• Multi-company
Part 2
• Testing framework and continuous integration
• Usability guidelines
• New R&D Process
• Web add-ons
• Miscellaneous improvements and tips
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
61. Other Improvements
Simpler __openerp__ structure: data, demo, test
API:
• _defaults may be literal
• _constraints, _sql_constraints may be callables
Security:
• safe_eval replaced built-in eval
• Private _methods() not callable via RPC
Translations: improved and synchronized with LP
Reporting engine more modular (e.g report_webkit)
Performance improvements in RML reports
• <blockTable rowHeights="2cm" colWidths="11.0,7.0">
• Smarter translations, cached
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
62. Other Improvements
Actions have new properties:
• help="Business description for this action"
• multi=True
Simpler XML declaration for wizards actions
res.roles => res.groups
No more roles by default in workflows
base_report_designer includes OOo plugin
For more info, see:
• Updated Technical Memento (Partner Preview available)
• Technical Presentation Webinar
• Online Documentation
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
63. Development Tips
Improved views in Admin menus, with XML IDs
'View logs' shows XML ID now
Debugging tooltips in GTK and Web
new logging levels: test, debug_rpc,
debug_rpc_answer, debug_sql
command-line instance creation: -d dbname -i base
Test reports
./openerp-server.py -i sale -d mytestdb
--test-report-directory=/tmp
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
64. This document is published under the Creative Commons Attribution
License 3.0 Unported by OpenERP SA. Feel free to copy, share, or modify it.
For reference please see http://creativecommons.org/licenses/by/3.0/
Nom du fichier – à compléter
OpenERP v6.0 Upgrade Training – Technical Improvements 2010.12.01 – Olivier Dony
Editor's Notes
Web client was based on a non-standard (and fairly complex) packaging system, especially on the windows side (custom and time-consuming bdist_wininst, downloading a lot of stuff) Goal here is to better integrate with rest of the ecosystem, and with the new installers (all-in-one & al)
And that’s basically it, you can either implement the code in __init__ (probably a bad idea) or import inner modules containing your code.
* Logged-in only (inherits from SecuredController) * Accessible via the /etherpad root * exposes the link method, via /etherpad/link, via POST only and returns JSON data * standard CherryPy method (almost), kwargs are GET/POST params
Very simple API * Inherit from openobject.templating.TemplateEditor * List templates to interact with (probably only one, but you never know) * edit(template: mako.template.Template, template_text: str) * template_text is the original template data (straight from mako file) * call superclass, get output (unless want to completely replace it), cooperative overriding * modify that output as you see fit, mako template as a string
A Web Module is a server module containing web components, can contain only the web components (to make distribution and updating of web addons easier), enhancement of server module function for the web client or cooperation * Manages dependencies using proven OpenERP modules system * Simply add ‘web=True’ key to __openerp__.py * Web components go into the web/ subdirectory, __openerp__.py will be generated from module’s