There are often times when we need to extend the Siebel data model. One of them is to add an extension column to the existing Siebel tables. In this blog I have listed a simplified version of steps required to add an extension column. But before you create an extension column make sure that the existing columns provided by Siebel don’t meet your requirements. You should create extension columns only if necessary. There is also a way you can avoid creating this extension column by using the columns under 1:1 extension tables. For example instead of extending the base table S_ORG_EXT you can use one of the columns available under 1:1 extension table S_ORG_EXT_X. The problem with using the extension table is that there will be a join that would be used each time S_ORG_EXT is accessed. This in turn would reduce performance. So normally developers tend to create extension column and is a very common practice. Below are the simplified steps on how to create an extension column.
For the purpose of this blog, I will take an example of adding an extension column X_OLD_ACC_NUM to the table S_ORG_EXT.
Steps:
- Login into Siebel Tools connecting to Local.
- Check out the corresponding project for which the table belongs to. For example S_ORG_EXT belongs to the project “Table Organization”. So checkout this project.
- Make a copy of your existing local database found at “C:\Program Files\Siebel\7.7\Tools\LOCAL\sse_data.dbf”. This will ensure a safe back up.
- Under table object select the table you want to add an extension column to.
- Expand the object explorer tree to view the table columns.
- Right click on the columns section and create a new record. Give a name for example X_OLD_ACC_NUM. The column will prefix with X_ even if you do not mention it. All extension columns are prefixed with X_.
- Mention the Physical type and Length of the column. This will depend on what you need. Enter some comments for future reference.
- Now you have created an object definition in Siebel tools. But this is not yet reflected onto your local database which is done in next step.
- Hit the Apply button. An input form pops up asking for more details.
- All you would need over here are four parameters.
- Tables: Select current Row
- Database User: SIEBEL
- Database Password: This is the user you used to extract the local DB. For example you are using JSMITH as your login and used this to extract the password will be JSIMITH.
- ODBC Data Source: Select the OBDC data source pointing to the local database. This would normally be SSD Local Db default instance
- Hit Apply on the window. This will take a while and message pops up confirming changes to the database.
- Now the extended column is available in the local database.
- Test locally and make sure the changes look fine and are as required. If you see anything is wrong and would like to roll back exit Siebel Tools and replace the backup dbf file from step 3 otherwise proceed.
- Check in the project.
- Now the object definitions are changed in the Server repository but this column is not yet available in the server database.
- Login into Siebel Tools connecting to Server.
- Lock the project under which the table belongs to. Ex: Table Organization.
- Find the table S_ORG_EXT and make sure that the extended column X_OLD_ACC_NUM is visible.
- Select the table and hit apply to have server changes reflect in the server database. Fill up required information similar to step 10. Here the login will be SIEBEL/<siebelpasswd> and the ODBC data source will be the one pointing to the server. Check your ODBC settings to figure this out. Normally applying schema changes in the server will be done by Siebel Administrator.
- After applying changes you should be able to see the new columns in the database. Login to the server database using your favorite SQL editor like TOAD and verify that the new column has been created and you are able to query on that. Now that column is available for use.
Make sure you test thoroughly before deployment.
As usual let me know if this blog has helped you. Post some comments.
Related posts(Auto Generated):





January 22nd, 2009 at 6:12 pm
Thanks that’s useful
July 28th, 2009 at 11:43 am
Database Password probably is the password and not the username of the local user (in case they do not match what is a common practice).
July 28th, 2009 at 11:44 am
I mean, when extending the local db.
July 29th, 2009 at 10:30 am
hi,
i meet this errors when trying to add a new column in table siebel.s_srv_req.
42986 (-750): [IBM][CLI Driver][DB2/6000] SQL0750N La table source ne peut pas être renommée car elle est référencée dans une vue, une table de requête matérialisée, un déclencheur, une fonction SQL, une méthode SQL, une contrainte de vérification ou une contrainte référentielle. SQLSTATE=42986
===
effetively, my table is referenced by a view : V_srv_req.
how to forward this problem?
thanks for help.
July 29th, 2009 at 10:31 am
hi,
i meet this errors when trying to add a new column in table siebel.s_srv_req.
42986 (-750): [IBM][CLI Driver][DB2/6000] SQL0750N La table source ne peut pas être renommée car elle est référencée dans une vue, une table de requête matérialisée, un déclencheur, une fonction SQL, une méthode SQL, une contrainte de vérification ou une contrainte référentielle. SQLSTATE=42986
===
effetively, my table is referenced by a view : V_srv_req.
how to forward this problem?
thanks for help.
July 29th, 2009 at 11:00 am
hi,
i have drop view and execute Apply command and recreate a view.
i think that’s a siebl bug when a table is referenced !!!!!
July 30th, 2009 at 6:10 pm
I dont totally understand the error since it is no english. But I am guessing it is complaining about connection problem.
Also, what are you trying to do? are you using a View? for what?
January 15th, 2010 at 11:02 am
Hi!
Your post helped me add an extension table column.
Thank you so much!!
Also, I think the ‘Password’ that’s prompted upon hitting the Apply button is probably the password of user, when he logs into tools.
Please do correct me if i’m wrong, this worked for me.
cheers!
Pradeep
January 18th, 2010 at 8:50 pm
Yes, Password is the users password. I have assumed here that the username/password is same in my case.
June 17th, 2010 at 5:46 am
Is perfect!! congratulation! You help me!!
June 30th, 2010 at 11:37 am
Hi Sridhar,
After creating column how to create EIM mappings.
Can you show the stuff so that i can through it.
Thanks and Regards
Ratna
October 4th, 2010 at 7:30 am
Hi
When to use Activate button ?
Thanks in Advance
October 5th, 2010 at 6:13 am
Hi Sridhar,
Thanks for detailed information,and can u tell me when we use Activate and Extend buttons in tool.
Regards
Rajeshwar
October 5th, 2010 at 5:32 pm
Extend is used to create 1:1 extension table.
Activate is used to Apply(Commit) changes to the database.
Check Configuring Siebel Business Applications in Bookshelf.
October 5th, 2010 at 5:48 pm
I was wrong about Activate button. As per bookshelf,
Click Activate in the Object List Editor. This increases the custom database schema version and
thus prepares for the mobile client upgrade.
January 21st, 2011 at 7:20 am
I have a query ,please how to add Field( name:Cancellation Reason Code) to be added in the system: mandatory when status is set to “Cancelled” or “Deleted”
January 31st, 2011 at 6:14 am
Hi Sridhar ,
As per our requirement we need to create new column in S_SRV_REQ table ,so I followed few basic steps
1)Login into Siebel Tools connecting to Local.
2)Checked out the Table Service Request project .
3)Locked the S_SRV_REQ table.
4)I have done the right click on the columns section and created a new
record. Given a name as NEW_SRV_NUM. The column is automatically
prefix with X_
5) Mentioned the Physical type and Length of the column.
6)After that i have done the following steps
7)Hit the Apply button. An input form pops up asking for more details.
8)I have entered below parameters.
a. Tables: Select current Row
b. Database User: SIEBEL
c. Database Password: This is the user password , when i extracted
the local DB.(also this is Tools login password ) .
d. ODBC Data Source: ODBC data source pointing to the local
database. This is SSD Local Db default instance
e. Hit Applied on the window. This would taken a while and message
is pop up as confirming changes to the database.
9) I have created one new field (New_SRV) in the Service Request BC , mapped
X_NEW_SRV_NUM column to above created field.
10)After at Service Request List Applet mentioned the NEW_SRV field and
mapped at the Edit list mode and base mode
11) Complied the entire projects Service Request , Service Request(SSV),Table
Service request and all locked projects
After Compilation Service request Screen it self is not opening and
showing error message as “Please consult administrator e.t.c”
Please guide me if i done any mistake,why new column is not
reflecting in Web client after compiling ,to reflect the new column on
UI ,what more steps i should follow
Thanks in advance.
Thanks & Regards
Aryan
April 23rd, 2011 at 8:53 am
HiSridhar
I’ve followed your instructions serveral times in the past without any problems and it worked perfectly.
Therefore and of course for your whole www and blogs: THANK YOU SO MUCH!!!!
Today I’m again trying to create new columns on S_OPTY. It works on local, the column is there, apply works.., but after i checkin the project “table opty” in local tools and then login to tools server, the columns are not visibile??
Do you have me a hint where to search for the mistake I made? Problem I have? I tried it with a second column (which I need anyway) and it didn’t work either.
Table: S_OPTY
Column: X_DELIVERY_DATE_EXCEPTION_FLAG
Character 1 (for Checkbox)
Is there maybe a limit on charactesr on the column name? Though I haven’t gotton any error messages, when I pressed apply on local… and I tried with a short one too. I also tried on S_OPTY_X
Any hint I would very much appreciate!
Regards,
Nadja
April 23rd, 2011 at 8:57 am
Hi Sridhar
Forgot to tell you: i tried to create a new record on tools server (as an exception) just to check if it creates me a column in the ms sql database… and yes that worked fine…. I know of course that’s not the way to do it…
Thanks in advance for your feedback!
Regards,
Nadja