Bookshelf Home | Contents | Index | PDF |
Configuring Siebel Open UI > Customizing Styles, Applets, Fields, and Controls > Customizing Controls > Customizing the Busy Cursor to Display While a Business Service ExecutesYou can force a busy cursor to appear while a selected business service is executing. The example in this topic describes how to configure this behavior. There is a system preference for Busy Cursor Timeout. For more information, see About Preferences. To display a busy cursor while a Business Service executes
You can use the following code to create a property set for a control that Siebel Open UI displays in the client: ClientCtrlPModel.prototype.UpdateModel = function(psInfo){
For example, the following code creates a variable named ctrlComboInfo for the TestCombo control. It sets the width and height of this control to 200 pixels, and centers it ClientCtrlPModel.prototype.UpdateModel = function(psInfo){ /// Specify the property set for the control SiebelAppFacade.ClientCtrlPModel.superclass.UpdateModel.call( this, psInfo ); ClientCtrlPModel.prototype.UpdateModel = function(psInfo){ /// Specify the property set for the control SiebelAppFacade.ClientCtrlPModel.superclass.UpdateModel.call( this, psInfo ); var ctrlComboInfo = SiebelAppFacade.PresentationModel.GetCtrlTemplate ("TestCombo", "Test Drop Down", consts.get( "SWE_CTRL_COMBOBOX" ), 10 ); ctrlComboInfo.SetPropertyStr(consts.get("SWE_PROP_WIDTH"), "200") ctrlComboInfo.SetPropertyStr(consts.get("SWE_PROP_HEIGHT"), "200") ctrlChkboxInfo.SetPropertyStr(consts.get("SWE_PROP_JUSTIFICATION"), "center"); For more information about control_property and property_attribute, see Properties That You Can Specify for Client-Side Controls. For more information about other control properties that you can specify, such as Sort or Vertical Scroll, see the topic that describes the control Applet Object Type in Siebel Object Types Reference. Table 14 describes the properties that you can specify for controls. The Comparable Applet Control or Description column of this table includes the name of the applet control property that is similar to the SWE control property. If no applet control property is similar to the SWE control property, then this column includes a description. For more information about these applet control properties, see the topic that describes controls in the applet object types section of Siebel Object Types Reference. The following code from the clientctrlpmodel.js file adds example controls to the client. You can examine this code for your reference. To get a copy of this file, see Article ID 1494998.1 on My Oracle Support: if( typeof( SiebelAppFacade.ClientCtrlPModel ) === "undefined" ){ SiebelJS.Namespace( 'SiebelAppFacade.ClientCtrlPModel' ); //Module with its dependencies define("siebel/custom/clientctrlpmodel", [], function () { SiebelAppFacade.ClientCtrlPModel = ( function(){ var consts = SiebelJS.Dependency( "SiebelApp.Constants" ); * Constructor Function - ClientCtrlPModel * Parameter - Be a good citizen. Pass All parameter to superclass. function ClientCtrlPModel(proxy){ SiebelAppFacade.ClientCtrlPModel.superclass.constructor.call( this, proxy); this.AddMethod( "AddClientControl", null, { core : true } ); this.GetClientRecordSet = function( ) { /* Siebel OpenUI uses the ListPresentationModel object to initialize every list applet. So, to maintain the functionality that ListPresentationModel provides, you extend it.*/ SiebelJS.Extend( ClientCtrlPModel, SiebelAppFacade.ListPresentationModel ); ClientCtrlPModel.prototype.Init = function(){ SiebelAppFacade.ClientCtrlPModel.superclass.Init.call( this ); /* Attach Post Handler for LeaveField */ this.AddMethod( "LeaveField", PostLeaveField, { sequence : false, scope : this } ); /* Attach Pre Handler for GetFormattedFieldValue */ this.AddMethod("GetFormattedFieldValue", PreGetFormattedFieldValue, { sequence : true, scope : this } ); /* Attach Handler for Delete Record Notification as well */ this.AttachNotificationHandler( consts.get( "SWE_PROP_BC_NOTI_DELETE_RECORD" ), HandleDeleteNotification ); function PreGetFormattedFieldValue(control, bUseWS, recIndex, returnStructure){ recIndex = this.Get("GetSelection"); var clientObj = this.GetClientRecordSet(); var recordSet=this.Get("GetRawRecordSet"); var id = recordSet[recIndex]["Id"]; value = recordSet[recIndex]["Name"]; if( clientObj[id] && clientObj[id][control.GetName()] ){ value = clientObj[id][control.GetName()]; clientObj[id ][control.GetName()] = value; recordclient[control.GetName()] = value; returnStructure[ "CancelOperation" ] = true; returnStructure[ "ReturnValue" ] = value; function PostLeaveField( control, value, notLeave, returnStructure ){ var clientObj = this.GetClientRecordSet(); var currSel = this.Get( "GetSelection" ); var recordSet=this.Get("GetRawRecordSet"); var id = recordSet[currSel]["Id"]; clientObj[id][control.GetName()] = returnStructure[ "ReturnValue" ] ; function HandleDeleteNotification(propSet){ var activeRow = propSet.GetProperty( consts.get( "SWE_PROP_BC_NOTI_ACTIVE_ROW" ) ); if( activeRow === this.Get( "GetSelection" ) ){ var delObj = this.GetClientRecordSet(); ClientCtrlPModel.prototype.UpdateModel = function(psInfo){ /// PS Attribute info for Edit box SiebelAppFacade.ClientCtrlPModel.superclass.UpdateModel.call( this, psInfo ); var ctrlTxtInfo = SiebelAppFacade.PresentationModel.GetCtrlTemplate ("TestEdit", "Test Edit", consts.get( "SWE_CTRL_TEXTAREA" ), 1); this.ExecuteMethod( "AddClientControl", ctrlTxtInfo ); return "SiebelAppFacade.ClientCtrlPModel"; Siebel Open UI uses a client-side control implementation to display a Multi-Select check box column in list applets. While this is primarily intended for touch-based devices where multiple selection of rows is not possible using the Shift + Click or Ctrl + Click, it can also be configured for desktop browsers. The Multi Row Select Checkbox Display user property controls the behavior and availability of the client-side multi-select check boxes. The property can have the following values:
When the user property is not configured for an applet, the default behavior is to show the Multi-Select column on touch devices and hide the column on non-touch devices. Administrators can use the user property to override this behavior on a per-list applet basis. To configure a multi-select check box for a list applet
|
Configuring Siebel Open UI | Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Legal Notices. | |