Siebel Development Standards

I'm sure most of you are aware of these standards / guidelines for development,  
 
Performance:
- Never put a multi-valued field on a list applet, especially if it does not have a primary
- Avoid sorts on applets / buscomps that will bring back large datasets
- Be cautious with what fields you mark as Force Active
- Avoid toggle applets - especially on list applets
 
Remote:
- Avoid new custom foreign key extension columns
- Avoid real-time integrations via UI for anything that may need to be accessible for remote users
 
Configuration:
- Never put an MVG on a form applet as editable - force the users to open the MVG to add / delete / update MVGs (otherwise it will create "bad" records in the background)
 
Script:
- Always indent your code for easier reading
- Always comment your code & include a "header" description of functions
- Put code that needs to be used in several places into Business Services
- Avoid multiple if else if else statements - use select statements instead
- Always include error handling
- Always check to be sure your objects / records are found or exist prior to using them
- Always activate ALL fields to be used prior to querying a buscomp to ensure you have access to the fields' data
- Always destroy objects after usage - in the REVERSE order of declaration
- Avoid declaring variables in while loops
- If a requirement can be done via configuration - then AVOID writing script for it
 
Other:
- Avoid Repeating Component requests as they may get skipped on nights with maintenance tasks, releases, etc.

Tags