This chapter describes an overview of Oracle’s Siebel Open UI . It includes the following topics:
This topic describes Siebel Open UI . It includes the following information:
Siebel Open UI is an open architecture that you can use to customize the user interface that your enterprise uses to display Siebel CRM business process information. These processes must meet the requirements of a wide range of employee, partner, and customer applications. You can use Siebel Tools to do these customizations, and you can also use Web technologies, such as HTML, CSS, or JavaScript. Siebel Open UI uses these technologies to render the Siebel Open UI client in the Web browser. It uses no proprietary technologies, such as browser plug-ins or ActiveX.
Siebel Open UI can run any Siebel business application on any Web browser that is compliant with the World Wide Web Consortium (W3C) standards. It can display data in Web browsers that support Web standards on various operating systems, such as Windows, Mac OS, or Linux. For example:
Siebel Open UI uses current Web design principles, such as semantic HTML and unobtrusive JavaScript. These principles make sure configuration for the following items remains separate from one another:
You can modify each of these items separately and independently of each other. Siebel Open UI dynamically adjusts itself to the screen space available on the device and platform from which it is being accessed. Siebel Open UI will hide some of the objects that it displays on a Siebel screen when it displays Siebel CRM data in a list or form on the smaller footprint of a mobile device. Hiding these objects, such as menus or tabs, can help to optimize mobile screen usage. Siebel Open UI can use swipe and zoom features that are native on a tablet for the same user interface that it uses for keyboard and mouse events that are native on a desktop.
Siebel Open UI can reference a third-party resource. For example, you can configure Siebel Open UI to get data from a supplier website, incorporate it with Siebel CRM data, and then display this data in the client. For example, it can get literature information from a supplier, and then include this information in a detailed display that includes information about the product, such as images, diagrams, or parts lists. It can mix this information with Siebel CRM data, such as customers who own this product, or opportunities who might be interested in purchasing this product.
The architecture that Siebel Open UI uses includes well-defined customization points and a JavaScript API that allow for a wide range of customization for styling, layout, and user interface design. For more information, see Architecture of Siebel Open UI. For more information about the JavaScript API that Siebel Open UI uses, see Application Programming Interface.
For information about deploying Siebel Open UI , including supported features, see Article ID 1499842.1 on My Oracle Support. For more information about using Siebel Tools, see Using Siebel Tools .
The following list describes a few of the example customizations that you can make with Siebel Open UI . You can use JavaScript to implement most of these examples. It is often not necessary to use Siebel Tools to do these customizations:
For more information about these examples, see Customizing Siebel Open UI.
You can use Siebel Tools or a development tool of your choice to customize Siebel Open UI so that it fits in your business environment and meets specific user requirements. You might not require Web development in many situations because the Siebel Tools configuration works for the Siebel Open UI client. You can use a predefined, uncustomized deployment, or you can use Siebel Tools to customize Object Definition Htmls. You can use only Web development or you can use Siebel Tools and Web development depending on your implementation requirements.
You can use Siebel Open UI with the rendering environment of your choice. You can use your preferred Integrated Development Environment (IDE) to write native JavaScript code on top of the API that Siebel CRM uses, or with the JavaScript API that Siebel Open UI uses. For more information, see Customizing Siebel Open UI. For more information about the JavaScript API that Siebel Open UI uses, see Application Programming Interface.
You can use HTML, CSS, or JavaScript to add features. For example, you can do the following:
The JavaScript API that Siebel Open UI uses is recommended over browser scripting. You can use your own Integrated Development Environment to write JavaScript and you can customize the JavaScript API that Siebel Open UI provides.
This JavaScript API allows you to do the following:
For more information about this JavaScript API, see Application Programming Interface.
Siebel Open UI can do the following to support different client environments:
Siebel Open UI works the same way for the following client types:
Siebel Open UI adjusts to the unique attributes that each client uses so that the user can do the same task on a variety of client types. It can optimize the intrinsic capabilities of each client type or device so that they provide a desirable user experience for the novice user and for the expert user. An administrator can configure Siebel Open UI to meet some of these individual skill levels. Siebel Open UI can do the following:
Siebel Open UI includes elements from social media and smartphones that improve user productivity, such as notification applets. It combines these capabilities with other Siebel CRM innovations to provide the following capabilities:
Siebel Open UI on a mobile interface uses the same architecture that Siebel Open UI on a desktop application uses. For more information, see Siebel Mobile Guide: Connected .
Siebel Open UI architecture follows Responsive Web Design patterns, which allow the same content to be displayed differently based on the device from which it is being accessed.
Siebel CRM does the following to render a Siebel Open UI client:
This configuration is more closely aligned with current guidelines for Web design than the configuration that high interactivity uses. Siebel Open UI allows you to customize how Siebel CRM renders individual objects in the client without having to use Siebel Tools, and it allows you use an alternative configuration, such as your custom configuration or a third-party configuration, to bind the Siebel business layer to user interface objects. Siebel Open UI allows you to customize an existing ODH or create a new ODH.
The following figure illustrates how the Siebel Server uses OD tags that reside in ODH to rend er div containers on the Siebel Server. For example, it renders a tag with type od-type="view" as a view container. It does the same rendering on this server for Siebel Open UI that it does for high interactivity.
The following figure illustrates how Siebel CRM uses a presentation model , which is a JavaScript file that resides in the client that specifies how to handle the metadata and data that Siebel Open UI gets from the Siebel Server. Siebel CRM then displays this information in a list applet or form applet in the client. The presentation model provides a logical abstraction of the metadata, transaction data, and behavior for part of the user interface. Siebel Open UI includes a presentation model for each significant part of the user interface, such as the application menu, toolbars, screen tabs, visibility drop-down lists, applet menus, different types of applets, and so on. The presentation model does not render the HTML in the user interface.
The following figure illustrates how Siebel CRM uses a physical renderer, which is a JavaScript file that Siebel Open UI uses to render the user interface. A physical renderer contains instructions that describe how to render the physical presentation and interaction for a user interface element, such as a grid, carousel, form, tree, tab, menu, button, and so on. Each physical renderer references a presentation model, and it uses the metadata, data, and behavior that this presentation model defines to render an object in the client. For more information about presentation models and physical renders, see About the Siebel Open UI Development Architecture.
Siebel Open UI uses the presentation model and the physical renderer to separate the logical user interface from the rendering. This configuration allows you to modify the user interface without having to modify the logical structure and behavior of the client. For example, you can modify the physical renderer so that it uses a third-party, grid-to-carousel control to display a list applet as a carousel without modifying a presentation model. For more information about this example, see Customizing List Applets to Render as Carousels.
You can use the physical renderer of a control to implement a variety of configurations so that Siebel Open UI can render this control at nearly any physical location in the browser and with your custom logic. You can use the physical renderer to display different parts of the same applet in different physical panes in a Siebel screen. For example, you can configure Siebel Open UI to display a temporary recycle bin that uses data from the presentation model to render data in a pane that is physically separate from the data that the list applet displays. For more information about this example, see Example Customizations That You Can Make with Siebel Open UI .
You can use the presentation model to modify the logical behavior of the user interface without modifying the physical renderer. For example, you can modify a presentation model to add a list column in a list applet so that it iterates through list columns and renders them without modifying the physical renderer. This column can reside on the client even if the Siebel Server contains no representation of it. You can customize at the control level writing plug-in wrappers that govern how a control should appear and behave when a certain set of conditions are satisfied. A check box appearing as a flipswitch on mobile devices is an example of this type of implementation.
This topic includes information about how to use this book. It includes the following information:
This book uses the following terms and concepts that you must understand before you customize Siebel Open UI :
For more information about these terms and other background information, see the following items:
Computer font indicates a value that you enter or text that Siebel CRM displays. For example:
This is computer font
Italic text indicates a variable value. For example, the n and the method_name in the following syntax description are variables:
Named Method n: method_name
The following is an example of this code:
Named Method 2: WriteRecord
You can write some code as a literal or a variable. For example, the Home method sets a record in the current set of records as the active row. It uses the following syntax:
You can use busComp as a literal or a variable. If you declare busComp as a variable in some other section of code, and if it contains a value of Account when you use the Home method, then Home sets a record in the Account business component as the active record. You can also use the following code, which also sets a record in the Account business component as the active record:
The code examples in this book use standard JavaScript and HTML format for uppercase and lowercase characters. It is recommended that you use the following case sensitivity rules that this book uses:
The following example is valid:
function RecycleBinPModel()The following example is not valid. Bold font indicates the code that is not valid:
function Recyclebinpmodel()For brevity, this book describes how an object, such as a user property, does something. For example, this book might state the following:
"The Copy Contact user property copies contacts."
In strict technical terms, the Copy Contact user property only includes information that some other Siebel CRM object uses to copy contacts.
For brevity, to describe how Siebel CRM uses the value that a property contains, in some instances this book describes only the property name. For example, assume Siebel CRM displays the value that the Display Name property contains. This property is a property of a tree node object. This book only states the following:
"Siebel CRM displays the Display Name property of the tree node."
In reality, Siebel CRM displays the value that the Display Name property contains.
A Siebel defines the metadata that Siebel Open UI uses to run a Siebel application. The Account List Applet that Siebel Tools displays in the Object List Editor is an example of an object definition. It includes metadata that Siebel Open UI uses to render the Account List Applet, such as the height and width of all controls that the applet contains, and all the text labels that it must display on these controls. The is a set of database tables that stores these object definitions. Examples of types of objects include applets, views, business components, and tables. You use Siebel Tools to create or modify an object definition.
The hosts a Siebel application, providing the central processing for HTTP transactions, database data, and which is data that the object definitions contain. It is different from , which is data that is specific to your business, such as account names and account addresses.
For more information, see Configuring Siebel Business Applications .
An object definition includes properties and a property includes a value. For example, the Business Object property of the Account Address view contains a value of Account. To describe this relationship, this book might state the following:
The Account Address view references the Account business object.
Sometimes the relationship between objects occurs through more than one object. For brevity, this book does not always describe the entire extent of relationships that exists between objects through the entire Siebel Object Hierarchy. For example, because the Account business object references the Account business component, and the Account Address view references the Account business object, this book might state the following:
The Account Address view references the Account business component.
Oracle provides the functionality that this guide describes as part of Siebel Innovation Pack. To use this functionality, you must install the innovation pack and do the postinstallation configuration tasks. For more information about the functionality that Siebel Innovation Pack includes, see the applicable Siebel Maintenance Release Guide on My Oracle Support.
Depending on the software configuration that you purchase, your Siebel business application might not include all the features that this book describes.
Siebel CRM supports the following customizations in Siebel Open UI . You must carefully consider the implications of doing this customization and development:
It is strongly recommended that you carefully consider the support policies that this topic describes before you customize Siebel Open UI . For more information about the support that Oracle provides, see Scope of Service for Siebel Configuration and Scripting - Siebel Open UI (Article ID 1513378.1) on My Oracle Support.
Oracle only supports usage and features of the Siebel Open UI JavaScript API as described in Oracle’s published documentation. This policy makes sure that your deployment properly uses this API and helps to make sure your deployment works successfully. You are fully responsible for support of any custom code that you write that uses this API. For product issues that are related to this API, Oracle might request a minimal test case that exercises your API modifications.
Oracle supports your usage of an Integrated Development Environment (IDE) of your choice that you use to write native JavaScript code that you then deploy to work with the Siebel Open UI JavaScript API. Oracle does not support the features of or the quality of any third-party IDE.
Oracle supports your usage of the Siebel Open UI JavaScript API with a rendering environment and system integration that you choose. Oracle has implemented Siebel Open UI in HTML. You can use this implementation as a template for your deployment on other technologies. This template approach allows you to expedite development. However, Oracle can in no way support these customizations because this work is outside the scope of Oracle's support for customizations. It is recommended that you work with Oracle's Application Expert Services on any implementation issues you encounter that are related to the Siebel Open UI JavaScript API. For more information, see Getting Help from Oracle.
If your current deployment includes an integration that resides on the desktop, and if this integration does not easily support migration to JavaScript integration, then it is recommended that you move this integration to the Siebel Server, or use a Web service on the desktop that can integrate to this server.
Oracle provides code examples only to help you understand how to use the Siebel Open UI JavaScript API with Siebel Open UI . Oracle does not support your usage of these code examples. It only supports usage of this API as described in Application Programming Interface.
The predefined application that Oracle provides includes integration interfaces that allow you to modify or to create a new user interface. You can use these integration interfaces to create your own presentation model or physical renderer, at your discretion. It is your responsibility to create and maintain any customizations that you make. For more information, see About the Presentation Model and About the Physical Renderer.
To get help from Oracle with configuring Siebel Open UI , you can create a service request (SR) on My Oracle Support. Alternatively, you can phone Global Customer Support directly to create a service request or to get a status update on your current SR. Support phone numbers are listed on My Oracle Support. You can also contact your Oracle sales representative for Oracle Advanced Customer Services to request assistance from Oracle's Application Expert Services.