Tuesday, December 1, 2009

SRFDiff: Compare two SRF's !!!


Cool new feature in Siebel 8.1 (much awaited)

The SRFDiff utility allows you to compare two repository (.srf) files. Both SRFs must be from the same locale and language and compliant with the current Siebel Tools schema version. From the Help menu in Siebel Tools, choose Technical Support to view the schema version of the SRF that Siebel Tools is using.
NOTE: The SRFDiff utility validates only for a major schema version. Therefore, SRFs with different minor schema versions, such as 44.39.0.248 and 44.40.0.1, are valid schemas.
The differences between the two files, that is new, deleted, and changed objects, are recorded in two user-specified XML output files, depending on what the comparison discovers:
1)diff_srf1_srf2.xml. This output file contains differences between the two SRFs and provides a list of new and modified objects. It may also contain new objects found in srf2 that are not found in srf1. This output file shows the differences found during the comparison using an attribute name/value list format.
2)deleted_records_diff_srf1_srf2.xml. This output file contains deleted objects (objects present in srf1 but not in srf2).
If no differences are found or both SRF files are identical, then the SRFDiff utility does not generate output files.

Sample Output

1) Adding a new field in the BC
<!-- Start: New object section -->
<FIELD Name="Test1" CALCULATED="N" CALCULATED_VALUE="" COLUMN="CONFLICT_ID" COMPOSITE="N" CURRENCY_CODE_FIELD="" DEST_FIELD="" DISABLE_SEARCH="N" DISABLE_SORT="N" EXCHANGE_DATE_FIELD="" FORCE_ACTIVE="N" FORCE_CASE="" HIDDEN="N" IMMEDIATE_POST_CHANGES="N" INTERNAL_PICK_APPLET="" JOIN="" LINK_SPECIFICATION="N" MESSAGE_DISPLAY_MODE="User Msg with Error Code Only" MULTI_VALUE_LINK="" MULTI_VALUED="N" NO_COPY="N" ORACLE_SEQUENCE_OBJECT="" PICKLIST="" POST_DEFAULT_VALUE="" PRE_DEFAULT_VALUE="" PRECISION="" READ_ONLY="N" REQUIRED="N" SCALE="" TEXT_LENGTH="15" TYPE="DTYPE_ID" USE_DEFAULT_SENSITIVITY="Y" VALIDATION="" VALIDATION_MESSAGE=""></FIELD>
<!-- End: New object section -->


2) New script in the BC:
New Script is not visible but there is an indicator that says a new object was added.

<!-- Start: New object section -->
<BUSCOMP_SERVER_SCRIPT Name="sscfcli">
</BUSCOMP_SERVER_SCRIPT>
<!-- End: New object section -->