GeeKs Blogging @ dotCOM

Let's share…
  • Home
  • About
  • Contribute
  • How To – FAQs
  • Disclaimer
  • Terms & Conditions
1 May 2009

Siebel – ActivateField() split wide open

by Himanshu Bajpai


In Siebel, we generally tend to use the fields on the BC level in a number of ways, one of them being their use in Siebel scripts. The most common functions for operating on BC fields are GetFieldValue() and SetFieldValue() used for getting a value, or setting a value of the corresponding field in the BC. However, Siebel requires using ActivateField() before operating on any field of the BC.

Fields that are not active at runtime should not be used in script. Runtime errors, flawed logic and lost data may be the result of such a practice.

Following are the fields that are active by default.
• System fields (Id, Created, Created By, Updated, Updated By)
• Fields with their Link Spec property (on the business component object) set to TRUE
• Fields with their Force Active property (on the business component object) set to TRUE
• Fields included in the definition of an applet on the active view, even if the field’s Show In List property (for List Applets in Siebel 7.x) or its Visible property (for Form Applets in Siebel 7.x) is set to FALSE (on the applet object).

Note that a list column must be bound to a web template to actually be included in the SQL. Simply defining the column in the applet’s definition will not make a field active as of 7.5.2.200.
• Fields activated with BusComp.ActivateField(“”) are active for the lifetime of the BusComp object variable or until deactivated explicitly by the DeactivateFields method.
• Fields that are used as part of a calculated field calculation when the calculated field is retrieved for use on the active applet.

If any of the above circumstances is not true then the field will not be retrieved in the SQL statement for the business component. This means that no value is available to GetFieldValue and subsequent updates with WriteRecord will not have a database column to update since it was not included in the original SQL statement.

Both cases have a severe impact. Whether
• The ActivateField() method is used incorrectly, or
• The ActivateField() method causes the specified field to be included in the SQL statement for the subsequent ExecuteQuery() method call. A call to ActivateField() is relevant only if followed by a call to the ExecuteQuery() method.

Retrieving and updating fields using BC.GetFieldValue() or BC.SetFieldValue() methods before a query has been executed will not work as expected. If the script calls GetFieldValue before a field has been properly activated and retrieved, GetFieldValue will return a runtime error will occur for the use of GetFieldValue or SetFieldValue where a field has not been activated.

While working with the Siebel Data Server from an external VB/Java application, for example, the Siebel Data Server is not aware of any applet definitions and, therefore, will not include the fields defined on an applet. Script must use the ActivateField method to retrieve the desired fields in a query in this case. This is also true when interacting with the Siebel Database using the Siebel Business Objects Interface Type Library.

Let’s wait for more on ActivateField().



Related posts:

  1. Siebel – Make MVG Field required Siebel supports the concept of Multi Valued Fields, or the...
  2. Siebel – Run Case Insensitive queries This is a nice tip I ran across. All the...
  3. Siebel – Fetch Active view properties – II We discussed about fetching the values from the active view...
  4. Siebel – InvokeServiceMethod() on Calculated Fields InvokeServiceMethod() is used to invoke Business Services and take values...
  5. Siebel – DefaultFocus – User Property In Siebel Application, whenever you navigate to a screen, the...
  6. Siebel – Make a field Required, conditionally There was a requirement in our project to make Account...
  7. Siebel – millisecond dates on Applet I had discussed in my previous posts about invoking a...

Tags: Business Component, Configuration, eScript, Siebel, Tutorials



For regular updates, enter your email address below. We don't spam, we don't share with others!




This entry was posted on Friday, May 1st, 2009 at 9:46 AM and is filed under Siebel CRM. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

4 Responses to “Siebel – ActivateField() split wide open”

  1. Nitin Jain says:
    May 1, 2009 at 12:36 PM

    Nice post, Himanshu. I am glad to see that you have covered a very important aspect related to EAI here which generally people tend to overlook.

    When instantiating requests through EAI (either Workflows invoked from some other BCs than the BCs being processed, or even more importantly through the B2B Channel), people tend to overlook the fact that the corresponding view is not exposed here. So, the fields which are active because of being exposed on the UI, or the BCs / BOs of the view are not active. These must explicitly be activated if being used through eScript.

    If standard Siebel Operation steps, or other vanilla Business Services are used for this processing, then ActivateField() may not be used.

  2. Prachi Sharma says:
    May 2, 2009 at 9:46 PM

    activatefield in script gives a lot of problems. sometimes it does not work. it gives error that the field is not activated despite already using activatefield. also it gives script error and all. we must try to use activatefield first. if it does not work use force active property on bc field. this works best.

  3. Nitin Jain says:
    May 3, 2009 at 11:00 PM

    Force Active comes with its own set of problems. The force activated field will be fetched evertime a query is made on that BC. It can give to serious performance issues in later stages of the project.

  4. Andrej says:
    March 24, 2011 at 9:35 PM

    We have the same problem with activating fields on the Applet server script. It doesn’t work and also force active on the BusComp level doesn’t work for the particular field. We were trying to adjust the data by a business service, but also there the field is not able to activate..Seems to be quite problems with the field activation..

Leave a Reply

Click here to cancel reply.


« A meeting with Siebel EAI
Siebel – EAI Queue »



  • Admin Controls

    • Log in
  • Talk to us

    • Bouquets, brickbats, suggestions, complaints?

    • Click here...
  • Authorships

    • We are currently looking out for active authors. Are you willing to contribute?

    • Please click here

    • Everyone's invited..
  • Subscribe by Email


    • For regular updates, enter your email address below. We don't spam, we don't share with others!

  • Sponsors

  • Subscribe

    • Entries (RSS)
    • Comments (RSS)
  • Siebel Bookshelf

  • Daily Dilbert

    •          
  • Categories

    • Admin Notifications (9)
    • Business Intelligence (2)
      • Actuate (2)
    • CRM (115)
      • CRM News (6)
      • Sage Software / ACT! (1)
      • Salesforce.com (2)
      • Siebel CRM (103)
    • EAI (2)
    • Events (1)
    • FUN 'n' FROLIC (6)
    • Hot Technologies (7)
    • IT News (47)
    • Meet the Author (9)
    • ORACLE (14)
      • Database (2)
      • Oracle Fusion Applications Stack (8)
    • Product Demostrations (5)
    • Uncategorized (4)
  • Tag Cloud

    Admin Admin Notifications Applet Author Introductions Business Component Calculated Function Certification CFG file Client Configuration Critique CRM Database Debugging EAI EIM eScript Fundamentals Fusion Middleware Google IT News License Login Microsoft ORACLE Oracle Fusion Applications Performance problems Product Defect Product Demostrations Salesforce Scriptless solutions Security Server Siebel Siebel Secrets SOA Tips Tools Tricks Tutorials Upgrade User Property Workarounds workflows



  • Archives

    • August 2011
    • July 2011
    • June 2011
    • May 2011
    • April 2011
    • November 2010
    • August 2010
    • May 2010
    • April 2010
    • March 2010
    • February 2010
    • January 2010
    • December 2009
    • November 2009
    • October 2009
    • September 2009
    • August 2009
    • July 2009
    • June 2009
    • May 2009
    • April 2009
    • March 2009
  • Authors

    • Ankit Bhardwaj
    • Ashish Kaul
    • brijesh
    • Himanshu Bajpai
    • Madhvi Arora
    • nanpats
    • Nitin Jain
    • Prachi Sharma
    • Renuka Ankam
    • Vikas Luthra
  • Administrators

    • geeksblogging@gmail.com
    • admin@geeksbloggingat.com
  • Sponsors

Fresh Ideas

  • Login Failed in Dedicated Web Client : MVF Issue
  • Oracle Fusion Applications price list
  • Research to Development - Fusion Apps Series
  • Oracle ACE Program
  • HCM user Experience through UI - Fusion Apps series
  • "Managing Oracle Fusion Applications"
  • Microsoft *previews* Windows 8 - Part 2 now available !!
  • Let's upgrade Siebel CRM to Fusion Apps "right now" !!
  • Ness Technologies bought out by Citigroup Unit
  • Oracle #1 CRM Applications vendor ??

Just Said

  • Amit Sharma on Siebel – Installer hangs midway
  • Khadijah Mosinski on Salesforce.com not upto the mark?
  • Hamre319 on Highrise Customer Relationship Management
  • Nitin Jain on “Managing Oracle Fusion Applications”
  • zama racha on “Managing Oracle Fusion Applications”
  • Nishant Aggarwal on Siebel – License keys don’t work / are invalid
  • Nitin Jain on Siebel – SIA BC Utility Service – Invoke BC Method
  • Pedro Garcia on Siebel – SIA BC Utility Service – Invoke BC Method
  • Nitin Jain on “Managing Oracle Fusion Applications”
  • Nitin Jain on Microsoft *previews* Windows 8 – Part 2 now available !!

Most Commented

  • Siebel - SIA BC Utility Service - Loop multiple records
  • Siebel - Installer hangs midway
  • Siebel - Adding License Keys to Sample
  • Siebel - Popup Update Only
  • Siebel - Reading data directly from Siebel SRF
  • Siebel - Automatic User Logout
  • Siebel - EAI Queue - Usage
  • Siebel - Looping multiple records - Update records
  • Siebel - SIS OM PMT Service
  • Siebel Tools hangs when checking out objects

Old Favourites

  • Highrise Customer Relationship Management
  • Siebel - Autosave Opportunity data - Sample Code
  • Siebel - Autosave Opportunity data - The concept
  • Renuka Ankam
  • Siebel - Merge Records - Checklist
  • Siebel - Fetch Active view properties - III
  • Oracle 11g Certification coming soon
  • Siebel - Fetch Active view properties - II
  • Siebel - Fetch Active view properties
  • Siebel - Automating Merge Records by script - II

If you also want to write on GeeksBlogging@dotCOM, click here. Area of Specialization no constraint. Become Famous!


Entries (RSS) and Comments (RSS).