Separating the Wheat from the Chaff: Seed Data vs. Customer Data in Siebel CRM
From time to time and for various reasons, we must be able to identify a record in a Siebel database as either belonging to the ever-growing set of Siebel seed data or as having been created by the customer.
Probably the easiest way to identify a record as seed data is to use the ROW_ID value. For example, let's go to the Product Administration view and run a query such as the following.
[Id] LIKE "0*"
The above search specification will retrieve all records that have a ROW_ID beginning with "0". The leading zero is a typical seed data indicator (and used in dataimp input files such as seed_locale.inp).
After typing/pasting the above in any text control and executing the query, we get a list of records that should be present in any Siebel database such as these three products.
Invoking the About Record command reveals that the active record is really ancient as most seed data records have a CREATED timestamp of January, 1st 1980.
Reversing the query of course retrieves only customer records: [Id] NOT LIKE "0*"
While the above works for almost every runtime data table, identifying custom records in repository tables is a bit trickier. For example, let's look at a typical Open UI Manifest record that is provided out-of-the box.
As we can see, the Manifest File record's ROW_ID does not start with zero. While it is quite special looking (two dashes for example) it might be difficult to distinguish from a customer record.
But at least for Open UI Manifest data, there's hope in form of a system field (not visible in the About Record dialog) which is named "Record Source". The column name is RECORD_SRC.
The pre and post default values of this field is "Customer", so now we have a solution for identifying Open UI Manifest data clearly as being created by a customer with the following search specification:
[Record Source] = "Customer"
Thanks to fellow Oraclean Barry for pointing this out. Seed records have a value of "Siebel Internal" in that column BTW.
have a nice day
@lex
Probably the easiest way to identify a record as seed data is to use the ROW_ID value. For example, let's go to the Product Administration view and run a query such as the following.
[Id] LIKE "0*"
The above search specification will retrieve all records that have a ROW_ID beginning with "0". The leading zero is a typical seed data indicator (and used in dataimp input files such as seed_locale.inp).
After typing/pasting the above in any text control and executing the query, we get a list of records that should be present in any Siebel database such as these three products.
Invoking the About Record command reveals that the active record is really ancient as most seed data records have a CREATED timestamp of January, 1st 1980.
Reversing the query of course retrieves only customer records: [Id] NOT LIKE "0*"
While the above works for almost every runtime data table, identifying custom records in repository tables is a bit trickier. For example, let's look at a typical Open UI Manifest record that is provided out-of-the box.
As we can see, the Manifest File record's ROW_ID does not start with zero. While it is quite special looking (two dashes for example) it might be difficult to distinguish from a customer record.
But at least for Open UI Manifest data, there's hope in form of a system field (not visible in the About Record dialog) which is named "Record Source". The column name is RECORD_SRC.
The pre and post default values of this field is "Customer", so now we have a solution for identifying Open UI Manifest data clearly as being created by a customer with the following search specification:
[Record Source] = "Customer"
Thanks to fellow Oraclean Barry for pointing this out. Seed records have a value of "Siebel Internal" in that column BTW.
have a nice day
@lex
תגובות
הוסף רשומת תגובה