I came to know about really weird behavior of Inactive Flag (in Siebel tools) after Amol (a colleague) pointed it to me. I was not ready to believe him and had to try for myself (in the process I lost a bet of One Trillion $
to him and promised him to gave a written apology
)
Scenario:
- Create a business service in Siebel tools.
- Compile this business service it in SRF.
- Run that business service
Expected Behavior: It should run successfully
Actual Behavior: It runs successfully - Inactive the business service by clicking on Inactive Flag.
- Compile it again in SRF
- Run that business service
Expected Behavior: It should give error that BS does not exists
Actual Behavior: It still runs successfully.
Observation:
- If you do a compile an object (incremental compile) after making that object inactive Siebel doesn’t delete the object definition from SRF and that object still works as expected.
- If you make changes to inactive object definition those are not picked up. Last active object definition is picked up.
- Even if you rename the object after making it inactive or compile the project it doesn’t makes that object inactive.
- This only happens for parent objects such as Business Component, Business Objects or Business Service. If you make inactivate BC fields and you do an incremental compile it works as expected
- Only after full compile an inactive object definition is removed from SRF.
Probable Reason:
Rahul (another colleague) pointed out that may be Siebel Compile process just skips the object that are marked as inactive.
So, when an object is marked as inactive and we do an incremental compile Siebel does nothing (it means it skips the compile of this object and SRF remains as it is) that is why you still get the old active object definition.
But when we do a full compile all the objects definitions are compiled from scratch and inactive objects are skipped hence you get an error. I tried this with Business Service and Business Component objects and both worked in same way. I am not sure if this valid for all the objects or there are exceptions.
If anybody out there can put some more light on it or explain it better (I still cannot believe this happens) it will be really great.
P.S: Amol I do apologise for doubting you
.


(4 votes, average: 4.75 out of 5)