Business Component Not In Cached Update Mode.
Symptoms
Customer is getting an error when clicking on "Verify" menu item under Sales Orders, view "Order Entry - Line Items Detail View (Sales)":
Errort Message
1) (SBL-BPR-00162)(SBL-DAT-00469)||Error invoking service 'Context Service', method 'SyncRowSetData' at step 'Sync Row Set'.(SBL-BPR-00162)
2) Business component 'Order Entry - Line Items' is not in cached update mode.(SBL-DAT-00469)
Reproducible Steps
1. Create an order using a customer product and customize it
2. Click on the "Verify" menu time on the Order Header. It directly throws the above mentioned error.
Expected Behaviour:
Clicking on "Verify" should provide the eligibility related status and comments and error if applicable.
Actual Behaviour:
Clicking on "Verify" is throwing the above mentioned error message for all the users. Because of the error above eligibility workflow does not synchronize successfully, eligibility status is not written to the DB
Environment Details:
Customer is having this issue in their custom environment of 7.8.2.10.
Business Impact:
Customer is not able to proceed further with their business requirement due to this issue.
Cause
The error happens when the underlying eligibility workflow tries to synchronize all changes to the DB. Method name = SyncRowSetData
BS name = Context Service
Error = Error invoking service 'Context Service', method 'SyncRowSetData' at step 'Sync Row Set'.(SBL-BPR-00162)
--
Unable to load message 0xffff(SBL-GEN-00000)
Errort Message
1) (SBL-BPR-00162)(SBL-DAT-00469)||Error invoking service 'Context Service', method 'SyncRowSetData' at step 'Sync Row Set'.(SBL-BPR-00162)
2) Business component 'Order Entry - Line Items' is not in cached update mode.(SBL-DAT-00469)
Reproducible Steps
1. Create an order using a customer product and customize it
2. Click on the "Verify" menu time on the Order Header. It directly throws the above mentioned error.
Expected Behaviour:
Clicking on "Verify" should provide the eligibility related status and comments and error if applicable.
Actual Behaviour:
Clicking on "Verify" is throwing the above mentioned error message for all the users. Because of the error above eligibility workflow does not synchronize successfully, eligibility status is not written to the DB
Environment Details:
Customer is having this issue in their custom environment of 7.8.2.10.
Business Impact:
Customer is not able to proceed further with their business requirement due to this issue.
Cause
The error happens when the underlying eligibility workflow tries to synchronize all changes to the DB. Method name = SyncRowSetData
BS name = Context Service
Error = Error invoking service 'Context Service', method 'SyncRowSetData' at step 'Sync Row Set'.(SBL-BPR-00162)
--
Unable to load message 0xffff(SBL-GEN-00000)
Business component 'Order Entry - Line Items' is not in cached update mode.(SBL-DAT-00469)
This will stop writing the message into the DB
In order to improve performance of mass updates to the DB a new BC mode was introduced:
Cache Update Mode. This allows Siebel to write updates in one block into the DB.
When Verify button is clicked it raises the QuotesAndOrdersValidate signal which first does a reprice. During the reprice "Context Service" BS is called and when it tries to synchronize the information BeginCachedUpdates is called for the parent BC. In BeginCachedUpdates Siebel loops through all of the child BCs and set them into cached update mode.
This is where the error occurs. Customer has added a custom VBC and has made it a child BC of the "Order Entry – Line Items" BC in the "Order Entry (Sales)" BO. When upper loop reaches the custom VBC and tries to set cached update mode it errors out since VBCs are not supported in cached update mode.
Solution
In order to improve performance of mass updates to the DB a new BC mode was introduced:
Cache Update Mode. This allows Siebel to write updates in one block into the DB.
When Verify button is clicked it raises the QuotesAndOrdersValidate signal which first does a reprice. During the reprice "Context Service" BS is called and when it tries to synchronize the information BeginCachedUpdates is called for the parent BC. In BeginCachedUpdates Siebel loops through all of the child BCs and set them into cached update mode.
This is where the error occurs. Customer has added a custom VBC and has made it a child BC of the "Order Entry – Line Items" BC in the "Order Entry (Sales)" BO. When upper loop reaches the custom VBC and tries to set cached update mode it errors out since VBCs are not supported in cached update mode.
Solution
Bug#10605225 was created to address this in the Siebel code and to offer a solution without the need of further configuration changes on customer side.
Following Siebel versions are offered for fixing this issue:
Following Siebel versions are offered for fixing this issue:
- 7.8.2.14QF
- 7.8.2.16QF
- 8.2.2
- 8.0.0.14FP
- 8.1.1.6FP
- 8.1.1.3QF
- 8.1.1.4QF
- 1. Start Siebel Tools
- 2. Under Class, create a new record
- 3. Add the following information to the new class:
- Name: CSSBCOrderMgmtBaseVBC
- Super Class: CSSBCVExtern
- Dll: SSCAOMBC
- Object Type: Business Component
- 4. Under Business Component, search for your custom VBC
- 5. Change the class for this VBC to CSSBCOrderMgmtBaseVBC
- 6. Compile all objects that have been changed
- 7. Apply the new srf to the environment
You may need to repeat steps 4-5 for any future VBC where you plan on using it as a child of the Quote Item or Order Entry - Line Items BC.
Please review exact additional configuration steps by reviewing appropriate Maintenance Release Guide.
Related Posts
No comments :