This post is a follow up to the last article on how not to extend the Siebel data model.
I considered it worthwhile not to go into too much detail on how to create new columns or tables (that should be common Siebel developer knowledge) but instead point out some "caveats". So beware of the following points when you extend the Siebel data model:
1. All changes to the Siebel data model must be done through Siebel Tools and can only be additive in nature.
Believe it or not, a common source for headache in our typical next-door Siebel project is adding (or modifying) columns, tables or indexes through direct DDL scripting rather than creating an object definition in Siebel Tools and applying it properly.
2. Schema changes must be applied to all databases
When we say "all databases" we mean:
- All local developer databases
- The development server database
- All other server databases (test, production, training, etc.)
- Mobile user's local databases (if you are using Siebel Remote)
|Now that's a big table! (The Writer; sculpture by Giancarlo Neri)|
3. What about EIM tables?
If you intend to populate or update your brand new tables and columns with Enterprise Integration Manager, then don't forget to extend the interface tables as well. And don't forget the EIM table mappings.
4. Siebel Remote
If your company uses Siebel Remote to synchronize server databases with mobile clients, you must also take care of the Dock objects so that the data in your new columns and tables is synchronized.
Performance shouldn't be considered last but better late than never. In the unlikely event that your end users never query or sort the data in your new columns and tables, you can forget about indexes. Otherwise you end up with a facepalm moment, because, you know, you forgot to create an index.
So do we have a checklist here or what? Did I miss a caveat? Please share your knowledge using the comments.
have a nice day