This is a pretty popular and interesting question. I guess anybody who knows Siebel architecture (Layered Architecture not Server Architecture) properly should be able to answer it. But truth is that most of the people I have interviewed have given a wrong answer of this question. Even people have 2 years of experience have got it wrong.
The question is something like this.
I have a search spec on applet which says [Type] = “A” and I have Search Spec on BC which says [Type] =”B”. Now what records will be visible to me on UI?
Before looking at the answer of this question I would like you to have a thought on this and answer it to yourself and see if you can get it right. Having a guess is not sufficient you should also give the reason for your answer.
- Records with Type A
- Records with Type B
- None
Answer to above question is
None
Explaination:
We all know about 3 layered architecture of Siebel.
Database is going to fetch all the records which will reach business layer. Here Search Spec of the BC will filter the records with Type B and only records with Type A will be allowed to reach next layer that is UI layer. Here the search spec of applet will come into picture and records with Type A are going to get filtered which means that number of records reaching to user will be ZILCH
In other words search spec on Applet and BC takes AND operator and the where clause in SQL is going to be Where type = ‘A’ and type = ‘B’ which will always return zero records hence no records on UI
Hope that helps