Showing posts with label open UI. Show all posts
Showing posts with label open UI. Show all posts

Sunday, 24 March 2013

Siebel Business Applications Release 8.1.1.10

Oracle just released siebel version 8.1.1.10 . You can download this from edelivery cloud.


Hope that this version will be a solution for all issues that we faced in previous version (8.1.1.9)

Thursday, 17 January 2013

Coding Physical Model (Part -2 )



Now let’s take a look in to the code( that posted in lastpost) one by one.  
I have given three color for code. Red indicated that it is mandatory. Black indicates comment and green indicates custom code.


Physical Model
/*---------------------------Coding starts------------------------*/
if( typeof( SiebelAppFacade.ValidatePM ) === "undefined" ){
 /* No Need to worry about this line. This line make sure that the same definition is not yet defined. */
                SiebelJS.Namespace( "SiebelAppFacade.ValidatePM" );
/* SiebelJS.Namespace( "SiebelAppFacade.ValidatePM" ); This will create new name space called ValidatePM. */
                SiebelApp.S_App.RegisterConstructorAgainstKey("ValidatePModel","SiebelAppFacade.ValidatePM" );
/*Above code will register our constructor It s format is
RegisterConstructorAgainstKey (key, constructor)”. This is very important because we need this key to map our customized file in many places.
*/
                SiebelAppFacade.ValidatePM = ( function(){
                /*we just started to define our class. Its name is ValidatePM */
                                function ValidatePM( proxy ){
                                                SiebelAppFacade.ValidatePM.superclass.constructor.call( this, proxy);
                                }
                /*Calling super class*/
                                SiebelJS.Extend( ValidatePM, SiebelAppFacade.PresentationModel );
                /* Above line add  our class to frame work, now our class can access many prebuilt functions. */               
                                ValidatePM.prototype.Init = function(){
                                                /*Init method will initialize, we can initialize properties, methods etc.. */
                                                SiebelAppFacade.ValidatePM.superclass.Init.call( this );
                                                this.AddProperty( "isEmailSet", "" );       
                                                this.AddMethod( "FieldChange",  OnFieldChange, { sequence : false, scope: this } );
                                };
                                
                                function OnFieldChange( control, value ){
                                                if( control.GetName() === "EmailAddress" ){
                                                                this.SetProperty( "isEmailSet", ( value ? true: false ) );
                                                }
                                }
                                return ValidatePM;
                }());

}

/*-------------------------------Coding Ends--------------------------------------*/

 
Now lets take a look in to Init function.


ValidatePM.prototype.Init = function(){
                        SiebelAppFacade.ValidatePM.superclass.Init.call( this );
                         this.AddProperty( "isEmailSet", "" );                                                             this.AddMethod( "FieldChange",  OnFieldChange, { sequence : false, scope: this } );
                                };
Here  this.AddProperty( "isEmailSet", "" );       created a property called  isEmailSet” and initialized this value as null. Now I initialized a method this.AddMethod( "FieldChange",  OnFieldChange, { sequence : false, scope: this } );     read more


Now lets discuss our custom method
function OnFieldChange( control, value ){
                    if( control.GetName() === "EmailAddress" ){
                               this.SetProperty( "isEmailSet", ( value ? true: false ) );
                         }
 }

Every field change will trigger this method. And this will check for changed  control name. In our case, we are listening to changes in email field. So if email address has any  change, then we will set isEmailset to true.
This change will trigger our PhysicalRender file. Because in physical render file we will listen this property (That we will discuss later).  So any change in this property (isEmailSet) will trigger our custom methods in physical render file.


Tuesday, 16 October 2012

Learn how to customize Open UI

We can easily customize open UI to beautiful website with heavy data that can be loaded in any browsers.
Since Open UI support jQuery as well as HTML 5 we can easily develop mobile application also with out approaching any mobile web developer. What are the prerequisites for studying these things?

 -> HTML
-> CSS
-> JavaScript
->jQuery (Javascript Library)
->HTML 5 (Optional)

If you have some HTML/ Javascript background you can easily learn jQuery & HTML 5. Else you need to study the basics of HTML/CSS/Javascript

You can learn it from here 1. W3Schools
                                          Learn HTML
                                          Learn CSS
                                          Learn JavaScript
                                          Learn jQuery
                                          Learn HTML 5
                                      2. TiZag
  You can also find these tutorials from this site.

After you learned all this things / or in the next post let's learn about Ajax
Why old days Siebel supports IE only etc...

Monday, 1 October 2012

ActiveX UI Architecture Vs OpenUI Architecture

The Image shown below revels how Open UI is going to rock. Open UI completely avoids the ActiveX monopoly and using latest trends in web technology like jQuery, Ajax etc..


Wednesday, 26 September 2012

Siebel Open UI

One of the main drawback of siebel is its UI. It is very disappointing one. Siebel supports High interactivity (HI) as well as Standard interactivity. (SI). HI is used by employee based application like financial, call center etc. SI is meant of portal applications like eEvents. Both UIs are not attractive. HI only works on internet explorer. HI application needs to send and receive data from server asynchronously. Years ago, no browser except IE has provided this feature.  IE achieved it through ActiveX components, and Siebel works fine in IE.

After the boom of Ajax & jQuery; asynchronous server communication is no more a headache. So it is high time to change UI standards & browser dependency.   Open UI uses main web standards like

  • HTML 4.01 Standard (HTML 5 optional)
    • Since It support HTML 5. We can have canvas tag. Using sibel UI we can even animate :)
  • CSS level 2.1 (CSS level 3.0 optional)
    • we can use many CSS frameworks so we can change overall color and theme.
  • JavaScript version 1.5 
    • this help us to use powerful java script libraries like jQuery, Moo tools etc
It supports
Chrome, Mozilla, IE, Safari etc..