We faced a peculiar issue on the Quote Catalog view , Siebel version 22.214.171.124 SIA .
When users went to the Quote Catalog view, which is where one starts adding products to the quote for the Pricing Engine, they noticed the Catalog did not load. This happened usually on the the first quote after login.
But once the Price List of the Quote was selected, or reselected, and the view was refreshed, the Catalog Items would start appearing.
The Business Component is [Quote Catalog Internal Product by Price List Optional] and it has a user property [SetPriceListSearch] set to ‘Y’. A simple search brings the bookshelf where it is mentioned that
‘This user property indicates whether the
[Price List Id] = GetProfileAttr("PriceListId") search specification is applied to the business component. By default, it is set to Y, so only products in the current price list are displayed.’
Turns out, this is one of those many vanilla Profile Attributes managed by Siebel itself. It is set to the Quote’s Price List’s Id when a Price List value is selected in the Quote. Otherwise, it is blank.
So the issue happens only for the first Quote selected by the user after login, if he has not changed the PriceList value of the Quote. The profile attribute is not set, even if there is already a Price List value at the Quote.
Inorder to fix this, I added a simple RunTimeEvent on the QuoteForm applets’ DisplayApplet event.
This would set the value of this ProfileAttribute when the Quote applet is loaded. With this fix in place, the Catalog items now appear correctly.
The other way to fix this is to disable the BC User property, so that items from every Price list is visible. But this would depend on your business use case.