GeeKs Blogging @ dotCOM

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

Siebel – Automating Merge Records by script – II

by Nitin Jain


I call this Part II, as I have already introduced the Merge Records Siebel functionality, and discussed its usage in his post. One of the interesting discussions we had was how such a data could possibly be inserted into the Siebel system, since Siebel has so many mechanisms to prevent Data Corruption. We had also zeroed in on EIM and EAI as the basic culprits which could possibly insert inconsistent data into the Siebel Database.

When such a thing happens on sucha large scale, or when we know the exact pattern whereby we can detect these duplicate records in the system, we may look at options to automate the process of Merging Records. How nice would it be if we could just somehow put it all up in a workflow or script which would achieve the above objective.

Exploring further on the topic, I came to realize that there is an undocumented BC method which we may fire to achieve the objective above. Try looking at the script below:

var Target_Id = “Dummy-001″;
var Source_Id = “Dummy-002″;
var bo_Contact = TheApplication().GetBusObject(“Contact”);
var bc_Contact = bo_Contact.GetBusComp(“Contact”);

bc_Contact.InvokeMethod(“SetAdminMode”, “TRUE”);
bc_Contact.SetViewMode(All);
bc_Contact.ClearToQuery();
bc_Contact.SetSearchSpec(“Id”, Source_Id + ” OR ” + Target_Id );
bc_Contact.ExecuteQuery(ForwardBackward);

if (bc_Contact.FirstRecord())
{
while (bc_Contact.GetFieldValue(“Id”) != Target_Id)
{
bc_Contact.NextRecord()
}
bc_Contact.InvokeMethod(“MergeRecords”, Source_Id);
}

If you notice carefully, we have invoked the method, “MergeRecords” on the Contact BC. The Contact BC has the class, “CSSBCContactSIS” which definitely, thus, supports this method. My guess would be that this method would be supported for all the BCs, where the vanilla Edit -> Merge Records functionality is enabled for the corresponding views. I haven’t actually gone further than this.

If somebody has had any other experience with Merge Records, please do share! :-)

Tags: Configuration, Fundamentals, Siebel, Siebel Secrets, Tutorials



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




This entry was posted on Wednesday, July 22nd, 2009 at 11:32 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 – Automating Merge Records by script – II”

  1. Sajan says:
    July 22, 2009 at 1:11 PM

    Good Post Nitin !!!
    We can extend the functionality by writing a BS to merge more than 1 record to the source.

  2. nanpats says:
    March 23, 2010 at 9:10 PM

    MergeRecords method works fine for OOB foreign key references.
    How are the Custom foreign key references resolved? How about the Child records associated to the merged victim record? Any ideas?

    Apart from above pointers, if Data Management application like UCM is in use, there is a requirement to merge the records with certain attributes of the victim record to be retained on the survivor record.

  3. Nitin Jain says:
    March 24, 2010 at 12:40 AM

    hmmm.. Nice pointers, Nanpats.
    Waiting eagerly for answers to these from you, buddy..

  4. nanpats says:
    April 2, 2010 at 9:49 AM

    I would respond to one of my comments wherein I pulled out questions on merge when Data Management Application like UCM are in use —

    UCM has got inbuilt features DeDuplication and Survivorship Rules which govern / evaluate the matching percentage of 2 given records (DeDuplication) and update of certain attributes on the survivor post merge (Survivorship Rules). However if you have integration of the standardized data back into Siebel, you would be required to maintain the same in Siebel. This is where a custom merge solution comes handy.
    To build a custom merge solution the following pointers should be kept in mind:
    a. Merge of 2 records (Way to identify the survivor and victim records)
    b. Update of attributes / fields from victim onto Survivor record (Survivorship rules)

    The solution would be a 3 step process (high level though)
    1. Ensure you have ways to identify the Victim and Survivor records based on merge performed in UCM
    2. Capture the attributes / fields from the victim record which you would like to update on the survivor record (based on Survivorship rules in UCM)
    3. Perform OOB Merge on the records
    4. Explicitly update the fields on the survivor record per pointer 2.

    I will update the group on other questions in sometime related to Foreign key reference and child record association / disassociation resolution.

Leave a Reply

Click here to cancel reply.

You must be logged in to post a comment.


« Siebel – Merge Records Functionality
Siebel – Fetch Active view properties »



  • 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 (117)
      • CRM News (6)
      • Sage Software / ACT! (1)
      • Salesforce.com (2)
      • Siebel CRM (105)
    • EAI (2)
    • Events (1)
    • FUN 'n' FROLIC (6)
    • Hot Technologies (7)
    • IT News (47)
    • Meet the Author (9)
    • ORACLE (15)
      • Database (2)
      • Oracle Fusion Applications Stack (8)
      • Oracle Policy Automation (1)
    • 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

    • February 2013
    • January 2013
    • August 2012
    • 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

Fresh Ideas

  • Still confused about the Oracle roadmap for Siebel CRM ?
  • Oracle VM 3.2 Now Available
  • Oracle Policy Modelling (OPM) - Unable to compile Excel documents
  • 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 !!

Just Said

  • Abhay on Siebel – SIA BC Utility Service – Loop multiple records
  • SriRam Sudarsan on Siebel – Installer hangs midway
  • Joey on Oracle Policy Modelling (OPM) – Unable to compile Excel documents
  • chandra on Siebel – Unable to login to mobile client
  • Varun P M on Siebel – Installer hangs midway
  • Mat on Siebel – EAI Siebel Adapter – Looping Multiple Records
  • Nitin Jain on Siebel – EAI Siebel Adapter – Looping Multiple Records
  • Nitin Jain on Siebel – EAI Siebel Adapter – Looping Multiple Records
  • Mat on Siebel – EAI Siebel Adapter – Looping Multiple Records
  • Sheldon on Siebel – EAI JMS Transport

Most Commented

  • Siebel - SIA BC Utility Service - Loop multiple records
  • Siebel - Installer hangs midway
  • Siebel - Adding License Keys to Sample
  • Siebel - Reading data directly from Siebel SRF
  • Siebel - Popup Update Only
  • 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).