0% found this document useful (0 votes)
253 views7 pages

Openbravo Obtt2 Platform Course Guide

This document provides an overview and outline for a technical training course on customizing and extending the Openbravo Business Suite platform. The 14 session course covers development environment setup, the application dictionary, database elements, Java processes, callouts, events, web services, custom screens, and packaging customizations. It is targeted at experienced Java developers and includes both online and classroom formats.

Uploaded by

MD ABUL KHAYER
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
253 views7 pages

Openbravo Obtt2 Platform Course Guide

This document provides an overview and outline for a technical training course on customizing and extending the Openbravo Business Suite platform. The 14 session course covers development environment setup, the application dictionary, database elements, Java processes, callouts, events, web services, custom screens, and packaging customizations. It is targeted at experienced Java developers and includes both online and classroom formats.

Uploaded by

MD ABUL KHAYER
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Openbravo Business Suite

Technical​ Training 2 Platform


Development
Course Guide
v4.0

© 2008-2016 Openbravo S.L.U. All rights reserved. The information in this document is confidential and may not be
disseminated or disclosed to third parties (either in digital form or on paper) without the prior written consent of Openbravo S.L.U.

Introduction
Audience
Content
Session 1 ​ Introduction and Concepts
Session 2 ​ Development Environment
Session 3 ​ Modularity & Initial Client Setup
Session 4 ​ Advanced Application Dictionary
Session 5 ​ Database Core Elements
Session 6 ​ Java Processes and the Data Access Layer
Session 7 ​ Callouts
Session 8 ​ Event Handlers
Session 9 ​ Background Processes
Session 10 ​ Webservices
Session 11 ​ ToolBar and Navigation Bar Customizations
Session 12 ​ Manual Window/View
Session 13 ​ Packaging
Formats
Online Elearning Format
Requirements
Knowledge prerequisites
Computer Requirements
Terms & Prices
Times, Prices & Registration
Language
Notes
Introduction
Technical Training level 2 aims to provide an in depth knowledge of how ​Openbravo Business Suite can be
customized, extended and packaged into modules​. Client and server side development is discussed
through a real life scenario and numerous hands on exercises.

Note​: This course does not cover topics such as installation, basic customizations through the use o​ f
​ echnical
application dictionary and report development! To learn those, please consider participating in our T
Training 1​.
Audience
This course is targeted at ​experienced Java developers​ who will be customizing or extending Openbravo
Business Suite with new functionality. See the ​Requirements​ section below for a more detailed list of required
knowledge.

Content

Session 1 ​ Introduction and Concepts


This first session will welcome the student to the course, present the schedule and give an overview of the
topics and assignments.
To resemble a real life scenario a hotel management module will be developed with the following
requirements:
● a new ​Guest entity​ that ties to a Business Partner to whom an invoice can be issued
● a new ​Room entity
● a new ​Stay entity​ ​ overnight stay of a particular guest in a room
● a new ​Guest/Stay window​ where the corresponding entities can be managed and edited
● a new ​Room window​ where rooms can be managed and edited
● customized Business Partner​ screen
● background and on demand recalculation of guest rates​ based on the history of stays
● webservice​ that exposes a list of available rooms to the world according to smoking/non​smoking
criteria
● automatic check​out​ from the original room upon switching rooms
● custom screen​ showing a monthly overview of room utilization
● package all developments​ for this solution into a single OBX file that can be shared/distributed

Session 2 ​ Development Environment


Before any coding takes place, a development environment will be set up and configured.
● ​checkout of the latest stable code
● installation and configuration of Eclipse

​ penbravo
All exercises and customizations within this course must be done in this local environment! An O
On Demand instance ​owned by each student will be used to simulate a t​ esting/pre production
environment​ where all developments will have to be deployed to and verified by the instructor.
Session 3 ​ Modularity & Initial Client Setup
Development of any artifact MUST be part of a module. A ​new Hotel Management template + module​ will
be created which all subsequent course developments will belong to.
We will also learn how to install other existing external modules.
An initial client+organization setup will be performed for a fictitious customer Hotel Green Terrace to simulate
the application setup and a testing environment.

Session 4 ​ Advanced Application Dictionary


The student should be familiar with the basic concepts of Openbravo's Model Driven Development (MDD)
approach by now. This metadata is also called the Application Dictionary in Openbravo Business Suite and its
advanced powers will be discussed with topics such as:
● creating new tables, windows, tabs and fields
● creating new references
● making fields conditionally read​only
● making fields display under certain conditions
● changing labels and descriptions of fields
● derived default values
● document sequences
● making and exporting changes to a core window

Session 5 ​ Database Core Elements


Stored Procedures: Most of Openbravo Business Suite business logic is located within stored procedures
inside the database. Customization of certain main stored procedures through extension points is often
required and will be explained here.

Triggers: Another portion of Openbravo Business Suite business logic is implemented using database
triggers. The student will learn how triggers are structured and how to override core triggers.

Development of new business logic should be done through Java processes and will be discussed in later
chapters.

Session 6 ​ Java Processes and the Data Access Layer


Data Access Layer
Instead of stored procedures and SQL statements, Openbravo Business Suite offers Object Relational
Mapping through plain Java objects that allow the developer to perform all database operations. In Openbravo
Business Suite it is called the Data Access Layer (DAL, based on Hibernate) which will be discussed here.

Action Buttons
Extending standard windows defined inside the application dictionary can often be done by placing action
buttons on them with a Java process behind it. An action button will be introduced to the guest window that
recalculates a specific guest's rate based on his or her stay within the last X months.

Session 7 ​ Callouts
Doing validations, additional database lookups or plain calculations within automatic windows is possible
using callouts associated with individual columns. A new callout will be developed that upon entering a
check​out date for a guest's stay, automatically calculates the final sum based on the nights stayed and the
room rate given.
Session 8 ​ Event Handlers
Events are Java processes that replace the database trigger functionality. A new event will be developed
within this section that operates on our list of stays, doing an automatic checkout of a guest that switches to
another room.

Session 9 ​ Background Processes


Any Java process in Openbravo can easily be developed and scheduled as a background job. The hotel
management scenario requires the guest rate to be recalculated automatically using a background process
developed here.
● Process vs DAL Based Process
● Develop a short background process
● Scheduling
● Monitoring

Session 10 ​ Webservices
Webservices are a great way of making applications flexible and open to integration with other systems.
Openbravo supports SOAP as well as REST (XML & JSON) webservices which will be discussed in this
chapter. A new REST webservice will be developed that offers a list of available (non occupied) rooms
according to the smoking/non​smoking criteria passed.

Session 11 ​ ToolBar and Navigation Bar Customizations


Custom buttons or widgets can be added to the Toolbar or the Navigation bar. Both will be discussed and
developed within this chapter.

Session 12 ​ Manual Window/View


When a certain functionality cannot be supported by the elements discussed until this point or when a
different UI is required, a custom screen can be developed from scratch to fill the gap. This is the last resort
which should only be taken when no other framework artifact can be used to implement the solution. Custom
windows offer limitless options but make you the full owner and maintainer of it. Consequently, these do not
benefit from Openbravo bugfixes and upgrades.

The use of the SmartClient RIA library will be explained here to develop the front​end, coupled by a back​end
Java process.

Session 13 ​ Packaging
By this point, the student will have lots of additional developments done compared to the core Openbravo
Business Suite. Packaging them together in order to install them at a customer's site or share them with the
community is crucial. One will learn how to define datasets and export all metadata to a specific module's
folder and package it together into a single .OBX file.
Formats

Online Elearning Format


The online version of the course delivers the same content as the classroom one but in a self study manner
and over a longer period of time, ​4​weeks​. The online format of this training is an alternative designed for
participants ​with financial and/or resource constraints​. To make up for the classroom interactivity, the
online e-learning platform comes with the following collaboration elements:
● News blog ​where live sessions and other news will be published
● Documentation​ for each topic and assignments that can be printed out
● Links to ​Howto articles and additional readings
● Q&A forums​ monitored and answered by Openbravo training specialists
● Exercises and assignments
● Embedded ​IRC live chat sessions/support​ tutored by a Openbravo training specialists
● An ​Openbravo On Demand virtual instance​ of Openbravo Business Suite application is provided
where exercises are deployed, executed and troubleshot by the instructor

This course requires roughly ​45 hours (depending on the student’s background and proficiency) of
​ ​week availability​:
student self study​ which he or she may invest as they see fit across the 4

Mon Tue Wed Thu Fri Sat Sun

Week 1

Week 2

Week 3

Week 4
IRC Chat Live IRC Chat Rooms​ where an Openbravo Instructor is present to resolve any
Assistance questions, issues or doubts that may arise during the course.
*This is an experimental feature for which we cannot guarantee any service levels
yet

Forum Forum Support by an Openbravo Training Specialist​ is provided during


Support working hours​, i.e. Monday to Friday. We will respond within one working day
from the moment a forum post or inquiry is submitted. Please note that we do our
best to provide responses within few hours (as well as on weekends), though not
obliged to do so.

Self Study The course is based on ​self-study​ model with an estimated ​45 hour student
dedication required​. During the entire course length the student can choose his
or her own pace to follow and go through the complete course. Dependent on the
student’s effort the course can be completed in any time between one and four
weeks.

Elearning The elearning platform with all its elements such as ​study materials, virtual
Platform environments, forums and assignments available for the full length of the
Availability course
Classroom Format
Classroom format of the training is aimed at those in need to learn how to customize and extend Openbravo
Business Suite in the shortest and most efficient manner possible, when given as such and delivered by an
Openbravo Training Specialist, the Advanced Development. The 5 day course with the following schedule:

Day 1 Day 2 Day 3 Day 4 Day 5

Concepts and Advanced Java Processes Background Custom Window/


Scenario Application and Data Access Processes View
Dictionary Layer
Development Webservices Packaging the
Environment Customization of Callouts Solution
Core Database Toolbar and
Modularity and Artefacts Events Navigation bar Resolving left
Initial Client Setup customizations issues and Q&A

Within the classroom training the student will receive a USB key with:
● electronic materials
● tools and installers​ required for the course
● implementation source examples
Requirements

Knowledge prerequisites
● knowledge of ​basic development concepts in Openbravo Business Suite​ (mastered by taking the
Technical Training 1​)
● excellent senior knowledge of ​Java
● good knowledge of ​Javascript
● master the concepts of ​web applications​ (preferably J2EE)
● basic knowledge of database concepts and SQL (SELECT, stored procedures, triggers)
● Knowledge of source control (Mercurial) is a plus

Computer Requirements
● dual core ​processor (2GHz or faster)
● 4Gb​ RAM or more
● A compatible web browser. Due to the fact that Openbravo Business Suite is a r​ ich internet
application (RIA)​, the newest browsers with optimized Javascript engines are recommended for the
best user experience:
Web browser Minimum required Recommended version

Chrome 42 43 or higher

Firefox 31 38 or higher

Internet Explorer 9 11 or higher

Safari 7 8 or higher

Terms & Prices

Times, Prices & Registration


Please visit ​http://www.openbravo.com/resources/trainings/​ for a list of scheduled dates and locations and to
purchase seats for attending one of the upcoming courses.

Language
All ​training materials​ are available in ​English​ only. ​Classroom teaches and online course support
(forums & chats) however can also be delivered in ​Spanish​.

Notes
● The course is led and followed by an O ​ penbravo Training Specialist​.
● Training is based on ​Openbravo Business Suite 3.0PR15Q3.3​.
● Prices are quoted per student and do not include taxes.
● This course is open to all participants, regardless of affiliation with Openbravo.
● This course ​does not cover the functiona​l or ​basic technical configuration topics​ required to
complete an implementation which are delivered during the F ​ unctional Training 1​ and ​Technical
Training 1​.
For detailed Terms and Conditions of Openbravo courseware delivery, please visit the following link:
https://university.openbravo.com/university-terms.html

You might also like