You are here

SRF Compilation Checks to Prevent Corruption of SRF

While compiling a SRF file problems such as the compilation aborting, the application hanging or the SRF produced is very small can occur due for various reasons. Additionally the SRF files that have been appeared to be correctly compiled but inconsistent behavior now occurs in the application between two SRFs generated from different developer’s environments can be caused by incorrectly set parameters. When compiling a SRF file there are a number of checks that can be conducted to ensure that the file is correctly created to avoid the creation of a “bad” SRF. 1) Before compiling an SRF please ensure that the server environment and the Siebel Tools environment are: • On the same build type (example: SIA or SEA) • Have the same Fix Pack installed • Have the same Quick Fixes applied 2) Incorrect SRF Confirm when compiling the changes made that they are being compiled into the correct SRF. Never compile changes into the default Siebel Tools SRF, this can cause the Siebel Tools application to behave unpredictably. An example of this would be the inability to import or export SIF files. In a multi-lingual environment ensure that the language specific SRF file is compiled into the correct SRF and folder: Example: X:\Siebel\8.0\web client\BIN\ENU X:\Siebel\8.0\web client\BIN\FRA 3) CFG file Confirm after the changes have been compiled into the SRF, that the CFG used for the application is pointed to the correct SRF. 4) Multi-lingual environments If you are in a multi-lingual environment ensure that tools is set to the correct language In Siebel Tools navigate to View> Option… In the Development Tools Option dialog box> Language Settings, to set the language. 5) Browser script In Siebel Tools navigate to View> Option… In the Development Tools Option dialog box select the Scripting tab. Ensure that path for the “Browser script compilation folder” is setup correctly. Alternatively ensure that the genbscripts.exe utility has been run. 6) Low hard drive space Please confirm that the hard drive is not running low on physical space when an attempting to compile an SRF file. If the space is consumed during compilation, free space up on the drive and re-start the compilation of the SRF using a new unique name for the SRF. 7) Patches/ Upgrades After an upgrade has been competed or a patch introduced into an environment, ensure that any additional configuration needed is completed as per the patch/upgrade notes then compile a completely new SRF using unique name. This should always be a compile of all projects. 8) Process load. Confirm that there are not numerous process intensive applications running during the compilation process, in particular running antivirus applications. When antivirus applications run this can lead to the SRF in question being somehow “locked”. This behavior normally occurs when antivirus scan software is not set to avoid scanning on SRF file and on DBF files. It is recommended to avoid compiling the SRF while the antivirus application is running. Alternatively include DBF files and SRF files in the exclusion list, avoiding these files to be scanned. NOTE: after the SRF is generated re-run the antivirus software to examine the SRF file and on DBF files. 9) Database encryption In Siebel version 8.x and higher, when extracting a local database with the default settings, the local database is now encrypted. This is the standard behavior. To create an unencrypted database the following parameters must be set before the database is generated for the user: Encrypt client Db password = False Client Database encryption method = none If the database is encrypted then parameters must be specified in the CFG file and the correct MWC file must exist in the Bin folder. 10) “Hang” during "Find Tables" step Please be aware that the application can appear to “hang” during the "Find Tables" step, this is due to the large number of objects that have to be retrieved and can occur in the standard Siebel Tools application too. It is recommend that the application be left for at least half an hour before attempting to abort the process 11) If problems still occur then it is highly recommended that a new local database be created for the developer. If they are currently working on objects that are different from the objects on the server it is recommended that these objects be archived to a SIF file. Once this is completed generate a new database template and extract a new local database for the developer. When the developer has downloaded their new database, log onto Siebel Tools and conduct a full “Get” of all projects. 12) The 8.x builds of the application use the new ST eScript Engine and this is discussed in the Siebel bookshelf: Using Siebel Tools> Chapter 9: Siebel Script Editors> About the ST eScript Engine. In some cases when older script is compiled in the new ST eScript Engine errors can occur. This error is not related to a bug but due to part of the new functionality added in the ST eScript engine called Deduce Types. Type deduction is a feature of the ST eScript Engine which deduces the type of local variables used in a script by scanning the assignments made to them. To disable this functionality please do the following: • In Siebel Tools navigate to View> Option… • In the Development Tools Option dialog box select the Scripting tab • The Deduce Type flag is under the Engine Settings and should be disabled (unticked)