Search This Blog

SBL-DAT-00236: An error has occurred while deleting the record. Please try to delete again.

Applies to:

Siebel Tools - Version: 7.7.2 SIA [18325] - Release: V7
z*OBSOLETE: Microsoft Windows Server 2003
Product Release: V7 (Enterprise)
Version: 7.7.2 [18325] Life Sci
Database: Oracle 9.2.0.4
Application Server OS: Microsoft Windows 2003 Server
Database Server OS: IBM AIX 5L 5.1

This document was previously published as Siebel SR 38-2889256007.

Symptoms

SBL-DAT-00236, SBL-DBC-00111

Hi,

we´ve got problems while testing a ebc. We´ve created it as described in the Siebel Bookshelf. (imported External Table Schema with *.sql file, mapped the field N_ID to the System Field Id, created EBC and an Applet to show the table) The Web Hierarchy looks good (screenshot in attachment). In the webfrontend i can see the informations from the external table but the following error occurs while trying to insert or to delete a record.

--------------------------- cut from dedicated client´s siebel.log file -------------------------
Delete:

SQLParseAndExecute    Statement    4    0    2006-02-09 10:49:32    
DELETE FROM SIEBEL_DEV.BODE_TESTTAB
WHERE N_ID = :1
SQLParseAndExecute    Bind Vars    4    0    2006-02-09 10:49:32    1: 2
SQLParseAndExecute    Execute    5    0    2006-02-09 10:49:32        OCIStmtExecute: DML error or affected 0 rows
ObjMgrBusCompLog    Error    1    0    2006-02-09 10:49:32    (oracon.cpp (3033)) SBL-DBC-00111: Fehler beim Schreiben auf einen Datensatz.
                                                                      [in english: Error during the writing on a data record] Fahren Sie fort, oder bitten Sie Ihren Systemadministrator, Ihre Anwendungskonfiguration zu überprüfen, falls das Problem weiterhin besteht.
SQLParseAndExecute    Execute    5    0    2006-02-09 10:49:32    ORA-01031: insufficient privileges

ObjMgrSqlLog    Detail          4    0    2006-02-09 10:49:32    
***** SQL Statement Write Time: 0.023 seconds *****

ObjMgrSqlObjLog    WriteRecord          5    0    2006-02-09 10:49:32    End: WriteRecord for SqlObj at bfcb298
ObjMgrDBConnLog    EndTransaction    4    0    2006-02-09 10:49:32    EndTransaction (ABORT) was called on DB connection ae69468
ObjMgrBusCompLog    Error               1    0    2006-02-09 10:49:32    (sqlobj.cpp (12470)) SBL-DBC-00111: Fehler beim Schreiben auf einen Datensatz.
                        ... to be continued ...

Cause


[in english: Error during the writing on a data record] Fahren Sie fort, oder bitten Sie Ihren Systemadministrator, Ihre Anwendungskonfiguration zu überprüfen, falls das Problem weiterhin besteht.
SQLParseAndExecute Execute 5 0 2006-02-09 10:49:32 ORA-01031: insufficient privileges

ObjMgrSqlLog Detail 4 0 2006-02-09 10:49:32
***** SQL Statement Write Time: 0.023 seconds *****

ObjMgrSqlObjLog WriteRecord 5 0 2006-02-09 10:49:32 End: WriteRecord for SqlObj at bfcb298
ObjMgrDBConnLog EndTransaction 4 0 2006-02-09 10:49:32 EndTransaction (ABORT) was called on DB connection ae69468
ObjMgrBusCompLog Error 1 0 2006-02-09 10:49:32 (sqlobj.cpp (12470)) SBL-DBC-00111: Fehler beim Schreiben auf einen Datensatz.
[in english: Error during the writing on a data record] Fahren Sie fort, oder bitten Sie Ihren Systemadministrator, Ihre Anwendungskonfiguration zu überprüfen, falls das Problem weiterhin besteht.
ObjMgrBusCompLog Error 1 0 2006-02-09 10:49:32 (buscomp.cpp (26107)) SBL-DAT-00236: Fehler beim Löschen des Datensatzes.

[in english: Error deleting on a data record]
Insert:

EventContext EvtCtxApplet 4 0 2006-02-09 12:50:54 EXP_Testapplet (WriteRecord)
ProcessRequest ProcessRequestDetail 4 0 2006-02-09 12:50:54 SWE Frame Manager - Invoke Applet Method: applet=EXP_Testapplet;
method=WriteRecord
ObjMgrSqlObjLog WriteRecord 5 0 2006-02-09 12:50:54 Begin: WriteRecord for SqlObj 'Gehe myTest EBC' at c0f0008
ObjMgrSqlLog Detail 4 0 2006-02-09 12:50:54 INSERT/UPDATE statement with ID: Unknown

INSERT INTO SIEBEL_DEV.BODE_TESTTAB (
N_ID,
VNAME,
NNAME)
VALUES (:1, :2, :3)

ObjMgrSqlLog Detail 4 0 2006-02-09 12:50:54 Bind variable 1: 1-8M2KT [<- variable generated automatically]
ObjMgrSqlLog Detail 4 0 2006-02-09 12:50:54 Bind variable 2: TEST
ObjMgrSqlLog Detail 4 0 2006-02-09 12:50:54 Bind variable 3: SNDTEST
ObjMgrSqlLog Debug 5 0 2006-02-09 12:50:54 sscfdm +0xc001e = CSSSqlObj::WriteRecord() +0xa9e
MFC70U +0x21916 = Ordinal5316() +0x3f

SQLParseAndExecute Statement 4 0 2006-02-09 12:50:54

INSERT INTO SIEBEL_DEV.BODE_TESTTAB (
N_ID,
VNAME,
NNAME)
VALUES (:1, :2, :3)

SQLParseAndExecute Bind Vars 4 0 2006-02-09 12:50:54 1: 1-8M2KT
SQLParseAndExecute Bind Vars 4 0 2006-02-09 12:50:54 2: TEST
SQLParseAndExecute Bind Vars 4 0 2006-02-09 12:50:54 3: SNDTEST
SQLParseAndExecute Execute 5 0 2006-02-09 12:50:54 OCIStmtExecute: DML error or affected 0 rows
ObjMgrBusCompLog Error 1 0 2006-02-09 12:50:54 (oracon.cpp (3033)) SBL-DBC-00111: Fehler beim Schreiben auf einen Datensatz.

Fahren Sie fort, oder bitten Sie Ihren Systemadministrator, Ihre Anwendungskonfiguration zu überprüfen, falls das Problem weiterhin besteht.
SQLParseAndExecute Execute 5 0 2006-02-09 12:50:54 ORA-01031: insufficient privileges

ObjMgrSqlLog Detail 4 0 2006-02-09 12:50:54
***** SQL Statement Write Time: 0.011 seconds *****
--------------------------------------------------------------------------------------------------------------------------

Solution


The customer was getting

ORA-01031: insufficient privileges
(Oracle Database error)

leading to the following Siebel Error messages:

SBL-DBC-00111: An error has occurred writing to a record.
Please continue or ask your systems administrator to check your application configuration if the problem persists.

(SBL-DBC-00111: Fehler beim Schreiben auf einen Datensatz.)

and

SBL-DAT-00236: An error has occurred while deleting the record.
Please try to delete again.

(SBL-DAT-00236: Fehler beim Löschen des Datensatzes.)

when updating or deleting from an External Table (External Business Component - EBC).


To allow access to external tables, the Siebel Database user needs object privileges to access external tables - just as it needs access privileges on the Siebel Tables.

For the Siebel Application, the necessary access rights are granted to the role SSE_ROLE.

grant select, insert, delete, update on <table name> to SSE_ROLE;

would grant these four privileges to the SSE_ROLE and consequently to the Siebel database user, who has SSE_ROLE assigned.

To grant all available privileges,

grant all on SIEBEL_DEV.BODE_TESTTAB to SSE_ROLE

or

grant all on SIEBEL_DEV.BODE_TESTTAB to SADMIN

in this customer's example could also be used.

Please consult your DBA for this, as granting of privileges will depend on security concepts in place.



Applies to:

Siebel Tools - Version: 7.8.2 [19213] and later   [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows Server 2003
Product Release: V7 (Professional)
Version: 7.8.2 [19213]
Database: Oracle 9.2.0.0
Application Server OS: Microsoft Windows 2003 Server SP1
Database Server OS: Sun Solaris 5.6

This document was previously published as Siebel SR 38-3133574891.

Symptoms

The issue is that Accounts cannot be deleted.

The user will select Delete from the menu, Ctl-Alt-D, or clicked the Button, everything seems to work fine until the user steps off the record. Once the user steps off the record, a message pops up:

--------------------------------------------------------------------------
[1] An error has occurred while deleting this record.
Please try to Delete again (SBL-DAT-00236)
[2] Column "not defined in table '<?>' (SBL-DAT-00368)
--------------------------------------------------------------------------

Cause

"Organization Id" field in Service Agreement business component has a wrong configuration as follows;

Multi Valued : FALSE
Multi Value Link : Organization
Column : null

Since "Organization Id" field is a MVF, Multi Valued property has to be TRUE.

Solution

Set Multi Valued property of "Organization Id" field to TRUE and the end user can delete account records with no problem.


Applies to:

Siebel Tools - Version: 7.8.2 [19213] and later   [Release: V7 and later ]
z*OBSOLETE: Microsoft Windows Server 2003
Product Release: V7 (Professional)
Version: 7.8.2 [19213]
Database: Oracle 9.2.0.0
Application Server OS: Microsoft Windows 2003 Server SP1
Database Server OS: Sun Solaris 5.6

This document was previously published as Siebel SR 38-3133574891.

Symptoms

The issue is that Accounts cannot be deleted.

The user will select Delete from the menu, Ctl-Alt-D, or clicked the Button, everything seems to work fine until the user steps off the record. Once the user steps off the record, a message pops up:

--------------------------------------------------------------------------
[1] An error has occurred while deleting this record.
Please try to Delete again (SBL-DAT-00236)
[2] Column "not defined in table '<?>' (SBL-DAT-00368)
--------------------------------------------------------------------------

Cause

"Organization Id" field in Service Agreement business component has a wrong configuration as follows;

Multi Valued : FALSE
Multi Value Link : Organization
Column : null

Since "Organization Id" field is a MVF, Multi Valued property has to be TRUE.

Solution

Set Multi Valued property of "Organization Id" field to TRUE and the end user can delete account records with no problem.


2 comments:

  1. Good Post, was Getting Same Error, My Scenario is little bit different, i was using an EBC which is based on a External View, for that View GRANT SSE_ROLE was not Provided, After Granting that SSE Role, But Still Didnot Worked,
    Solution:
    I extended the Oracle View to Point to ROW_ID and Mapp the System Field Id to Row:id and used it in Buscomp, Compile and there u go, problem resolved.
    Regards
    Sanjay

    ReplyDelete
  2. Thanks Sanjay. Appreciate your effort to post in this blog.

    ReplyDelete