In addition to @lex’ recent post commenting on the way Oracle addresses “fears, uncertainties and doubts” spread by Oracle competition, Oracle implemented as well the going-forward strategy to extend premier support. Premier support has been extended until November 2017 (+1 year). Since Oracle adopted the Innovation Pack release approach for Siebel almost three years back, the premier support policy for Siebel, as part of Oracle Lifetime Support for applications are extended on the same pace.
What does not change are the “general” rules for eligibility for bug fixes to be considered as part of a patch set, for that please refer to “Siebel CRM Patching Policy (Doc ID 1313941.1)“ on MOS. I quoted “general” because (also) to these rules exceptions could apply under certain circumstances where there is a compelling business case.
This the the teaser…
This post actually can be considered a workaround. On the other hand it provides end-user functionality. As most of you will know IP13 comes with the configurable option for “Collapsible Applets“. Just adding two Applet User Properties does the work to make an applet to appear either expanded (default) or collapsed. Though this is very nice, collapsing the applet will only happen once most of the OpenUI code has completed execution. In that sense if you would collapse all your applets in any view, it would take almost the same amount of time to render the view.
Now, I wanted to figure out an option which would reduce rendering time by showing collapsed applets. Why? Because large views in Siebel Open UI tend to require linear more time to render (see my previous post). And we do have many existing customers which have build such legacy views in the past which would render just fine in High Interactivity, but are less acceptable in Open UI.
What I came up with is the option to use traditional toggle applets. For my noticeable expensive view from my previous post I created a whole bunch of “dummy” applets. Just empty shell form applet with no controls exposed. The nice behavior here is that rendering the dummy toggle applets obviously would come at considerable less execution time.
One “dummy” applet for any applet I want to expose. Why one for each? Because the hard-coded configuration of the “Toggle” attribute on the applet. But since it pertains here just a bare-essential applet that is not such a big deal.
So far so good. But traditional toggle applets require the clumsy use of a combobox to toggle between applets. Perfectly fine if you have a whole list of potential toggles. But in this case I want to present the user with a more user-friendly “double-click” to toggle from the dummy applet to the actual applet.
After inspecting (or say: reverse-engineering) a bit the OOTB code concepts, I found a way to actually invoke the Toggle method within a physical renderer. It took some time to get this particular part of the solution to work 😉
I put the code within tine BindEvents funcion of my custom “togglepr.js”. After reverse-engineering other OOTB code – I found that using the “OnControlEvent” method on the Presentation Model would be best suited. The nice thing here is that BindEvents will pass the PM context along, which you can access using the data.ctx object. The ctx object will get you the presentation model.
Next invoking the Toggle should be best-practice done using the constant defined by Siebel for this method “PHYEVENT_INVOKE_TOGGLE”. Finally we need to pass the sequence of the applet we would like to toggle to. In our case “1”.
I decided only to implement uni-directionally toggling (from dummy -> actual applet, but not back to the dummy applet). That keeps things easy.
Next I wanted to have clean and crisp dummy applets. So no “Toggle” combobox, no “Menu” and now Row Counter.
Removing the toggle combobox and the menu was easy.
Removing the row-counter caused more troubles. It appears the row-counter is inserted at a very late stage. After the ShowUI of my custom physical renderer completed execution.
Using setTimeout brought the solution. This function can be found on several location in the Open UI standard code, and is standard JScript function. You pass it two arguments, a function and a sleep time. Functionally, if you provide a sleep time of “0”, it will execute after all other JScript code has completed.
Because I also did not want the Toggle combobox on the actual applets, I needed to add some further logic using ClientPMUserProperties. I created two:
The “BareEssentials” property will remove the complete div for all applet content. The “HideToggle” property will remove the Toggle combobox.
Just for sake of the POC I added these two to the OOTB pmodel.js. This is obviously not a recommended practice for production. But it saved me time creating a custom presentation model extension.
The end result is that the initial view looks as such:
By double-clicking on any of the headers, the applet will toggle. Double-clicking on e.g. “ToggleCAC” will render the view as such. And this will execute very fast too, as it only partially refreshes the view instead of rendering the complete view.
You can grab the complete physical renderer here.
Siebel IP2013 Patchset 11 got delayed a bit but has been released.
There are a couple of noticeable fixes in Patchset 11:
IN LIST APPLETS, AUTO SELECT FUNCTIONALITY DOES NOT WORK
AUTO SELECT DOES NOT APPEAR WHEN USERS FIRST TYPE INTO A DROP-DOWN LIST BOX
This feature bring back the static picklist functionality with the HI client. It was one issue I had to chase for one of my customers. My customer verified the functionality on a beta release of the fix and finally it got merged into patchset 11. The fix is all about auto-select / type-forward functionality to work consistent in a number of different scenarios. In previous releases it worked either partially or inconsistently. Having this feature will be a sigh of relief for many customers.
This is one other fix to note. All the JScript files have been overhauled. Hard to belief but by changing most “for” loops into “while-do” loops (and there are plenty, plenty in the OUI framework) we realized an improvement of JScript processing of about 5-35% pretty much regardless the browser used. Especially in views with more and larger list applets, the rendering time has been reduced significantly. The 5-35% has been objectively measured on a customer customized application for a number of their key views.
Below the complete list with fixes:
|Issue Addressed||Bug ID||Product Area|
|CFG UPDATECONFIGURATOR WS DOES NOT HANDLE CONFLICTS WHEN THERE ARE NO CONSTRAINS IN PRODUCT STRUCTURE||19004272||Siebel Apps – Customer Order Management|
|AFTER PROMOTION UPGRADE AND VALIDATION A CONSTRAINT ERROR OCCURS||19143021||Siebel Apps – Customer Order Management|
|ROW HEADER NOT READ IN PRODUCT PICK APPLET||19566994|
|ERRORS OCCUR WHEN MERGING MORE THAN 800 PRODUCTS AS PART OF A STRUCTURE||19219330||Siebel Apps – Customer Order Management|
|USER PROPERTIES DEFINED AGAINST CHILD PROPERTIES ARE NOT IMPORTED IF IDS DO NOT MATCH||18759094||Siebel Apps – Customer Order Management|
|MERGING PROMOTIONS DOES NOT WORK IF USERS SELECT MORE THAN ONE ASSET FOR EACH PROMOTION||18938404||Siebel Apps – Customer Order Management|
|PRODUCTS ARE NOT DISPLAYED CORRECTLY IN EDIT PROMOTION VIEW WHEN HIDDEN FLAG IS USED FOR COMPONENTS||19165055||Siebel Apps – Customer Order Management|
|DURING PROMOTION UPGRADE, DEFAULT PRODUCTS ARE NOT ADDED||18506334||Siebel Apps – Customer Order Management|
|THE SWIPROMOTIONUPSERT WEB SERVICE DOES NOT DELETE RECORDS IN THE RELATIONSHIP DOMAIN APPLET||18799396||Siebel Apps – Customer Order Management|
|EDIT PROMOTION UI RENDERS INCORRECTLY IN SALES ORDER AND QUOTE SCREENS||19393601||Siebel Apps-Customer Order Management|
|SERVICE REGION NAME DOES NOT DISPLAY IN OPEN UI DISPATCH BOARD||19048142||Siebel Apps – Field Service|
|MULTIPLE WAVE LOAD ASSOCIATES CONTACTS INCORRECTLY||18282071||Siebel Apps – Marketing|
|CK EDITOR DISPLAYS EXTRA VALUE WHEN USED IN WEB TREATMENT||19464162||Siebel Apps – Marketing|
|SIEBEL LEAD IMPORT – EXACT MATCH FUNCTIONALITY DOES NOT WORK||18792760||Siebel Apps – Marketing|
|WHEN LIST IMPORT FAILS, ERRORS NOT REFLECTED IN EXCEPTION LIST APPLET||19277759||Siebel Apps – Marketing|
|PARTNERPORTAL VIRTUAL DIRECTORY MISSING IN NEW_VIRDIRS.BAT FILE UNDER THE EAPPWEB FOLDER||19354048||Siebel Apps – PRM|
|IN FORECAST DETAIL, MODIFIED RECORD FOCUS IS LOST WHEN SAVING THE RECORD||18839832||Siebel Apps – Sales|
|IN THE ARABIC APPLICATION, APPLICATION OBJECT MANAGER CRASHES WHILE CHECKING THE AUDIT VERSION AND A DATABASE ERROR OCCURS||19044162||Siebel Communications & Energy|
|SPORADICALLY OM CRASHES WHEN A BLANK CTI DIALOG BOX APPEARS (OPENUI)||19047365||Siebel Core – Common Components|
|AGENTS RECEIVE A CHAT, THE COMMUNICATIONS CLIENT BUSINESS SERVICE LEAKS||19227628||Siebel Core – Common Components|
|WITH QF0001119 REPLY BUTTONS ARE ENABLED BUT NO CHANGE IN STATUS OF FAX ACTIVITY||19032586||Siebel Core – Common Components|
|SIEBEL CALENDARS ARE NOT SYNCED TO OUTLOOK CALENDARS||18799226||Siebel Core – Common Components|
|IN OPEN UI, CUSTOM ERROR MESSAGES DO NOT DISPLAY AFTER FIND QUERIES||18459794||Siebel Core – Search & Knowledge Management|
|OPEN UI: FIND FIELDS DO NOT DISPLAY WHEN USERS SELECT A BUSINESS COMPONENT||19393290||Siebel Core – Search & Knowledge Management|
|CLIB FUNCTIONS ARE NOT WORKING IN OPEN UI||19263783||Siebel Core – Server BizLogic Script|
|IN SRVRCFG.EXE, THE CLONE UTILILTY CRASHES WITH LARGE PARAMETER VALUES (>512)||18110514||Siebel Core – Server Infrastructure|
|SERVERMANAGER FAILS TO CONNECT TO THE GATEWAY WHEN THE GATEWAY IS UNDER HIGH LOAD||19045634||Siebel Core – Server Infrastructure|
|OPEN UI: THE XML IMPORT/FILE IMPORT DIALOG BOX DOES NOT RENDER PROPERLY||18058857||Siebel Core – Server OM Frwks|
|DURING MEMBER MERGE, AN ERROR OCCURS WHEN SURVIVOR TIER START DATE IS GREATER THAN VICTIM TIER START DATE||19057855||Siebel Loyalty|
|CLICKING THE EXPIRE POINTS BUTTON DOES NOT EXPIRE POINTS WHEN EXPIRATION DATE IS IN THE PAST||19243434||Siebel Loyalty|
|DRILLDOWN DOES NOT WORK CONSISTENTLY FOR SIEBEL MOBILE OPEN UI TILE APPLETS||19162675||Siebel Mobile Applications|
|IN PATCHSET 7, WHEN USERS SELECT A RECORD IN THE ASSOCIATE APPLET, THE SEARCH DIALOG BOX APPEARS||18704628||Siebel Mobile Applications|
|CERTAIN DEFAULT BUSINESS COMPONENT FIELD NAMES CANNOT BE USED ON MOBILE WEBDB||18796441||Siebel Mobile Applications|
|ATTENDEES DIALOG BOX DOES NOT RESIZE WHEN THERE IS MORE THAN ONE CONTACT||18893928||Siebel Mobile Applications|
|RETRIEVING DATA DIALOG BOX DOES NOT DISAPPEAR AFTER SERACH RESULT IS RETURNED||19259922||Siebel Mobile Applications|
|UPDATING A REQUIRED FIELD TO NULL DOES NOT THROW A VALIDATION ERROR||19303013||Siebel Mobile Applications|
|CALLS ARE NOT DISPLAYED IN ORDER BY CALL START TIME||19463587||Siebel Mobile Applications|
|IN PHARMA APPLICATION, ACCOUNT RECORDS ARE NOT DISPLAYED IN ALPHABETIC SEQUENCE||19391893||Siebel Mobile Applications|
|UPSYNC ERROR: ‘PHARMA PROFESSIONAL CALL – MOBILE.DISPLAY’ IS A REQUIRED FIELD.||19428249||Siebel Mobile Applications|
|CALL ATTENDEES SHOULD NOT DISPLAY IN CALENDAR||19224524||Siebel Mobile Applications|
|WITHIN THE ACTIVITY SERVICE REQUESTS SCREEN, THE ORDERS CHILD APPLET DOES NOT DISPLAY ORDER NUMBERS||18826058||Siebel Mobile Applications|
|ERROR MESSAGE OCCURS WHEN USERS CLICK OK IN BOOKING CONFLICT DIALOG BOX||18908322||Siebel Reports|
|AFTER A ROOM BLOCK IS ADDED, CLICKING THE REFRESH BUTTON YIELDS AN ERROR MESSAGE||19120586||Siebel Travel & Transportation|
|RESPONSE TIME IS SLOW WHEN DRILLING DOWN ON DATE OR ROOM BLOCK FIELD IN ROOM BLOCK LINE ITEMS VIEW||19080020||Siebel Travel & Transportation|
|SPECIAL CHARACTERS DO NOT WORK ON THE PASSWORDTEXT OF SESSION MANAGEMENT HEADER||18957590||Siebel UI Framework|
|AFTER DBINIT, REEXTRACT, AND THEN REDBINIT, FIREFOX LAUNCHES MOBILE WEB CLIENT IN TWO TABS||18989865||Siebel UI Framework|
|WIN 8 PATCH UPGRADE DOES NOT OCCUR FOR EXECUTABLE CLIENT PATCH KIT||19207581||Siebel UI Framework|
|DEFAULT VALUE IS DISPLAYED IN ROOM BLOCK NUMBERS WHEN ROOM NUMBERS ARE ADDED||19128803||Siebel UI Framework|
|REFRESHING THE BROWSER CREATES THE TOOLBAR ITEMS MULTIPLE TIMES||18787487||Siebel UI Framework|
|IN OPEN UI, THE EMAIL SPELL CHECK FEATURE DOES NOT WORK FOR HTML EMAILS||18777586||Siebel UI Framework|
|IN OPEN UI MODE, THE HORIZONTAL SCROLL BAR IS PARTIALLY HIDDEN||18810677||Siebel UI Framework|
|IN OPEN UI MODE, STEPS ARE MISSING IN THE TASK PANE IN THE TASK-BASED UI||18647868||Siebel UI Framework|
|ASSISTIVE TECHNOLOGY DOES NOT CONSISTENTLY ANNOUNCE THAT FIELDS ARE LINKS||18475831||Siebel UI Framework|
|WHEN USERS TAB THROUGH A LIST APPLET ROW, ASSISTIVE TECHNOLOGY DOES NOT ANNOUNCE COLUMN TITLE CELLS THAT ARE NOT EDITABLE||18353142||Siebel UI Framework|
|AUTO SELECT DOES NOT APPEAR WHEN USERS FIRST TYPE INTO A DROP-DOWN LIST BOX||18677940||Siebel UI Framework|
|WITHIN ADMINISTRATION – GROUP > POSITIONS, THE SCROLLBAR ARROW DISAPPEARS AFTER USERS NAVIGATE IN THE APPLICATION||18906854||Siebel UI Framework|
|IN LIST APPLETS, AUTO SELECT FUNCTIONALITY DOES NOT WORK||18603044||Siebel UI Framework|
|WITHIN ADMINISTRATION – GROUP > POSITIONS, THE VERTICAL SCROLL BAR IS MISSING||18696883||Siebel UI Framework|