11Reference Information for Siebel Open UI
Reference Information for Siebel Open UI
This chapter describes reference information for Siebel Open UI. It includes the following topics:
Life Cycle Flows of User Interface Elements
This topic includes flowcharts that you can use to determine the methods that Siebel Open UI uses during various steps in the life cycle of a user interface element. The flowcharts are described in the following subtopics.
Life Cycle Flows That Save Records
This topic describes the life cycle flows that Siebel Open UI uses to save records.
Flow That Saves Records If the User Uses a_Shortcut
The following figure illustrates the life cycle flow that Siebel Open UI uses to save a record if the user simultaneously presses the CTRL and S keys. The numbers in the diagram indicate the sequence that Siebel Open UI uses during this flow. The A connector connects to the flow described in Flow That Saves Records If the User Uses the Save Menu.

Flow That Saves Records If the User Uses the Save_Menu
The following figure illustrates the life cycle flow that Siebel Open UI uses to save a record if the user clicks Menu, and then the Save Record menu item. The A connector connects to the flow described in Flow That Saves Records If the User Uses a Shortcut.

Flow That Siebel Open UI Uses if the User Clicks an Applet in a View
The following figure illustrates the life cycle flow that Siebel Open UI uses if the user clicks an applet in a view.

Flow That Handles Focus Changes in Form Applets
The following figure illustrates the life cycle flow that Siebel Open UI if the focus changes for a field in a form applet. For example, if the user tabs out a field, clicks outside the field, minimizes the window, saves the record, and so on.

Flow That Handles Focus Changes in List Applets
The following figure illustrates the life cycle flow that Siebel Open UI if the focus changes for a field in a list applet. For example, if the user tabs out a field, clicks outside the field, minimizes the window, saves the record, and so on.

Life Cycle Flows That Send Notifications
This topic describes the life cycle flows that Siebel Open UI uses to send notifications.
Flow That Notifies the Siebel Server
The following figure illustrates the life cycle flow that Siebel Open UI uses to notify the Siebel Server.

Flow That Sends a Notification State Change
The following figure illustrates the life cycle flow that Siebel Open UI uses to send a notification state change. For more information about the notifications that this flow describes, see Notifications That Siebel Open UI Supports.

Life Cycle Flows That Create New Records in List Applets
This topic describes the life cycle flows that Siebel Open UI uses to create a new record in a list applet.
Flow That Creates New Records in List Applets, Calling the Siebel
The following figure illustrates the life cycle flow that Siebel Open UI uses during the call that it makes to the Siebel Server when it creates a new record in a list applet. Siebel Open UI typically calls the following methods during this flow: NewRecord, DeleteRecord, EditField, WriteRecord, and so on. For more information, see DeleteRecord Method, WriteRecord Method, and NewRecord Method.

Flow That Creates New Records in List Applets, Processing the Server
The following figure illustrates the life cycle flow that Siebel Open UI uses when it processes the reply that it gets from the Siebel Server when it creates a new record in a list applet. This figure illustrates the flow that occurs after Siebel Open UI receives the reply.

Flows That Create New Records in List Applets, Updating the User Interface
The following figure illustrates the life cycle flow that Siebel Open UI uses to update the user interface. The numbers in the diagram indicate the sequence that Siebel Open UI uses during this flow.

Flow That Creates New Records in List Applets, Updating the Proxy
The following figure illustrates the life cycle flow that Siebel Open UI uses to update the proxy and presentation model.

Life Cycle Flows That Handle User Actions in List Applets
This topic describes the life cycle flows that Siebel Open UI uses depending on an action that the user does in a list applet.
Flow That Handles the Pagination Button in List Applets
The following figure illustrates the flow that Siebel Open UI uses if the user clicks the pagination button in a list applet.

Flow That Handles a Column Sort in List Applets
The following figure illustrates the flow that Siebel Open UI uses if the user sorts a column in a list applet.

Flow That Handles a Cell Click in List Applets
The following figure illustrates the flow that Siebel Open UI uses if the user clicks a cell in a list applet.

Flow That Handles a Cell Edit and Blur in List Applets
The following figure illustrates the flow that Siebel Open UI uses if the user edits a cell in a list applet, and then navigates away from this cell.

Flow That Handles a Drilldown in List Applets
The following figure illustrates the flow that Siebel Open UI uses if the user clicks a drilldown field in a list applet.

Notifications That Siebel Open UI Supports
This topic describes notifications that Siebel Open UI supports. It includes the following information:
For more information about configuring Siebel Open UI to use notifications, see AttachNotificationHandler Method.
Summary of Notifications That Siebel Open UI Supports
The following table describes the notification types that Siebel Open UI supports. For more information, see New Notification User Interfaces.
Table Notification Types That Siebel Open UI Supports
Notification | Type | Description |
---|---|---|
NotifyBeginNotifys |
SWE_PROP_BC_NOTI_BEGIN |
Notifies the client business component that the request that Siebel Open UI sent to the Siebel Server resulted in at least one notification from a business component. |
NotifyStateChanged |
SWE_PROP_BC_NOTI _STATE_CHANGED |
Specifies a top-level notification for more than one state change that occurs in the business component level. Siebel Open UI uses the following properties to identify the change and to get the data associated with the change:
Siebel Open UI can provide summary or detailed state information. For more information, see NotifyStateChanged Notification Type. |
NotifyGeneric |
SWE_PROP_BC_NOTI_GENERIC |
Identifies the predefined and custom notifications that the Siebel application must send. Siebel Open UI addresses most predefined generic notifications to a particular applet. You can use NotifyGeneric to get the exact type for a generic notification. Siebel Open UI provides actual information of the changes as an encoded argument set. |
NotifyNewSelection |
SWE_PROP_NOTI_SELECTED |
Notifies the client business component that a change occurred in the selection status. Siebel Open UI calls NotifyNewSelection two times for each selection status change:
You cannot use NotifyNewSelection with a multi-select. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_BC_NOTI_ACTIVE_ROW = index SWE_PROP_NOTI_SELECTED = Boolean where:
|
NotifyNewActiveRow |
SWE_PROP_BC_NOTI_ NEW_ACTIVE_ROW |
Notifies the client business component that a change occurred on an active row of the corresponding business component on the Siebel Server. Siebel Open UI usually uses NotifyNewSelection with NotifyNewActiveRow. You can use the following syntax: SWE_PROP_BC_NOTI_ACTIVE_ROW = row where:
|
NotifyDeleteRecord |
SWE_PROP_BC_NOTI _DELETE_RECORD |
Notifies the business component in the client that Siebel Open UI deleted a record from the current set of records on the Siebel Server. Siebel Open UI might use this notification two times for a single record deletion. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_BC_NOTI_ACTIVE_ROW = index bUp = Boolean where:
For an example usage of this notification, see Customizing the Presentation Model to Handle Notifications. |
NotifyDeleteRecordSet |
SWE_PROP_BC_NOTI _DELETE_WORKSET |
Notifies the business component in the client that Siebel Open UI is deleting a record from the current set of records in the client. Does not correspond to a method invoke. Siebel Open UI sends a separate notification for each record that it deletes. You can use the following syntax in the property set that Siebel Open UI sends: index:index NumRows/nr:number where:
For more information, see Using Notifications with Operations That Call Methods. |
NotifyInsertWorkSet |
SWE_PROP_BC_NOT I_INSERT_WORKSET |
Notifies the business component in the client that Siebel Open UI is inserting a new record in the current set of records in the client. You can use the following syntax in the property set that Siebel Open UI sends: index:index_value SWE_FIELD_VALUE_STR:child SWE_PROP_VALUE_ARRAY:array where:
For more information, see Using Notifications with Operations That Call Methods. |
NotifyNewData |
SWE_PROP_BC _NOTI_NEW_DATA |
Notifies the business component in the client that Siebel Open UI is modifying the current set of records. Siebel Open UI sends this notification only if it modifies a record. It does not send this notification if it only modifies a field value. |
NotifyNewPrimary |
SWE_PROP_BC_ NOTI_NEW_PRIMARY |
Sets the primary record in a multi-value group. The RepopulateField notification calls NotifyNewPrimary. |
NotifyNewRecord |
SWE_PROP_BC_ NOTI_NEW_RECORD |
Notifies the client business component that Siebel Open UI is creating a new record in the current set of records on the Siebel Server. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_BC_NOTI_ACTIVE_ROW = index bInsertBefore = Boolean where:
For a similar usage of this notification, see Customizing the Presentation Model to Handle Notifications. |
NotifyNewRecordData |
SWE_PROP_BC_NOTI_ NEW_RECORD_DATA |
Sets the do populate flag. |
NotifyNewDataWorkSet |
SWE_PROP_BC _NOTI_NEW _RECORD_DATA_WS |
Updates a record in the current set of records. |
NotifyNewFieldData |
SWE_PROP_BC_NOTI_ NEW_FIELD_DATA |
Notifies the client business component that Siebel Open UI modified a field value on the Siebel Server, and that Siebel Open UI communicated this modification to the client through the NotifyNewDataWorkset notification. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_NOTI_FIELD = field where:
|
NotifyNewDataWorkset |
SWE_PROP_BC_NOTI_ NEW_DATA_WS |
Notifies the client business component of a field value that Siebel Open UI modified for a field that resides on the Siebel Server. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_NOTI_FIELD = field SWE_PROP_FIELD_VALUES = child where:
You can use the following syntax in the child property set: SWE_PROP_FIELD_ARRAY:string1 SWE_PROP_VALUE_ARRAY:string2 where:
|
NotifyNewFieldList |
SWE_PROP_BC_ NOTI_NEW_FIELD_LIST |
Refreshes the entire view internally. |
NotifyNewRecordDataWS |
SWE_PROP_BC_NOTI_ NEW_RECORD_DATA_WS |
Updates the values in the record set. Siebel Open UI updates the dirty flag during previous notifications. |
NotifyChangeSelection |
SWE_PROP_BC_ NOTI_CHANGE_SELECTION |
Sets the update conditionals flag and the row counter. |
NotifyEndNotifys |
SWE_PROP _BC_NOTI_END |
Notifies the client business component that Siebel Open UI is ending the notification, and that no more server notifications exist for the current transaction. |
NotifyBeginQuery |
SWE_PROP_BC _NOTI_BEGIN_QUERY |
Notifies the client business component that Siebel Open UI started a query on the business component on the Siebel Server. |
NotifyNewQuerySpec |
SWE_PROP_BC_ NOTI_NEW_QUERYSPEC |
Siebel Open UI uses the NotifyNewQuerySpec notification if the user refines a query. If the business component search specification is empty, then NotifyNewQuerySpec clears all field search specifications. |
NotifyNewFieldQuerySpec |
SWE_PROP_BC_NOTI_ NEW_FIELD_QUERYSPEC |
Notifies the client business component that Siebel Open UI is doing one of the following to query the fields of the current business component on the Siebel Server:
This situation can occur through a predefined or custom configuration, or in reply to a query that the user performs. You can use the following syntax in the property set that Siebel Open UI sends: SWE_PROP_NOTI_FIELD = fieldSWE_PROP_VALUE = search specification" where:
|
NotifyEndQuery |
SWE_PROP_BC_ NOTI_END_QUERY |
Notifies the client business component that Siebel Open UI is ending a query on the business component on the Siebel Server. This situation can occur if the ExecuteQuery method or the UndoQuery method runs. |
NotifyExecute |
SWE_PROP_BC _NOTI_EXECUTE |
Notifies the client business component that Siebel Open UI is running a business component on the Siebel Server. You can use the following syntax in the property set that Siebel Open UI sends: srt = sort specifications where:
|
NotifyScrollAmount |
SWE_PROP_BC_ NOTI_SCROLL_AMOUNT |
Sets the scroll folder and the amount for a mobile swipe operation. |
NotifyPageRefresh |
SWE_NOTIFY_PAGE_REFRESH |
Updates the urltogo with the URL that Siebel Open UI uses to refresh a view. Siebel Open UI gets this URL from a subsequent executeurltoGo notification. |
Using Notifications with Operations That Call Methods
It is recommended that you do not use some notifications with an operation that calls a method. For example, if the user paginates to the next page in a set of 10 records, and if you use NotifyInsertWorkSet with the method that calls this pagination, then Siebel Open UI will create 10 separate NotifyInsertWorkSet notifications.
NotifyGeneric Notification Type
The following table describes the subtypes of the SWE_PROP_BC_NOTI_GENERIC type that the NotifyGeneric notification type uses. It includes the predefined and custom notifications that a Siebel application must send.
Table Notify Generic Notification Type
Sub Type | Description |
---|---|
SWEICanInvokeMethod |
Enables the refresh button. |
SWEICtlDefChanged |
Modifies the definition for a control. You can customize Siebel Open UI to dynamically modify the definition that a control uses. For example, modifying a definition from JavaScript text box to a JavaScript combo box. |
SWEIPrivFlds |
Specifies a list of private fields. For example, the Find controls that Siebel Open UI displays in a dialog box. A private field is a type of field that only allows the record owner to view the record. For more information, see Siebel Object Types Reference. |
SWEICanUpdate |
Specifies to display data-driven, read-only behavior. |
SWEICanNavigate |
If a list applet displays zero records, and if the user adds a new record, then the SWEICanNavigate subtype displays the drilldown links. |
SWEIRowSelection |
Sends the set of selected rows that exist in the current set of records to a list applet. You can use the following syntax in the decoded array: argsArray[0] = applet name argsArray[1-x] = value where:
|
SWEAInvokeMethod |
Adds an operation in the life cycle that the InvokeMethod method uses. For example, assume you configure an OK button in an association applet, and that this button closes a dialog box. You can use the SWEAInvokeMethod subtype to configure this button to make a subsequent call to the CreateRecord method if the user clicks OK. You can use the following syntax in the decoded array: argsArray[0] = applet argsArray[1] = method where:
For more information, see InvokeMethod Method for Presentation Models. |
DeletePopup |
Deletes a popup applet. The DeletePopup subtype does not close an applet in the user interface. You can use ClosePopup to close an applet. |
SetPopupBookmark |
Sets the context for a popup bookmark to use the state of the parent applet that resides on the Siebel Server. |
GetQuickPickInfo |
Sends the values of a picklist to an applet. You can use the following syntax in the decoded array: argsArray[0] = placeholder argsArray[1] = view argsArray[2] = applet argsArray[3] = identifier argsArray[4] = control argsArray[5-x] = string where:
|
BegRow |
Sends the starting row that the Object Manager uses to display the current row in the client. You can use the following syntax in the decoded array: argsArray[0] = applet name argsArray[1] = value where:
|
GetCurrencyCalcInfo |
Gets a currency notification from the currency metadata. |
GetCurrencyCodeInfo |
Gets a currency notification from specific currency data. |
CloseCurrencyPickApplet |
Sends a notification to close a currency applet. |
ClosePopup |
Notifies an applet that Siebel Open UI is closing a popup that is currently open on this applet. You can use the following syntax in the decoded array: argsArray[0] = applet where:
|
NotifyStateChanged Notification Type
The following table describes the subtypes of the NotifyStateChanged type.
Table NotifyStateChanged Notification Type
Sub Type | Description |
---|---|
activeRow |
Identifies the active row of the business component. You can use ar (active row) to abbreviate activeRow. |
bCanDelete |
Returns a Boolean value that includes one of the following values:
You can use cd (can delete) as an abbreviation for bCanDelete. |
bCanInsert |
Returns a Boolean value that includes one of the following values:
You can use ci (can insert) as an abbreviation for bCanInsert. |
bCanInsertDynamic |
Returns a Boolean value that includes one of the following values:
You can use cud (can insert dynamic) as an abbreviation for bCanInsertDynamic. |
bCanMergeRecords |
Returns a Boolean value that includes one of the following values:
You can use cm (can merge) as an abbreviation for bCanMergeRecords. |
bCanQuery |
Returns a Boolean value that includes one of the following values:
You can use cq (can query) as an abbreviation for bCanQuery. |
bCanUpdate |
Returns a Boolean value that includes one of the following values:
You can use cu (can update) as an abbreviation for bCanUpdate. |
bCanUpdateDynamic |
Returns a Boolean value that includes one of the following values:
You can use cud (can update dynamic) as an abbreviation for bCanUpdateDynamic. |
bCommitPending |
Returns a Boolean value that includes one of the following values:
You can use cp (commit pending) as an abbreviation for bCommitPending. |
bDelRecPending |
Returns a Boolean value that includes one of the following values:
You can use dp (delete pending) as an abbreviation for bDelRecPending. |
bExecuted |
Returns a Boolean value that includes one of the following values:
You can use |
bHasAssocList |
Determines whether or not the business component is an association business component. An association business component is a type of business component that includes an intertable. |
bInMultiSelMode |
Returns a Boolean value that includes one of the following values:
You can use |
bInQueryState |
Returns a Boolean value that includes one of the following values:
You can use |
bInverseSelection |
Returns a Boolean value that includes one of the following values:
You can use |
bNewRecPending |
Returns a Boolean value that includes one of the following values:
You can use |
bNotifyEnabled |
Returns a Boolean value that includes one of the following values:
You can use |
NumRows |
Returns the number of rows that Siebel Open UI has currently identified. You can use nr (number of rows) as an abbreviation for NumRows. |
NumRowsKnown |
Returns the number of rows that Siebel Open UI has currently identified for a search specification. You can use nrk (number of rows known) as an abbreviation for NumRowsKnown. |
NumSelected |
Returns the number of rows that are currently in multiselect mode. You can use ns (number selected) as an abbreviation for NumSelected. |
Example Usages of Notifications
This topic describes example usages of notifications.
Example of the NotifyBeginNotifys Notification
The following code is an example usage of the NotifyBeginNotifys notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_DELETE_RECORD"), function (propSet){ // Change has occurred at server BC. Do something here: this.SetProperty ("Refresh_Renderer", true); });
Example of the NotifyNewSelection Notification
The following code is an example usage of the NotifyNewSelection notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_NOTI_SELECTED"), function (propSet){ if (propSet.GetProperty(consts.get("SWE_PROP_NOTI_SELECTED")) === "false") this.SetProperty ("rowBeingUnselected", propSet.GetProperty("SWE_PROP_BC_NOTI_ACTIVE_ROW")); } });
Example of the NotifyNewFieldData Notification
The following code is an example usage of the NotifyNewFieldData notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_NEW_DATA_WS"), function (propSet){ var field = propset.GetProperty(consts.get("SWE_PROP_NOTI_FIELD")); if (field === "Customer Last Name"){ // Notify my extension that shows this value in a different way. this.SetProperty ("RefreshExtn", true); } }
Example of the NotifyNewDataWorkset Notification
The following code is an example usage of the NotifyNewDataWorkset notification:
// Trap an incoming change to the field value to do some flagging. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_NEW_DATA_WS"), function (propSet){ var field = propset.GetProperty(consts.get("SWE_PROP_NOTI_FIELD")); if (field === "Discount Percentage"){ var childPS = propSet.GetChildByType (consts.get("SWE_PROP_FIELD_VALUES")); var value; CCFMiscUtil_StringToArray (fieldSet.GetProperty(consts.get("SWE_PROP_VALUE_ARRAY")), value); if (parseFloat(value) > 20){ // Greater than 20% discount? Something fishy! this.SetProperty ("flagCustomer", true); } } });
Example of the NotifyNewData, NotifyInsertWorkSet, and
The following code is an example usage of the NotifyNewData, NotifyInsertWorkSet, and NotifyDeleteRecordSet notifications:
// First let's check if there's any change to the client workset. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_NEW_DATA"), function (){ // Yes indeed. this.SetProperty ("primeRenderer", true); }); // Now let's say our business is with the 4th record. We want to track if this record is replaced. // First we see if this 4th record is being deleted. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_DELETE_WORKSET"), function (propSet){ if (propSet.GetProperty("index" === 3){// 3 because count starts at 0 if (propSet.GetProperty("nr") === 1 || propSet.GetProperty("NumRows") === 1){ if (this.Get("primeRenderer")){ this.Set("deleted", 4); } } } }); // Next to the insertion this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_INSERT_WORKSET"), function (propSet){ var underReplacement = this.GetProperty ("deleted"); if (this.Get("primeRenderer") && propSet.GetProperty("index") === this.GetProperty("deleted")){ // All conditions met. Now we'll get some info from what is being added. var childPS = propSet.GetChildByType (consts.get("SWE_FIELD_VALUE_STR")); var fieldArray; CCFMiscUtil_StringToArray (childPS.GetProperty(consts.get("SWE_PROP_VALUE_ARRAY")), fieldArray); this.SetProperty ("New_Name_Value", fieldArray[2]); this.SetProperty ("primeRenderer", false); } });
Example of the NotifyBeginQuery, NotifyNewFieldQuerySpec, and
The following code is an example usage of the NotifyBeginQuery, NotifyNewFieldQuerySpec, and NotifyEndQuery notifications:
// Let's see a simple example involving all the three. First we will take up the query start. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_BEGIN_QUERY"), function (){ // Query begins - The renderer will use this notification to show a bubble box having a number of choices. This might be driven off of a dropdown in the actual applet - we already have the choices. this.SetProperty ("showBubble", true); }); // Now we'll attach to Field Spec. If that dropdown has a pre default value, then we can highlight that choice in our bubble. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_NEW_FIELD_QUERYSPEC"), function (propSet){ if (propSet.GetProperty(consts.get("SWE_PROP_NOTI_FIELD") === "Customer Type"){ var value = propSet.GetProperty(consts.get("SWE_PROP_VALUE"); var bubbleValues = this.Get (bubbleValueArray); this.SetProperty ("SetBubbleHighlightIndex", bubbleValues.indexOf(value)); } }); // Next the obvious. The death of the bubble. this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_END_QUERY"), function (){ this.SetProperty ("showBubble", false); });
Example of the NotifyEndNotifys Notification
The following code is an example usage of the NotifyEndNotifys notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_END"), function (){ // No more notifications. Mark for UI Refresh. this.SetProperty ("refreshUI", true); });
Example of the SWEIRowSelection Notification
The following code is an example usage of the SWEIRowSelection notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_GENERIC"), function (propSet){ var type = propSet.GetProperty(consts.get("SWE_PROP_NOTI_TYPE")); if (type === "SWEIRowSelection"){ var argsArray; CCFMiscUtil_StringToArray (propSet.GetProperty(consts.get("SWE_PROP_ARGS_ARRAY"), argsArray); if (argsArray[6] === "1"){ this.SetProperty ("SixthRowSelected", true); } } });
Example of the BegRow Notification
The following code is an example usage of the BegRow notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_GENERIC"), function (propSet){| var type = propSet.GetProperty(consts.get("SWE_PROP_NOTI_TYPE")); if (type === "BegRow"){ var argsArray; CCFMiscUtil_StringToArray (propSet.GetProperty(consts.get("SWE_PROP_ARGS_ARRAY"), argsArray); this.SetProperty ("beginRow", parseInt(argsArray[1])); } });
Example of the GetQuickPickInfo Notification
The following code is an example usage of the GetQuickPickInfo notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_GENERIC"), function (propSet){ var type = propSet.GetProperty(consts.get("SWE_PROP_NOTI_TYPE")); if (type === "GetQuickPickInfo"){ var argsArray = []; CCFMiscUtil_StringToArray (propSet.GetProperty(consts.get("SWE_PROP_ARGS_ARRAY")), argsArray); if (argsArray[5] === "MyValue"){ // The dropdown contains a value that we don’t like.. // Let us disable it. this.SetProperty ("disablePick", true); } } });
Example of the ClosePopup Notification
The following code is an example usage of the ClosePopup notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_GENERIC"), function (propSet){ var type = propSet.GetProperty(consts.get("SWE_PROP_NOTI_TYPE")); if (type === "ClosePopup"){ // The below is just an example. PM's should not alert anything. Leave that to the PRs. alert ("Make sure you have collected all details. You next operation will save the record!"); } });
Example of the SWEAInvokeMethod Notification
The following code is an example usage of the SWEAInvokeMethod notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_GENERIC"), function (propSet){ var type = propSet.GetProperty(consts.get("SWE_PROP_NOTI_TYPE")); if (type === "SWEAInvokeMethod"){ if (argsArray[1] === "NewRecord"){ // Ah so there's going to be a new record that has happened as a chain. // Let's set a property so that we can do an AddMethod on this NewRecord, // and extend it to our liking this.SetProperty ("isChained", true); } } });
Example of the NotifyStateChanged Notification
The following code is an example usage of the NotifyStateChanged notification:
this.AttachNotificationHandler(consts.get("SWE_PROP_BC_NOTI_STATE_CHANGED"), function (propSet){ var type = propSet.GetProperty("type"); var value = propSet.GetProperty("value"); // This is just an example. Switch-case is preferred if multiple types need to // have custom logic if (type === "cr" || type === "CurRowNum"){ // Current Row has changed at the server. if (value === this.Get("MyPreviouslyStoredActiveRow")){ // Or not! What's going on. Something wrong with my logic? } } if (type === "nr" || type === "NumRows"){ if (parseInt(value) > 1000){ // Woah, this user seems to be going through a lot of records! // Shouldn't she be using the query function? this.SetProperty ("AlertUser", true); } } ... ... });
Property Sets That Siebel Open UI Supports
The following table describes the property sets that Siebel Open UI supports. Siebel Open UI uses the Handle Response
property set for navigation controls, such as the predefined query, drop down menus, screen tabs, and view tabs. Siebel Open UI handles the toolbar during setup because it does not dynamically update the property set.
Table Property Set Types That Siebel Open UI Supports
Property Set | Description |
---|---|
SWE_PROP_NC_PDQ_INFO |
Child property set for the Predefined Query (PDQ). It includes the list of PDQ items that Siebel Open UI displays. It uses the following properties:
|
SWE_PROP_NC_VISIBILITY_INFO |
Defines the beginning of the visibility property set. It uses the following properties:
You can use the VisDropDownItem property as the predefined bubbled handler to do user interface binding. |
SWE_PROP_NC_SCREENCTRL _INFO |
Defines information for the first level in a screen. It uses the all the same properties that the SWE_PROP_NC_VISIBILITY_INFO property set uses except it does not use the SWE_PROP_NC_ITEM_INFO property. You can use the GetTabInfo property as the predefined bubbled handler. |
SWE_PROP_NC_FLOATING _TAB_INFO |
If Siebel Open UI already displays a screen, and if the user clicks an empty tab, then SWE_PROP_NC_FLOATING_TAB_INFO adds a new tab. It uses the GetTabInfo property. |
SWE_PROP_NC_AGGREGATE_INFO |
Describes Amazon link information. It uses the GetTabLinkInfo property. It uses the following properties:
|
SWE_PROP_NC_SUBDETAIL_INFO |
Specifies information for the fourth level link. It uses the same properties that the SWE_PROP_NC_AGGREGATE_INFO property set uses. |
SWE_PROP_NC_DETAIL_INFO |
Specifies the view tab information that Siebel Open UI displays to start. It uses the GetTabInfo property. It uses the following properties:
You can use the following properties as predefined bubbled handlers:
|
Siebel CRM Events That You Can Use to Customize Siebel Open UI
This topic describes the Siebel CRM events that you can use to customize Siebel Open UI. The jQuery library binds actions to JavaScript events, such as mouse down, mouse over, blur, and so on. It also provides its own events that are part of the jQuery library and not part of Siebel Open UI. Siebel Open UI uses some Siebel CRM events that jQuery does not define, such as the postload event. This topic describes these Siebel CRM events. Note the following:
All example code that this topic describes must reside in the Init method of your custom presentation model. For more information, see Init Method.
You can use JavaScript methods to manage Siebel CRM events, such as BindEvent, OnControlEvent, and so on. For more information, see OnControlEvent Method, BindEvents Method and AttachEventHandler Method.
Events That You Can Use to Customize Form Applets
The following table describes the events that you can use to customize a form applet.
Table Events That You Can Use to Customize Form Applets
Event | Description |
---|---|
PHYEVENT_APPLET_FOCUS |
Siebel Open UI triggers the PHYEVENT_APPLET_FOCUS event when an applet receives focus. You can use it to trigger custom code when Siebel Open UI sets the focus to the presentation model that the applet references as the result of a user action. No objects are available with this event. The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_APP LET_FOCUS""), function () { // My applet recived focus. this.SetProperty (""AppletInFocus"", true); return (true); });" |
PHYEVENT_CONTROL_FOCUS |
Siebel Open UI triggers the PHYEVENT_CONTROL_FOCUS event when a control in an applet comes into focus. You can use this event to update the value for this control or to call code according to this value. You can use it with the following objects:
The following code is an example usage of this event: this.AttachEventHandler(siebConsts.get("PHYEVENT_CONTR OL_FOCUS"), function (control, value) { if (this.Get("AppletInFocus"){ var controlArray = this.Get("FlaggedControlSet"); if (controlArray.indexOf(control) >= 0){ // This is a flagged control. var valueObject = this.GetProperty ("FlaggedControlsValue"); if (value > maxValue){ // Value higher than allowed when receiving focus. Let's flag this. this.SetProperty ("FlagHigher", true); } } } return (true); }); |
PHYEVENT_CONTROL_BLUR |
Siebel Open UI triggers the PHYEVENT_CONTROL_BLUR event when a control in an applet goes out of focus. You can use this event to update the value for this control or to call code according to this value. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_CON TROL_BLUR""), function (control, value) { if (this.Get(""AppletInFocus""){ var controlArray = this.Get(""FlaggedControlSet""); if (controlArray.indexOf(control) >= 0){ // This is a flagged control. var valueObject = this.GetProperty (""FlaggedControlsValue""); if (valueObject[ control.GetName() ] !== value){ // Value change. Need to update internal storage, and fire any potential extensions attached to the property. valueOjbect[ control.GetName() ] = value; this.SetProperty (""FlaggedControlsValue"", valueObject); } } } return (true); });" |
PHYEVENT_INVOKE_CONTROL |
Siebel Open UI triggers the PHYEVENT_INVOKE_CONTROL event when it calls a method that is associated with a control. Siebel Open UI makes this call in reply to a user action. You can use this event to configure Siebel Open UI to call a method at the physical layer before it makes this call at a proxy layer. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_CONTROL""), function (method, inputPS, ai) { if (method === ""WriteRecord""){ var valueObject = this.GetProperty (""FlaggedControlsValue""); var min = this.Get(""MinRangeForFlagged""); for (var value in valueObject){ if (value < min){ alert (""Invalid Values. Think again!""); return (false); } } } return (true); });" |
PHYEVENT_INVOKE_PICK |
Siebel Open UI triggers the PHYEVENT_INVOKE_PICK event when it calls a pop-up control for a picklist. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the action that the pop-up control requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_MVG""), function (control) { if (control === this.GetProperty(""AddressMVG"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't popup this MVG""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_MVG |
Siebel Open UI triggers the PHYEVENT_INVOKE_MVG event when it calls a pop-up control for a multivalue group. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the action that the pop-up control requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_MVG""), function (control) { if (control === this.GetProperty(""AddressMVG"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't popup this MVG""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_DETAIL |
Siebel Open UI triggers the PHYEVENT_INVOKE_DETAIL event when it calls a pop-up details control. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the action that the pop-up control requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_DETAIL""), function (control) { if (control === this.GetProperty(""City"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't use this Details""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_EFFDAT |
Siebel Open UI triggers the PHYEVENT_INVOKE_EFFDAT event when it calls a pop-up effective dating control. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the action that the pop-up control requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_EFFDAT""), function (control) { if (control === this.GetProperty(""AccountTrail"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't open this Dating Popup""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_COMBO |
Siebel Open UI triggers the PHYEVENT_INVOKE_COMBO event when it calls a combo box or dropdown list. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the open action that the combo box or dropdown list requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_COMBO""), function (control) { if (control === this.GetProperty(""Designation"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't open this Dropdown""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_CURRENCY |
Siebel Open UI triggers the PHYEVENT_INVOKE_CURRENCY event when it calls a popup currency calculator. Siebel Open UI makes this call in reply to a user action on the keyboard or mouse. You can use this event to configure Siebel Open UI to handle the open action that the currency calculator requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_CURRENCY""), function (control) { if (control === this.GetProperty(""RevenueControl"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, can't open this currency field""); return (false); } } return (true); });" |
PHYEVENT_INVOKE_TOGGLE |
Siebel Open UI triggers the PHYEVENT_INVOKE_TOGGLE event when it calls a control that includes a toggle layout configuration. Siebel Open UI makes this call in reply to a user action to toggle the layout. You can use this event to configure Siebel Open UI to handle the action that the toggle layout requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_INV OKE_TOGGLE""), function (value) { if (value === this.GetProperty(""FlaggedControl"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range value to toggle""); return (false); } } return (true); });" |
PHYEVENT_DRILLDOWN_FORM |
Siebel Open UI triggers the PHYEVENT_DRILLDOWN_FORM event when it calls a drilldown control that resides on a form applet. Siebel Open UI makes this call in reply to a user click on the drilldown. You can use this event to configure Siebel Open UI to handle the action that the drilldown requests. You can use it with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_DRI LLDOWN_FORM""), function (control) { if (control === this.GetProperty(""AccountDrill"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range value to drilldown""); return (false); } } return (true); });" |
PHYEVENT_ENTER_KEY_PRESS |
Siebel Open UI triggers the PHYEVENT_ENTER_KEY_PRESS event when the user presses the Enter key. Siebel Open UI triggers it only if a control is in focus. You can use this event to handle an Enter key press before the proxy layer uses the default configuration to handle it. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_ENT ER_KEY_PRESS""), function (control) { if (control === this.GetProperty(""Salary"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range value to commit""); return (false); } } return (true); });" |
PHYEVENT_ESC_KEY_PRESS |
Siebel Open UI triggers the PHYEVENT_ESC_KEY_PRESS event when the user presses the Esc (Escape) key. Siebel Open UI triggers it only if a control is in focus. You can use this event to handle an Esc key press before the proxy layer uses the default configuration to handle it. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_ESC _KEY_PRESS""), function (control) { if (control === this.GetProperty(""Salary"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range value to undo""); return (false); } } return (true); });" |
PHYEVENT_TAB_KEY_PRESS |
Siebel Open UI triggers the PHYEVENT_TAB_KEY_PRESS event when the user presses the Tab key. Siebel Open UI triggers it only if a control is in focus. You can use this event to handle a Tab key press before the proxy layer uses the default configuration to handle it. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_TAB _KEY_PRESS""), function (control) { if (control === this.GetProperty(""Salary"")){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range value to undo""); return (false); } } return (true); });" |
Events That You Can Use to Customize List Applets
The following table describes the events that you can use to customize a list applet.
Table Events That You Can Use to Customize List Applets
Event | Description |
---|---|
PHYEVENT_SELECT_ROW |
Siebel Open UI triggers the PHYEVENT_SELECT_ROW event when the user chooses a row in a list applet. You can use it to determine whether or not the user clicked a row that is not the current row. Using this event might cause the state of objects that reside on the Siebel Server to be inconsistent with the state of objects that reside in the client. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_SELECT _ROW""), function (rowIndex, shiftKey, controlKey) { if (rowIndex === 0 && shiftKey){ alert (""Do not multiselect all rows.""); return (false); } });" |
PHYEVENT_COLUMN_FOCUS |
Siebel Open UI triggers the PHYEVENT_COLUMN_FOCUS event when a column in a list applet comes into focus. You can use it to identify the column that is in focus, and to call custom code. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_COLUMN _FOCUS""), function (rowIndex, control, value) { if (rowIndex > 5) { return (true); } if (this.Get(""AppletInFocus""){ var controlArray = this.Get(""FlaggedControlSet""); if (controlArray.indexOf(control) >= 0){ // Declare the flagged control. var valueObject = this.GetProperty (""FlaggedControlsValue""); if (value > maxValue){ // Flag value that is higher than allowed when receiving focus. this.SetProperty (""FlagHigher"", true); } } } return (true); });" |
PHYEVENT_COLUMN_BLUR |
Siebel Open UI triggers the PHYEVENT_COLUMN_BLUR event when a column in a list applet goes out of focus. You can use it to identify the column that is going out of focus, and to call custom code. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_COLUMN _BLUR""), function (rowIndex, control, value) { if (rowIndex > 5) { return (true); } if (this.Get(""AppletInFocus""){ var controlArray = this.Get(""FlaggedControlSet""); if (controlArray.indexOf(control) >= 0)) { // This is a flagged control. var valueObject = this.GetProperty (""FlaggedControlsValue""); if (value > maxValue){ // Value higher than allowed when receiving focus. Let's flag this. this.SetProperty (""FlagHigher"", true); } } } return (true); });" |
PHYEVENT_DRILLDOWN_LIST |
Siebel Open UI triggers the PHYEVENT_DRILLDOWN_LIST event when the user clicks a drilldown link in a list applet. You can use it to call custom code when the user clicks a drilldown link. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_DRILLD OWN_LIST""), function (colName, rowIndex) { if (name === ""Type"")){ varmaxOptyArray = this.Get(""mO""); if (maxOptyArray[rowIndex] > this.Get(""HigVal"")){ alert (""Fix opportunity value before drilldown.""); return (false); } } return (true); });" |
PHYEVENT_VSCROLL_LIST |
Siebel Open UI triggers the PHYEVENT_VSCROLL_LIST event when the user clicks the next page or previous page control in a list applet or tile applet. You can use it to call custom code when the user clicks one of these controls. Siebel Open UI does not trigger this event if the user uses a keyboard shortcut to do the pagination. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_VSCROL L_LIST""), function (direction) { if (direction ===SiebelApp.Contants.Get(""PAG_NEXT_SET"")){ alert (""Jump record by record. Not sets.""); return (false); } return (true); });" |
PHYEVENT_SORT_LIST |
Siebel Open UI triggers the PHYEVENT_SORT_LIST event when the user sorts a list column. You can use it to call custom code when the user does this sort. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_SORT_L IST""), function (colName, direction) { if (colName === ""Type""){ if (direction === SiebelApp.Constants.Get(""SORT_ASCENDING"")){ alert (""You cannot sort this column.""); return (false); } } return (true); });" |
PHYEVENT_HIER_EXPAND |
Siebel Open UI triggers the PHYEVENT_HIER_EXPAND event when the user expands a row in a hierarchal list applet. You can use it to call custom code when the user does this expansion. Siebel Open UI uses this event only with hierarchal list applets. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_HIER_E XPAND""), function (rowNum) { if (rowNum === 0)){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry. Change the Range value to expand this row.""); return (false); } } return (true); });" |
PHYEVENT_HIER_COLLAPSE |
Siebel Open UI triggers the PHYEVENT_HIER_COLLAPSE event when the user collapses a row in a hierarchal list applet. You can use it to call custom code when the user does this collapse. Siebel Open UI uses this event only with hierarchal list applets. You can use this event with the following objects:
The following code is an example usage of this event: "this.AttachEventHandler(siebConsts.get(""PHYEVENT_HIER_C OLLAPSE""), function (rowNum) { if (rowNum === 2)){ varhighValue = this.Get(""HighVal""); if (highValue < this.Get (""MinRangeForFlagged""){ alert (""Sorry, change the Range to collapse this row.""); return (false); } } return (true); });" |
Languages That Siebel Open UI Supports
This topic lists the languages that Siebel Open UI supports. It supports the i18N internationalization standard. In most situations, it does not hard code strings, and it uses language independent values for each LOV (list of values) instead of translated values. For more information about how to customize Siebel Open UI to support multiple languages, see Displaying Control Labels in Different Languages.
Languages That Siebel Open UI Supports for Windows, AIX, Oracle Solaris, and HP-UX
The following table lists the languages That Siebel Open UI supports for Windows, AIX, Oracle Solaris, and HP-UX. The Lang column lists the language_code.
Table Languages That Siebel Open UI Supports for Windows, AIX, Oracle Solaris, and HP-UX
Lang | Codepage | Windows | AIX | Oracle Solaris | HP-UX |
---|---|---|---|---|---|
ARA |
1256 |
Arabic (Saudi Arabia) |
AR_SA.UTF-8 |
ar_SA.UTF-8 |
ar_SA. utf8 |
CHS |
936 |
Chinese, Simplified |
ZH_CN.UTF-8 |
zh_CN.UTF-8 |
zh_CN.utf8 |
CHT |
950 |
Chinese, Traditional |
ZH_TW.UTF-8 |
zh_TW.UTF-8 |
zh_TW.utf8 |
CSY |
1250 |
Czech |
CS_CZ.UTF-8 |
cs_CZ.UTF-8 |
univ.utf8 |
DAN |
1252 |
Danish |
DA_DK.UTF-8 |
da_DK.UTF-8 |
univ.utf8 |
DEU |
1252 |
German, Standard |
DE_DE.UTF-8 |
de_DE.UTF-8@euro |
de_DE.utf8 |
ENU |
1252 |
English, American |
EN_US.UTF-8 |
en_US.UTF-8 |
univ.utf8 |
ESN |
1252 |
Spanish, Modern |
ES_ES.UTF-8 |
es_ES.UTF-8@euro |
es_ES.utf8 |
FIN |
1252 |
Finnish |
FI_FI.UTF-8 |
fi_FI.UTF-8@euro |
univ.utf8 |
FRA |
1252 |
French, Standard |
FR_FR.UTF-8 |
fr_FR.UTF-8@euro |
fr_UR.utf8 |
HEB |
1255 |
Hebrew |
HE_IL.UTF-8 |
he_IL.UTF-8 |
univ.utf8 |
ITA |
1252 |
Italian, Standard |
IT_IT.UTF-8 |
it_IT.UTF-8@euro |
it_IT.utf8 |
JPN |
932 |
Japanese |
JA_JP.UTF-8 |
ja_JP.UTF-8 |
ja_JP.utf8 |
KOR |
949 |
Korean |
KO_KR.UTF-8 |
ko_KR.UTF-8 |
ko_KR.utf8 |
NLD |
1252 |
Dutch, Standard |
NL_NL.UTF-8 |
nl_NL.UTF-8@euro |
univ.utf8 |
PTB |
1252 |
Portuguese, Brazilian |
PT_BR.UTF-8 |
pt_BR.UTF-8 |
univ.utf8 |
PTG |
1252 |
Portuguese, Standard |
PT_PT.UTF-8 |
pt_PT.UTF-8@euro |
univ.utf8 |
SVE |
1252 |
Swedish |
SV_SE.UTF-8 |
sv_SE.UTF-8 |
sv_SE.utf8 |
THA |
874 |
Thai, Thailand |
TH_TH.UTF-8 |
th_TH.UTF-8 |
th_TH.utf8 |
RUS |
1251 |
Russian |
RU_RU.UTF-8 |
ru_RU.UTF-8 |
ru_RU.utf8 |
TRK |
1254 |
Turkish |
TR_TR.UTF-8 |
tr_TR.UTF-8 |
tr_TR.utf8 |
PLK |
1250 |
Polish |
PL_PL.UTF-8 |
pl_PL.UTF-8 |
pl_PL.utf8 |
Languages That Siebel Open UI Supports for Linux RH, Linux SuSe, Enterprise Linux, and Java Locale Code
The following table lists the languages that Siebel Open UI supports for Linux RH, Linux SuSe, Enterprise Linux, and Java Locale Code. The Lang column lists the language_code.
Table Languages That Siebel Open UI Supports for Linux RH, Linux SuSe, Enterprise Linux, and Java Locale Code
Lang | Codepage | Linux RH | Linux SuSe | Enterprise Linux | Java Locale Code |
---|---|---|---|---|---|
CHS |
936 |
zh_CN.utf8 |
zh_CN.utf8 |
zh_CN.utf8 |
zh_CN |
CHT |
950 |
zh_TW.utf8 |
zh_TW.utf8 |
zh_TW.utf8 |
zh_TW |
CSY |
1250 |
cs_CZ.utf8 |
cs_CZ.utf8 |
cs_CZ.utf8 |
cs_CZ |
DAN |
1252 |
da_DK.utf8 |
da_DK.utf8 |
da_DK.utf8 |
da_DK |
DEU |
1252 |
de_DE.utf8 |
de_DE.utf8 |
de_DE.utf8 |
de_DE |
ENU |
1252 |
en_US.utf8 |
en_US.utf8 |
en_US.utf8 |
en_US |
ESN |
1252 |
es_ES.utf8 |
es_ES.utf8 |
es_ES.utf8 |
es_ES |
FIN |
1252 |
fi_FI.utf8 |
fi_FI.utf8 |
fi_FI.utf8 |
fi_FI |
FRA |
1252 |
fr_FR.utf8 |
fr_FR.utf8 |
fr_FR.utf8 |
fr_FR |
ITA |
1252 |
it_IT.utf8 |
it_IT.utf8 |
it_IT.utf8 |
it_IT |
JPN |
932 |
ja_JP.utf8 |
ja_JP.utf8 |
ja_JP.utf8 |
ja_JP |
KOR |
949 |
ko_KR.utf8 |
ko_KR.utf8 |
ko_KR.utf8 |
ko_KR |
NLD |
1252 |
nl_NL.utf8 |
nl_NL.utf8 |
nl_NL.utf8 |
nl_NL |
PTB |
1252 |
pt_BR.utf8 |
pt_BR.utf8 |
pt_BR.utf8 |
pt_BR |
PTG |
1252 |
pt_PT.utf8 |
pt_PT.utf8 |
pt_PT.utf8 |
pt_PT |
SVE |
1252 |
sv_SE.utf8 |
sv_SE.utf8 |
sv_SE.utf8 |
sv_SE |
THA |
874 |
th_TH.utf8 |
th_TH.utf8 |
th_TH.utf8 |
th_TH |
RUS |
1251 |
ru_RU.utf8 |
ru_RU.utf8 |
ru_RU.utf8 |
ru_RU |
TRK |
1254 |
tr_TR.utf8 |
tr_TR.utf8 |
tr_TR.utf8 |
tr_TR |
POL |
1250 |
pl_PL.utf8 |
pl_PL.utf8 |
pl_PL.utf8 |
pl_PL |
Screens and Views That Siebel Mobile Uses
This topic describes screens and views that Siebel Mobile uses. It includes the following information:
Screens and Views That Siebel Consumer Goods Uses
The following table lists the predefined screens and views that Siebel Mobile uses for Siebel Consumer Goods.
Table Screens and Views That Siebel Consumer Goods Uses
Screen | View Name in Client | View Name in Siebel Tools |
---|---|---|
Accounts |
Addresses |
CG Account Addresses View - Mobile |
Calls |
CG Account Calls Views - Mobile |
|
Contacts |
CG Account Contacts View - Mobile |
|
Accounts |
CG Account List View - Mobile |
|
Notes |
CG Account Notes View - Mobile |
|
Orders |
CG Account Orders View - Mobile |
|
Retail Audits |
CG Account Product Audits View - Mobile |
|
Product Distribution |
CG Account Products View - Mobile |
|
Contacts |
Addresses |
CG Contact Addresses View - Mobile |
Best Call Time |
CG Contact Best Call Times View - Mobile |
|
Contacts |
CG Contact List View - Mobile |
|
Routes |
Route Accounts |
CG Routes Accounts View - Mobile |
Routes |
CG Routes List View - Mobile |
|
Calls |
Assessment |
CG Call Account Assessment View - Mobile |
Notes |
CG Call Account Notes View - Mobile |
|
Merchandising Audits |
CG Call Merchandising Audits View - Mobile |
|
Orders |
CG Call Orders View - Mobile |
|
Retail Audits |
CG Call Retail Audit List View - Mobile |
|
Calls |
CG Outlet Visit Activities List View - Mobile |
|
Call Items |
CG Visit Call Items List View - Mobile |
|
Orders |
Orders |
CG Order List View - Mobile |
Returns |
Returns |
CG Return Order List View - Mobile |
Screens and Views That Siebel Sales Uses
The following table lists the predefined screens and views that Siebel Mobile uses for Siebel Sales.
Table Screens and Views That Siebel Sales Uses
Screen | View Name in Client | View Name in Siebel Tools |
---|---|---|
Accounts |
Accounts |
SHCE Account List View - Mobile |
Account Contacts |
SHCE Account Contacts View - Mobile |
|
Account Opportunities |
SHCE Account Opportunity View - Mobile |
|
Account Address |
SHCE Account Address View - Mobile |
|
Account Activities |
SHCE Account Activities View - Mobile |
|
Account Team |
SHCE Account Team View - Mobile |
|
Contacts |
Contacts |
SHCE Sales Contact List View - Mobile |
Contact Opportunities |
SHCE Sales Contact Opportunities View - Mobile |
|
Contact Team |
SHCE Contact Team View - Mobile |
|
Contact Addresses |
SHCE Contact Address View - Mobile |
|
Leads |
Leads |
SHCE Sales Lead List View - Mobile |
Lead Opportunities |
SHCE Sales Lead Opportunities View - Mobile |
|
Opportunities |
Opportunities |
SHCE Opportunities List View - Mobile |
Opportunity Contacts |
SHCE Sales Opportunities Contacts View - Mobile |
|
Opportunity Products |
SHCE Sales Opportunities Products View - Mobile |
|
Opportunity Quotes |
SHCE Sales Opportunities Quotes View - Mobile |
|
Opportunity Activities |
SHCE Sales Opportunities Activities View - Mobile |
|
Opportunity Team |
SHCE Sales Opportunities Opportunity Team View - Mobile |
|
Quotes |
Quotes |
SHCE Quote List View - Mobile |
Quote Items |
SHCE Quote QuoteItem View - Mobile |
|
Quote Orders |
SHCE Quote Order View - Mobile |
|
Quote Team |
SHCE Quote Team View - Mobile |
|
Orders |
Orders |
SHCE Sales Orders List View - Mobile |
Order Items |
SHCE Sales Order line Item View - Mobile |
|
Activities |
Activities |
SHCE Activity List View - Mobile |
Activity Contact |
SHCE Sales Activity Contact Form View - Mobile |
|
Activity Employee |
SHCE Sales Activity Employee Form View - Mobile |
Screens and Views That Siebel Service Uses
The following table lists the predefined screens and views that Siebel Mobile uses for Siebel Service.
Table Screens and Views That Siebel Service Uses
Screen | View Name in Client | View Name in Siebel Tools |
---|---|---|
Activities |
Service Activities |
SHCE Service Activity Home Page View - Mobile |
Activity Contacts |
SHCE Service Activity Contact Form View - Mobile |
|
Activity Recommended Part |
SHCE Service FS Activity Recommended Parts Tools - Mobile |
|
Activity Steps |
SHCE Service Activity FS Steps View - Mobile |
|
Activity Instructions |
SHCE Service Activity FS Instructions List view - Mobile |
|
Activity Part Tracker |
SHCE Service FS Activity Part Movements View - Mobile |
|
Activity Time Tracker |
SHCE Service Activity Time View - Mobile |
|
Activity Expense Tracker |
SHCE Service Activity FS Expense View - Mobile |
|
Activity Invoices |
SHCE Service FS Invoice - Auto Invoice View - Mobile |
|
Service Requests |
Service Requests |
SHCE Service Service Request View - Mobile |
Service Request Orders |
SHCE Service SR Orders View - Mobile |
|
Service Request Activities |
SHCE Service SR Activity View - Mobile |
|
Service Request Invoices |
SHCE Service SR Invoices View - Mobile |
|
Accounts |
Accounts |
SHCE Service Accounts View - Mobile |
Account Contacts |
SHCE Service Account Contacts View - Mobile |
|
Account Service Requests |
SHCE Service Account SRs View - Mobile |
|
Account Assets |
SHCE Service Account Assets View - Mobile |
|
Account Entitlements |
SHCE Service Account Entitlements View - Mobile |
|
Browser |
Part Browser |
SHCE Service My Part Browser View - Mobile |
Part Browser Availability |
SHCE Service Part Browser Availability View - Mobile |
|
Part Browser Substitutes |
SHCE Service Part Browser Substitute View - Mobile |
|
Orders |
Orders |
SHCE Service Orders List View - Mobile |
Order Line Items |
SHCE Service Order line Item View - Mobile |
|
Invoices |
Invoices |
SHCE Service Invoice List View - Mobile |
Invoice Line Items |
SHCE Service Invoice line Item View - Mobile |
|
Assets |
Assets |
SHCE Service Asset List View - Mobile |
Asset Measurements |
SHCE Service Asset Measurement View - Mobile |
|
Asset Warranty |
SHCE Service Asset Warranty View - Mobile |
|
Asset Entitlements |
SHCE Service Asset Entitlements View - Mobile |
|
Asset Readings |
SHCE Service Asset Reading View - Mobile |
Screens and Views That Siebel Pharma Uses
The following table lists the predefined screens and views that Siebel Mobile uses for Siebel Pharma.
Table Screens and Views That Siebel Pharma Uses
Screen | View Name in Client | View Name in Siebel Tools |
---|---|---|
Accounts |
Addresses |
Pharma Account Addresses View - Mobile |
Affiliations |
Pharma Account Affiliations View - Mobile |
|
Calls |
Pharma Account Calls View - Mobile |
|
Contacts |
Pharma Account Contact View - Mobile |
|
Accounts |
Pharma Account List View - Mobile |
|
Relationships |
Pharma Account Relationships View - Mobile |
|
Contacts |
Addresses |
Pharma Contact Address View - Mobile |
Affiliations |
Pharma Contact Affiliations View - Mobile |
|
Best Time |
Pharma Contact Best Contact Times View - Mobile |
|
Calls |
Pharma Contact Call View - Mobile |
|
Contacts |
Pharma Contact List View - Mobile |
|
Relationships |
Pharma Contact Relationships View - Mobile |
|
State Licenses |
Pharma Contact State Licenses View - Mobile |
|
Calls |
Attendees |
SIS HH Pharma Account Call Attendee View - Mobile |
Product Details |
SIS HH Pharma Professional Call Products Detailed View - Mobile |
|
Promotional Items Dropped |
SIS HH Pharma Professional Promotional Items View - Mobile |
|
Samples Dropped |
SIS HH Pharma Professional Samples Dropped View - Mobile |
|
Calls |
LS Pharma Professional Call Execute View - Mobile |
|
(No Title) |
LS Pharma Call Signature Capture View - Mobile |
|
Validation Results |
LS Pharma Call Validation Results View - Mobile |
Controls That Siebel Open UI Uses
This topic describes the controls that Siebel Open UI uses.
Predefined Controls That Siebel Open UI Uses
The following table describes the predefined controls that Siebel Open UI uses.
Table Predefined Controls That Siebel Open UI Uses
Control Name | Description | Where Defined |
---|---|---|
Currency |
Sets the currency. |
controlbuilder.js |
DetailPopup |
Displays more information for a field. |
|
EffDat |
Sets the effective date. |
|
Mvg |
Chooses more than one value. |
|
PhoneCtrl |
Enters a phone number. |
|
Pick |
Chooses a value. |
|
SelectCtrl |
Makes a selection. |
|
List UI |
Displays records in a list. |
jqgridrenderer.js |
btnControl |
Displays a button. |
phyrenderer.js |
chartControl |
Displays a chart. |
|
checkBoxCtrl |
Displays a check box. |
|
comboControl |
Displays a combobox. |
|
fileControl |
Uploads files. |
|
imageControl |
Displays an image. |
|
ink |
Captures a signature in a mobile environment. |
|
label |
Displays a label. |
|
link |
Displays a link that navigates to another view. |
|
mailToControl |
Sends an email message. |
|
plainText |
Displays the contents of a field that is not editable, is not navigable, or does not possess a state. For example, a label. |
|
radioButton |
Displays a radio button. |
|
text |
Displays text. |
|
textArea |
Displays a text area. |
|
urlControl |
Displays an external URL. For example, http://www.google.com. |
|
Map UI |
Displays a map. |
siebelmaprenderer.js |
Tiles UI |
Displays records in a tile. |
Tilescrollcontainer.js |
Other Controls That Siebel Open UI Uses
The following table describes other controls that Siebel Open UI uses. It uses all these controls in the controlbuilder.js file in addition to the files that the Where Defined column lists.
Table Other Controls That Siebel Open UI Uses
Control Name | Description | Where Defined |
---|---|---|
DatePick |
Sets the date. |
datepicker-ext.js |
DateTimePick |
Sets the date and time. |
jquery-ui-timepicker-addon.js |
Calculator |
Displays a calculator. |
jquery.calculator.zip |
RTCeditor |
Enters rich text. |
ckeditor_3.6.3.zip ckeditor-custom.zip |
FileUploader |
Uploads files. |
jquery.fileupload.js |
Browser Script Compatibility
Siebel Open UI supports your existing browser script. However, it is recommended that you customize a presentation model instead of using browser script. It is recommended that you gradually move any logic that you implement through your existing browser script to the presentation model.
You can write a browser script in JavaScript. This script can interact with the Document Object Model (DOM) and with the Siebel Object Model that is available in the Web browser through a shadow object. You can script the behavior of Siebel events and the browser events that the DOM exposes.
Siebel Open UI uses a JavaScript environment that allows you to implement browser scripting. This JavaScript API can dynamically refresh page content and instantly commit customization modifications. If your implementation currently uses browser scripting, then you can refactor JavaScript to move from your existing employee application to Siebel Open UI. Refactoring is the process of modifying the internal structure of existing code without modifying the external behavior of this code. For more information about this JavaScript API, see Application Programming Interface.
Sequence That Siebel Open UI with Custom Browser Script
The following pseudocode describes the sequence that Siebel Open UI uses if your deployment includes custom browser script:
PR calls a PM method or event PM method or event calls an applet proxy method applet proxy method calls Applet_PreInvokeMethod on browser script applet proxy uses Call-Server to run applet method on Siebel Server PM runs Attach Pre Proxy binding for this applet method applet proxy calls Applet_InvokeMethod that resides in browser script PM runs Attach Post Proxy binding for this applet method applet proxy method ends PM method or event ends PR call ends
where:
PR is the physical renderer
PM is the presentation model
For example, the following pseudocode describes the sequence that Siebel Open UI uses if the user clicks New in an applet, and if your deployment includes custom browser script that uses a method named NewRecord:
PR calss PM.OnControlEvent PM.OnControlEvent calls Applet.InvokeMethod Applet.InvokeMethod calls BrowserScript.Applet_PreInvokeMethod Applet.InvokeMethod calls Siebel Server to run NewRecord method on applet PM calls PM.AttachPreProxyExecuteBinding for the NewRecord method Applet.InvokeMethod calls BrowserScript.Applet_InvokeMethod PM calls PM.AttachPostProxyExecuteBinding for the NewRecord method Applet.InvokeMethod ends PM.OnControlEvent ends PR call ends
How Siebel Open UI Handles Custom Client Scripts
Siebel Open UI uses browser script through a JavaScript shadow object, which is a type of object that Siebel Open UI uses for client scripting. All other client objects include a corresponding shadow object, except for the PropertySet. For example, the JSSApplet object includes the JSSAppletShadow shadow object. Siebel Open UI exposes this shadow object to scripting. When Siebel Open UI prepares to display the applet, SWE determines whether or not a browser script is defined for this applet. If this script exists, then Siebel Open UI downloads the browser script file that contains the definition of the shadow object from the Siebel Server to the client.
For example, assume you write a browser script for an applet to handle the PreInvokeMethod event. At run-time, Siebel Open UI creates a JavaScript object that it derives from the JSSAppletShadow object. It runs the PreInvokeMethod event and the event handler of the shadow object before it calls the DoInvokeMethod event. Each shadow object includes a reference to the underlying object. The shadow object sends the call to this underlying object, if necessary. For more information about deriving values, see Deriving Presentation Models, Physical Renderers and Plug-in Wrappers.
How Siebel Open UI Creates Shadow Objects for Applications
Siebel Open UI creates an application shadow object with the following application object during application startup:
Application InvokeMethod ...................... bRet = this.*FirePreInvokeMethod*(methodName, inputPS); ;return from here if the return value of the PreInvokeMethod is CancelOperation ; continue to invokemethod if the return value is ContinueOperation ...................... this.DoInvokeMethod (methodName, args); this.*FireInvokeMethod*(methodName, inputPS);
How Siebel Open UI Creates Shadow Objects for Business Objects
Siebel Open UI uses a business object shadow object only in other shadow objects, such as an application shadow object, applet shadow object, or business component shadow object.
How Siebel Open UI Creates Shadow Objects for Applets, Business
Siebel Open UI does the following to create a shadow object for an applet, business component, or business service:
Siebel Server. Siebel Open UI creates the ObjInfo (SWE_PROP_SHADOW) shadow when it encounters an object that includes a custom script that you write. The server gets the class name and the file name of the shadow from the Siebel Runtime Repository. It packages the class name and file name into the SWE_PROP_SHADOW, and then sends it to client.
Client. Siebel Open UI gets the class name and the file name from SWE_PROP_SHADOW, loads the script file, creates the shadow object with the retrieved class name, and then stores the shadow pointer in the applet object or the business component object.
The process is the same for a business service except Siebel Open UI uses the SWE_PST_SERVICE_SHADOWS shadow.
How Siebel Open UI Creates Shadow Objects for Controls
Siebel Open UI does the following to create a shadow object for a control:
Siebel Server. Siebel Open UI creates the ObjInfo (SWE_PROP_SHADOW) shadow object if it encounters a control that includes a script that you write. It gets the event name of the control from the Siebel Runtime Repository. It packages event names into the SWE_PST_SCRIPTS shadow, and then sends it to client.
Client. Siebel Open UI gets the list of control events from the SWE_PST_SCRIPTS shadow, and then calls these methods from the corresponding predefined methods.
Browser Script Object Types
You can use the following object types in browser script:
Application
Applet
Control
Business object
Business component
Business service property
Event Handlers You Can Use to Handle Predefined Events
The following table describes the event handlers that you can use in browser script to handle a predefined event for a Siebel object type.
Table Event Handlers You Can Use in Browser Script for a Siebel Object Type
Object Type | Event Handler |
---|---|
Application |
You can use the following event handlers:
|
Applet |
You can use the following event handlers:
|
Business component |
You can use the following event handler:
|
Business service |
You can use the following event handlers:
|
Event Handlers You Can Use to Handle Predefined DOM Events
The following table describes the event handlers that you can use in browser script to handle a predefined DOM event for a Siebel control object type.
Table DOM Event Handlers You Can Use in Browser Script for a Siebel Object Type
Object Type | Event Handler |
---|---|
Control in the Siebel Open UI client. |
You can use the following event handlers:
|
Methods You Can Use in Browser Script
The following table describes the methods that you can use in a browser script for each Siebel object type that Oracle’s Siebel Open UI can use.
Table Methods You Can Use in Browser Script for Each Siebel Object Type
Object Type | Method |
---|---|
Applet |
You can use the following methods:
|
Application |
You can use the following methods:
|
Business Component |
You can use the following methods:
|
Business Object |
You can use the following methods:
|
Business Service |
You can use the following methods:
|
Control |
You can use the following methods:
|
Property Set |
You can use the following methods:
|