Presentation Model Methods in Siebel Open UI (Training – Part 8)

You already know how to configure Presentation Model in Siebel Open UI. In this module we will discuss few frequently used Presentation Model Methods in Siebel Open UI that every Open UI developer should know.

Frequently used Presentation Model methods in Siebel Open UI:

  1. Define
  2. Init
  3. AddProperty
  4. SetProperty
  5. Get
  6. ExecuteMethod
  7. AddMethod

1. Define Method:

Siebel Open UI uses ‘Define’ method to locate the Presentation Model (PM) or Physical Renderer (PR) JS file and other dependent files. It must have a return statement like return “SiebelAppFacade.customclassname”;

Syntax: 

define (Module_name,List_of_dependencies,Function);

  • Module_name is the Presentation Model file name with file path but without file extension. 
  • List_of_dependencies is an array of all dependent modules required to execute PM JS file. If there is no dependency, keep it blank. 
  • Function identifies the function name and returns an object. 

Example:

// Define the presentation model file location and other dependencies if any

define(“siebel/custom/ShowHideFieldsPM”, [], function () {
— Write the code here—
return “SiebelAppFacade.ShowHideFieldsPM”;
});

2. Init Method:

Init stands for Initialization. It is used to initialize other methods or objects like AddProperty, AddMethod.

Syntax: Init()

Example:

ShowHideFieldsPM.prototype.Init = function(){
SiebelAppFacade.ShowHideFieldsPM.superclass.Init.call( this );
this.AddProperty(“ShowHideStatus”, “” );
this.AddMethod( “ShowSelection”, SelectionChange, { sequence : false, scope : this } );
};

3. AddProperty Method:

AddProperty method is used to add a property in Presentation Model. You can use ‘Get’ method to fetch the value from the property. AddProperty method returns ‘True’ if the property is created successfully otherwise ‘False’. A subsequent call to this method with the same property name will overwrite the previous value.

Syntax:

this.AddProperty(“propertyName”, propertyValue);

Example:

this.AddProperty(“ShowHideflag”, False);
SiebelJS.Log(this.Get(“ShowHideflag”));

4. SetProperty Method:

SetProperty is used to set the property value, created by AddProperty method. It returns ‘True’ if the property value is set successfully otherwise ‘False’.

Syntax:

SetProperty(property_name, property_value);

Example

this.SetProperty( “ShowHideflag “, true);

5. Get Method:

Get method returns the property value.

Syntax: Get()

Example:

this.AddProperty(“ShowHideflag”, False);
SiebelJS.Log(this.Get(“ShowHideflag”));

6. AddMethod Method:

AddMethod adds vanilla or custom methods to the Presentation Model. You can use ExecuteMethod to run the method that AddMethod adds. It returns ‘True’ if the method is added successfully, otherwise ‘False’.

Syntax:

AddMethod(“MethodName”, MethodDef(argument1, argunemtn2,… argument n), {MethodConfig : value});

   MethodName is the name of the method that Siebel Open UI adds to the Presentation Model

   MethodDef is an argument that helps to call another method

   Argument1/2..N are the arguments that AddMethod passes to the method defined in MethodDef

   MethodConfig can have below values

      ♦ Sequence:

               – Set it to ‘True’ if you want Siebel Open UI to call MethodName before the method that already exists in PM.

               – False if you want Siebel Open UI to call MethodName after it calls the method that already exists in PM.

               – Default value is False.

      ♦ Override:

               – If ‘True’, Siebel Open UI does not call the method that already exists in PM.

               – If ‘False’, Siebel Open UI calls the method that already exist in PM.

      ♦ Scope:

               – It defines the scope of the MethodDef.

Example:

this.AddMethod( “FieldChange”,  OnFieldChange, { sequence : false, scope: this } );

** You can not override any method that already exists in vanilla application by using Override as True.

7. ExecuteMethod Method:

ExecuteMethod is used to execute vanilla and custom methods in PM. ExecuteMethod returns a value from the method if it exists otherwise it returns ‘Undefined’.

Syntax:

this.GetPM().ExecuteMethod(“vanilla/custom method name”, arguments);

Sometimes it is written as this.ExecuteMethod(“vanilla/custom method_name”, arguments);

Example:

var controls = this.Get( “GetControls” );
var control = controls[ “Status” ];
var value = this.ExecuteMethod( “GetFieldValue”, control );

** If the method, specified in ExecuteMethod, is a custom method, then make sure AddMethod is used to add the method before calling ExecuteMethod.

Few less frequently used Presentation Model Methods:

  1. AttachEventHandler Method
  2. AttachNotificationHandler Method
  3. AddComponentCommunication Method
  4. AttachPostProxyExecuteBinding Method
  5. AttachPreProxyExecuteBinding Method
  6. OnControlEvent Method
  7. Setup Method

These are not highly used Presentation Model methods. If you want to know any of these methods, please let us know.

This ends our module on Presentation Model Methods in Siebel Open UI.

If you have any question, please feel free to comment below.

Keep in touch, follow TechOneStop on Facebook / Twitter / LinkedIn / Goolge+.

<< Module 7: Debugging in Siebel Open UI                     Module 9: Physical Renderer Methods >>

Watch our YouTube Video on Presentation Model Configuration:

5 Best Cloud Based Free CRM Software For Small And Medium Business

5 Best Cloud Based Free CRM Software For Small And Medium BusinessA company without CRM is like fish out of water – continuous growing competition, high customer attrition rate and frequent change in customers’ buying trends are most common challenges for an organization to sustain and grow further.
CRM is the only solution for an organization to nurture existing contacts properly and capture new customers. But it is really tough for a small or medium organization to spend a good amount to setup CRM application.

So what is the best solution?

Best solution is, choose free open source CRM to solve these business challenges. But there are lots of free open source CRM software with rich functionalities and number of such free CRM applications is continuously growing which is bit confusing for an organization to choose the right CRM for business. You could read our article on how to choose the best CRM for your organization.

Here we will discuss best 5 cloud based free CRM applications which could be life saver for a small or medium organization.

There are many open source CRM applications available in the market but not all of them are cloud based free CRM, for example Vtiger is free when it is installed locally but cloud version is paid. But we know, time and infrastructure, both matter for an organization, especially if it is SME. In case of cloud based CRM software, an enterprise does not need to spend any money for infrastructure, also application customization is real quick and easy task. There are many other benefits for cloud based CRM over on premise CRM but these are the main two reasons for which we suggest a SME to go for cloud based free CRM software.

Top 5 Cloud Based Free CRM :

Bitrix24

free open source CRMMost of the CRM applications with free basic plan allow only couple of users to have free account but Bitrix24 allows 12 users to create free account with 5 GB space. That is likely enough for a small or medium business to get start.

Free Bitrix24 account comes with unbelievable features–
– CRM includes almost all major business requirements like sales automation, contact management, quote management, business rules automation, invoicing, reports and sales funnel, direct email or call to clients from dashboard, integration with third party applications. It has mobile app for iOS and android to browse client records, create quotes, verify product catalog.
– It provides inter company social networking with ‘Like’ button, instant chat facility, computer telephony integration, photo and video sharing capability. It also includes employee motivational tools like badges, awards to show appreciation towards co-workers.
– It provides 5 GB free space for online file storage and document collaboration. There is no other CRM right now that provides 5 GB space with free plan. Also users can create or edit documents in Bitirx24 without any office suite.
– It has built in task and project management capability as well. Task can be created for oneself or assigned to colleagues, task report helps upper management to understand how much time an employee spends on a particular task.
Overall Bitrix24 is an application that helps an organization to run from one place.

Free account limitations:
12 users
5 GB storage
No record limit

Zoho CRM

cloud based free CRM software

Zoho is well-known CRM application with great features. It has web apps for almost everything that a SME needs like CRM, email integration, file sharing, social networking. It’s free edition allows an organization to create 10 free accounts with 1 GB space and limited functionalities but all these are sufficient for a small or medium company to generate leads, manage contacts and increase revenue.


Here are the few important features that Zoho CRM free edition provides:
– CRM includes almost all important features that an enterprise needs like sales force automation, marketing automation, lead management, contact management, quote management, live chat and email, tasks and activities handling, business rules and workflow management.
– It provides 1 GB space to an organization as document library. It can be used for file/folder sharing and documents attachment with file versioning capability.
– Zoho can be easily integrated with social networking sites like Twitter / Facebook or other Zoho apps like Zoho Projects, Zoho SalesIQ. It can be synchronized with various Google apps as well like Google calendar, Google contacts. Also it provides web to lead and web to contact form facilities to capture leads or contacts in web forms.

Free account limitations:
10 Users
1 GB space
No record limit

Insightly

free CRMInsightly CRM free edition grants 2 free accounts per organization with 200 MB storage. It includes almost all basic CRM features like Contact Management, Project Management, Task/Event/Calendar Management, Opportunity Management, Social Networking, Reporting, Email Integration. It provides the capability to import contacts from Gmail or Outlook or a simple spreadsheet.

Main drawbacks of Insightly CRM Free plan – it limits to store only 2500 records and allows to create 8 custom fields. Also its free plan does not include email marketing. But if these limitations are acceptable and want a simple way to start CRM, it is worth to give a try.

Free account limitations:
2 Free users
2500 records
200 MB free storage

Capsule

CRM Free

Capsule CRM is another lightweight and user friendly CRM application. Its free version provides very basic CRM functionalities with 2 free user accounts and 10 MB file storage. Beside CRM functionalities like contact management, opportunity management or task management, it has an unique feature called List. List uses filtering criteria based upon any possible options in CRM like name, updated on, type or status to group similar kind of contacts or opportunities or cases. With CRM object navigation bar at the top, there is a text link bar as well to bookmark contacts, cases or opportunities that you have accessed recently. Though it has good integration capability with other third party applications, free version has very limited integration features. Another drawback with free plan is that it allows to store only 250 contacts with unlimited opportunities and unlimited cases.

Free account limitations:
2 free users
10 MB storage
250 contacts with unlimited opportunities and cases


Really Simple Systems

cloud based free CRMReally Simple Systems CRM is really simple application with great functionalities like Sales automation, Contact Management, Opportunity Management, Task and Activities handling, Reporting. It’s free edition allows 2 users to have free account and 100 MB file storage. It also includes integration with KashFlow and SageOne accounting applications, custom reports, custom fields on all objects.
Drawbacks: Free plan supports only sales automation, not marketing automation or customer service management. Also it limits to create only 100 accounts with unlimited contacts, tasks and opportunities.

Free account limitations:
2 Free users
100 MB storage
100 accounts with unlimited contacts, activities and opportunities

Conclusion

There are many other cloud based free CRM applications as well like Podio, Clevertim, Raynet, Highrise, FreeCRM. But free edition of these CRM applications have more limited features like Podio does not include user management facility, Clevertim has no file storage and FreeCRM is free for 1 year only.
CRM market is ever changing and highly competitive place, so it is really tough to tell which one is best cloud based FREE CRM. But we can easily decide best CRM application for an organization.

Though we have listed down 5 cloud based free CRM applications here, we highly recommend an organization to try Bitrix24 and Zoho CRM.
If you want to know which FREE CRM suites for your business most, please contact us to get free quote.

Did we miss to mention any other great free CRM application here? Please write it below.

To know more, follow ‘TechOneStop on Facebook / Twitter / LinkedIn / Goolge+ or join our website as follower.
Sharing is caring, so please share this article with your friends.

<< How to choose best CRM software for your business

Error: Invoking service ‘Context Service’, method ‘GetRowSetData’ at step ‘Get Context Row Set’ (SBL-BPR-00162) (SBL-DAT-00215)”.

Have you seen below error message during Siebel configuration?

“Error invoking service ‘Context Service’, method ‘GetRowSetData’ at step ‘Get Context Row Set’.(SBL-BPR-00162)”.

Sometime it is followed by another error message – “This operation is not allowed when there are no records displayed. Please execute a query that returns at least one record or add a new record.(SBL-DAT-00215)”.

Recently one of our readers dropped us a mail asking solution to fix this issue.

This error usually comes up when we are working on Signals or variable maps or pricing workflows in Siebel. There could be many reasons behind this error but most common mistakes are –

1) PSP driver Workflow is not active
– Verify that the PSP driver Workflow is in active status. If not, activate the workflow, restart server and verify it once again, issue should be resolved.

2) Business components are not based upon class CSSBCOrderMgmtBase, CSSBCPecBase and their subclasses
– Signals can be invoked only for that business component if it’s base class is either CSSBCOrderMgmtBase or CSSBCPecBase or their sub classes. Mainly signals call be called from all order management related objects like Quote , Order, Product BCs. If we try to invoke signal from any other business components which are not based upon these classes, Siebel will throw this error.

Please share your experience if you have faced this issue for any other reason or these two solutions were not sufficient to fix this error message.

To know more, follow ‘TechOneStop on Facebook / Twitter / LinkedIn / Goolge+ or join our website as follower.
Sharing is caring, so please share this article with your friends.

<< SBL-EAI-08032: WSDL cannot be generated               SBL-SCB-00014 / SBL-NET-01023 >>

Policy Breach Notice: We are no longer detecting PII being passed to Google from the account

Recently one of our readers has received an email from Google AdSense Publishers with subject line ‘Policy Breach Notice‘.

As email didn’t give him enough information to clear his doubt, he dropped us email asking more information. He also mentioned that he didn’t receive any prior email regarding policy breach violation.

Email looks like below:

Dear Publisher,

We have now verified that we are no longer detecting PII being passed to Google from the account(s) under your control.

Thank you for helping to resolve this matter.

Regards,
The Google Policy Team

After our small research, we got to know that this problem is not with our particular reader only. Many of our readers have received the same email.

What is PII and how it is related to Policy Breach Notice?

PII stands for Personally Identifiable Information. To protect your account, Google AdSense policies mandate publishers not to pass any data to Google that may be recognized as Personally Identifiable Information. If any publisher does so, Google sends a notification email with subject line ‘Policy Breach Notice’ first to fix the issue. Once the affected publisher fixes the PII issue, Google sends the above email.

As you didn’t not receive any prior email to fix the PII issue, we think Google AdSense has sent this email by mistake.

However we have asked the question to Google also to give more information. If we receive any update, we will share it with you all.

So don’t worry and keep blogging !

*** Updated on 6th March, 2015: We told you that the mail must be sent out by mistake. Today we have received an email from Google asking for an apology for sending erroneous email. Probably you have also received the same email.

If you have any question about ‘Policy Breach Notice‘, Please feel free to comment below.

Keep in touch, follow TechOneStop on Facebook / Twitter / LinkedIn / Goolge+.

Also read: YouTube Linked Comment – why I can’t reply?

What is Operational CRM

Operational crmCRM or Customer Relationship Management software enables organizations to manage their relationships with customers. It helps to retain existing customers, acquire new customers and analyze customer data. There are mainly three types of CRM applications – Operational CRM, Analytical CRM and Collaborative CRM. Here we will discuss about what is Operational CRM.

What is Operational CRM?

Operational CRM streamlines the business process of an organization. It mainly focuses on automation and improvement of customer facing and customer touching business processes. It includes Sales automation, Marketing automation and Service automation. Main purpose of Operational CRM system is to generate leads, convert them into contacts, capture all required details and provide support throughout customer lifecycle.

Sales Force Automation:

Operational CRM - Sales AutomationSales Force Automation (SFA) helps an organization to automate sales process from lead generation to closing sale. Main purpose of sales automation is to set business standard within the organization to acquire new customers and deal with existing customers. It includes various CRM sales modules like

  • Lead Management
  • Contact Management
  • Account Management
  • Tracking Customer Preferences
  • Performance Management
  • Quote-to-Order management
  • Sales Forecasting

Marketing Automation:

Operational CRM - Marketing AutomationMarketing Automation helps the organization to streamline marketing process, automate and measure marketing task to increase sales and earn revenue faster. It includes various CRM marketing modules like Campaign Management, Event Based Marketing.

Campaign Management helps business to design campaign, decide communication channels (like email, call, website, social media, TV ads), segment contacts, allocate budget and analyze effectiveness or quality of the campaign.

Event based marketing helps to reach out customers with more relevant products or services based upon what’s going on in their lives at that moment, like first job or buying new car or getting married.

Marketing Automation can automate response to customer queries, inform sales team about new opportunities.

Service Automation:

Operational CRM - Service AutomationService Automation enables business to provide best quality of customer service by automating the service process. It includes various service modules like call management, case or incident management, knowledge management, service level management.

Call Management automation helps to route customer call to the most appropriate help desk person and retrieve all required information related to the call.

Case/Incident Management helps the organization to assign customers’ problems to the right person, provide solution within the time limit, capture customer response and analyze effectiveness.

Knowledge Management captures information from various sources and makes a pro active approach to give value addition to customers.

Service Level Management enables business to analyze quality of service based on key performance indicators.

Increase sales and improve customers’ loyalty are two main purposes of Operational CRM. There are lots of Operational CRM applications with different features and platforms (SaaS, On Premise, Hybrid). So before choosing any Customer Relationship Management application, organization should have defined goal and strategy to ensure success. You could read our article on ‘How to choose the best CRM software for your business’.

Do you have any question? Please feel free to comment below.

Keep in touch, follow TechOneStop on Facebook / Twitter / LinkedIn / Goolge+.

Clean up Siebel File System – Sfscleanup Utility

Clean up Siebel File System is one of major server maintenance activities. Over the time, Siebel file system becomes loaded with lots of invalid and orphan files. If you don’t clean up such files, it may impact on performance of Siebel application and also block hard disk space unnecessarily. To clean up such invalid and orphan files, Oracle provides an utility ‘Sfscleanup’. Here we will discus how to use sfscleanup utility to clean up Siebel file system.

But why files become invalid and orphan?

Well! there could be many reasons, like

  1. If you attach a file with a record and then delete that record
  2. If you attach a file and then change the URL type without deleting the record
  3. If you attach a file against a record and then without deleting that record, attach another file with the same record

How to run Siebel file system cleanup utility ‘Sfscleanup’?

Before running this utility, make sure you have SIEBEL_REPOSITORY environment variable set properly because sfscleanup utility refers environment variable to execute properly. To set SIEBEL_REPOSITORY environment variable correctly, you cloud run another utility ‘siebenv.bat’. We will discus about ‘seibenv’ utility in another article. Sfscleanup utility is located in ‘bin’ sub directory within Siebel server root directory. This utility processes each and every file in the file attachment directory.

Steps to clean up Siebel file system directory using ‘Sfscleanup’:Sfscleanup Siebel Utility

  1. Open command prompt and change the directory to the bin sub directory with in the Siebel Server directory
  2. Run sfscleanup.exe using below parameters

Prompt>sfscleanup /U <User ID> /P <Password> /C <ODBC Data Source> /D <Siebel Table Owner> /F <Path of the Siebel File System Directory> /X <Path of output file, mainly log file> /M <Path to move invalid file>

It would look like:
sfscleanup /U sadmin /P sadmin /C TECHONESTOP /D SIEBEL /F D:\sba81\FS /X D:\sba81\siebsrvr\log\sfscleanup.log /M D:\sba81\siebsrvr\log

Parameter Value Description Required
/U Username Username Id Yes
/P Password Password of the given user Yes
/C ODBC data source name Set this value to ODBC data source if SIEBEL_DATA_SOURCE environment variable is not set properly No if SIEBEL_DATA_SOURCE is set
/D Siebel table owner Set this value to Siebel table owner if SIEBEL_TABLE_OWNER environment variable is not set properly No if SIEBEL_TABLE_OWNER is set
/F Path of the Siebel file system directory Set this value to Siebel file system directory, do not append ‘att’ to the path directory Yes
/X Path of the output file Set this value to the path of out put file, mainly log file No
/M Path to move invalid files Set this value to the path where invalid/orphan files will be moved No
/N Remove older file versions * Set this value to ‘Y’ if you want to delete older version of file attachment. By default Siebel will keep these files marked as ‘ANCIENT’ No
/G Remove garbage file Set this value to ‘Y’ if you want to delete non siebel files from Siebel file system No
/R Generate report file Set this value to ‘Y’ if you want to generate report with File name and File Type No

 

Older version file means that corresponding attachment record exists in Siebel database but not the file revision number.

If you want to know more about Sfscleanup parameters, refer Cleaning Up the Siebel File System provided by Oracle.

Output file, generated by /X parameter, looks like below. It has three parameters – file name, file type and file operation.

sfscleanup utility

File Name:

This column contains the name of each file that was processed during the execution of Sfscleanup utility

File Type:

This column lists the type of each file that was processed. Below we have listed down all file types and associated operations that this utility performs to clean up Siebel file system.

File Type Description File Operation
CURRENT This file is valid file, it has corresponding record in file attachment table. KEPT
NEW This file is less than one hour old and sfscleanup utility does not check such file in file attachment table. KEPT
ANCIENT This file has corresponding attachment record in database but file version does not match KEPT if /N or /M parameter is not used

  • If /N parameter is set to ‘Y’, operation will be DELETED
  • If /M parameter is set to ‘Y’, operation will be MOVED
INVALID This file or directory is not a valid attachment. KEPT if /G parameter is not set to ‘Y’, otherwise DELETED
ORPHAN This file does not have corresponding record in File attachment table DELETED if /M parameter if not set to any value, otherwise MOVED

File Operation:

This column lists the type of operation performed on each file.

Operation Type Description
KEPT File is not deleted
DELETED File is deleted from file system
MOVED File is moved to the directory specified by /M parameter. Files will only be moved to the directory if the /M parameter is used.
KEPT_DIR Its a directory, not a file and need manual intervention to delete it
KEPT_ERROR File is kept as an error occurred during delete or move operation

 

Except Sfscleanup, there are another two important utilities ‘Sfspartition‘ and ‘Sfsutl‘ for Siebel file system. We will discuss these in our next article.

Now it’s time for action! Go and Clean Up Siebel File System!

Do you have any question? Please feel free to comment below.

Keep in touch, follow TechOneStop on Facebook / Twitter / LinkedIn / Goolge+.

<< DBCHCK Utility