The Author of this Article is Karthik Chatakondu. This is all what I know about him right now will update once I get to know more about him.
The Apply and Activate buttons appear in the Table and Index sections of Siebel Tools. They are a means to synchronize the logical and physical schema and alert other users that changes have been made to the schema.
The logical schema is stored in the following tables in the Siebel database.
The physical schema is defined in the RDBMS (IBM DB2, Microsoft SQL Server or Oracle) that is being used.
There are a limited number of things that can be done that cause changes to the schema. They are adding a new column, table or index or deleting an extension column, table or index. Each of these actions require an update to the logical schema and a change to the physical schema. This can be done through Siebel Tools or using the Database Server Configuration Utility
Next, the Apply button is clicked, which prompts you to connect to the database using ODBC and to log in as the table owner. This is required since Data Definition Language (DDL) is being performed by Siebel Tools. Here is a sample SQL statement that Siebel Tools runs against the database.
DROP INDEX S_CONTACT_JOHN1
After applying changes to the schema is completed, the changes have been made to the database. You can take advantage of these changes once a new Siebel repository file (.srf) has been distributed. If an index has been added, the database may start using this regardless of whether or not a new .srf file has been distributed. The database works independently from the .srf file.
Clicking the Activate button simply updates the schema version in the S_APP_VER table. The schema version signals clients, mobile clients and server components that a schema change has been made and that they need to update their own logical or physical schema’s. Server components use the dictionary cache or diccache.dat to reference objects in the Siebel database quickly. Diccache.dat is loaded into memory and shared by all server components. Whenever a server component runs, it validates the schema by querying S_APP_VER and comparing the schema version against that which is stored in the diccache.dat. If a newer schema exists, the Siebel application rebuilds the diccache.dat.
Compile a new .srf file after making schema changes to ensure that you are working with the proper schema.
If instead of dropping a custom index, an extension column were being added, the SQL would be slightly different. Instead of DELETE statements, there would be INSERTS and instead of the DROP statement, there would be CREATE or ALTER statements.
In summary, a schema change in Siebel Tools needs to be propagated to the Siebel database and applied to the physical database. The final step is to activate the changes, or increment the schema version in the S_APP_VER table.
NOTE: When clicking the Apply button to apply data model changes, you will be prompted for the Privileged User Id / Password. This must be the table-owner name/table-owner password. Before Siebel 7.7, this was typically DBA/SQL. With Siebel 7.7, this has changed to SIEBEL/local user password. For example, suppose your login id is JSMITH and password is DB2. When you apply schema changes to the local database, your Privileged User Id / Password would be SIEBEL/DB2.
I would like to Thanks Karthik for sharing really useful information with us. Please rate this article if you found it good.