Skip to main content

Error SBL-DAT-00523 or SBL-DAT-00523 Occurs When Modify Objects On My Workspace (Doc ID 2527635.1)

APPLIES TO:

Siebel Tools - Version 18.12 and later
Information in this document applies to any platform.
SYMPTOMS

Using SADMIN user can not modify any object, following error is displayed:

ERRORS:
----------------
The state of selected workspace has been modified by another user , workspace will refresh itself and proceed .(SBL-DAT-60295)

OR

The selected record has been modified by another user since it was retrieved.  Please continue. (SBL-DAT-00523)


STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Log in to Siebel Tools using SADMIN
2. Try to modify an object
3. Above error is displayed

CAUSE
In the siebdevopenWS.log, there are below error messages:
ObjMgrLog Error 1 000000025ca60cc4:0 2019-04-04 08:12:11 (workspacemgr.cpp (2672)) SBL-DAT-00523: The selected record has been modified by another user since it was retrieved. Please continue.

ObjMgrBusCompLog Error 1 000000025ca60cc4:0 2019-04-04 08:12:11 (sqlobj.cpp (43149)) SBL-DAT-00523: The selected record has been modified by another user since it was retrieved. Please continue.

ObjMgrSessionLog Warning 2 000000025ca60cc4:0 2019-04-04 08:12:11 (physmod.cpp (5186)) SBL-DAT-00473: No transaction is in progress

ObjMgrLog Error 1 000000025ca60cc4:0 2019-04-04 08:12:11 (bcrepos.cpp (9534)) SBL-DAT-00523: The selected record has been modified by another user since it was retrieved. Please continue.

From my research, error SBL-DAT-00523: The selected record has been modified by another user since it was retrieved. Please continue." is generally caused by blank STATUS_CD in the S_WORKSPACE table.

Please find below INSERT statement from siebdev_creatednewWS.log:

INSERT INTO SIEBEL1.S_WORKSPACE (
CONFLICT_ID,
DB_LAST_UPD_SRC,
DB_LAST_UPD,
LAST_UPD,
CREATED,
LAST_UPD_BY,
CREATED_BY,
MODIFICATION_NUM,
ROW_ID,
COMMENTS,
INACTIVE_FLG,
LATEST_VER,
NAME,
OBJ_LOCKED_FLG,
PAR_WS_ID,
PAR_WS_VER,
REPOSITORY_ID,
BUILD_BRANCH_FLG)
VALUES (:1, :2, current_date, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17)

Note, there is no STATUS_CD column in the INSERT statement.
In vanilla, STATUS_CD is bind variable 18 in the in the INSERT statement when creating a new workspace.

This is caused by setting the Workapce Name to a dev_* workspace:
[Workspace]
Name = dev_sadmin_test2
Version = Latest

Although, it is able to go the correct workspace. when you open tools, setting Workapce Name to a dev_* workspace is not supported.

It's should set to Main or a Integration Workspace. Please see below example on setting the Workapce Name in a .cfg file:
Using Siebel Tools > Parallel Development Using Workspaces > Administering Parallel Development using Workspaces > Launching the Web Client with a Specified Workspace
https://docs.oracle.com/cd/E88140_01/books/UsingTools/parallel_development_using_workspaces9.html#wp1010563



SOLUTION

To fix the error,   please follow the below steps:
1) Open tools.cfg

2) Change tools.cfg to point to Main or a Integration Workspace.

Change from:
Workspace]
Name = dev_sadmin_test2
Version = Latest

To:
Workspace]
Name = Main
Version = Latest

3) Log in to Tools and test the behavior.

Source:
https://support.oracle.com/ Doc ID 2527635.1

Comments

Popular posts from this blog

How to set Profile Attribute in Siebel Workflow

For setting the Profile Attribute in Siebel Workflow, follow below steps: Add Business Service box in workflow. Open Business Service properties. Set  SessionAccessService in Business Service Name. Set  SetProfileAttr in Method Name. Then click on Business Service and set Input Arguments as below: Against Name argument you will add your profile attribute name and against Value argument you will add value for the new profile attribute, it could be from Process Property or Literal.

How to call Popup Applet through Server Script in Siebel

Background: Based on the requirements you need to show data or reports on a popup applet. You can invoke popup applet using workflow (below business service will be used in business service step), applet server script or browser script and using vanilla method and setting field user properties. Procedure: Below is the script for calling popup applet through server script: if (MethodName == "MethodName") { var oServiceAF = TheApplication().GetService("SLM Save List Service"); var inputPropAF = TheApplication().NewPropertySet(); var outputPropAF = TheApplication().NewPropertySet(); inputPropAF.SetProperty("Applet Name","ABC Popup Applet"); inputPropAF.SetProperty("Applet Mode","6"); inputPropAF.SetProperty("Applet Height", "700"); inputPropAF.SetProperty("Applet Width", "700"); oServiceAF.InvokeMethod("LoadPopupApplet", inputPropAF, outputPropAF) return (CancelOperati...

How to create and publish Inbound Web Service in Siebel based on Workflow

Inbound Web Services: The Inbound Web Service allows an external system to call a Siebel published Web Service. You can publish a business service or a business process as a Web Service and generate a Web Service Definition Language (WSDL) file that an external system can import. The Inbound Web Services can only be published from Siebel C using SOAP-RPC binding. Source: Oracle Docs What Is The Difference Between Web Services and APIs? An API is an interface that allows you to build on the data and functionality of another application, while a web service is a network-based resource that fulfills a specific task. Yes, there’s overlap between the two: all web services are APIs, but not all APIs are web services. Both web services and APIs are — at their core — very useful and very much used today. However, it’s the web services associated with SOAP and/or Service Oriented Architecture which are falling out of favor. Source: NordicApis Process: Prepare the workflow which will serve as Si...