cancel
Showing results for 
Search instead for 
Did you mean: 

SQL ERROR

Former Member
0 Kudos

HI EXPERTS!

CAN ANYBODY TELL ME HOW TO RESOLVE THIS RUNTIME ERROR ON EXECUTING TRANSACTION PC00_M40_CALC.

'An SQL error occurred when accessing a table.'

-


Information on where terminated

-


The termination occurred in the ABAP program "CL_HRPAYIN_SLABRATES==========CP

" in "GET_SLAB_RATE".

The main program was "HINCALC0 ".

The termination occurred in line 12 of the source code of the (Include)

program "CL_HRPAYIN_SLABRATES==========CM002 "

of the source code of program "CL_HRPAYIN_SLABRATES==========CM002 " (when

calling the editor 120).

Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in

the

procedure "GET_SLAB_RATE" "(METHOD)" but was not handled locally, not declared

in the

RAISING clause of the procedure.

The procedure is in the program "CL_HRPAYIN_SLABRATES==========CP ". Its source

code starts in line 1

of the (Include) program "CL_HRPAYIN_SLABRATES==========CM002 ".

-


Source code extract

-


000010 METHOD get_slab_rate .

000020

000030 DATA: wa_t7int1 TYPE t7int1,

000040 wa_t7int3 TYPE t7int3,

000050 slab_code TYPE t7int1-slcod.

000060 CLEAR: wa_t7int1 ,

000070 wa_t7int3 ,

000080 slab_code .

000090

000100

000110 * Select slab code from t7int1.

-


> SELECT * FROM t7int1 INTO wa_t7int1

000130 WHERE sltyp = slab_type

000140 AND begda LT ref_date

000150 AND endda GE ref_date.

000160 MOVE wa_t7int1-slcod TO slab_code.

000170 ENDSELECT.

000180

000190 * Find out the rate for the salb code in which the income falls.

000200 SELECT * FROM t7int3 INTO wa_t7int3 WHERE slcod = slab_code ORDER BY

000210 hirge.

000220 IF wa_t7int3-hirge GE income.

000230 EXIT.

000240 ENDIF.

000250 ENDSELECT.

000260

000270 slab_rate = wa_t7int3-txval.

000280

000290

000300 ENDMETHOD.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Ranjna,

The shortdump in ST22 gives you in the secition "How to correct the error" the "Database error text", which should normally tell the SQL error's text.

In "System environment"/System environment" the Work process number is displayed. The according developer trace to the work process (accessible via SM50 or directly as dev_<wp no> in the home directory) may give further usable information.

Regards,

Guenther

Answers (3)

Answers (3)

Former Member
0 Kudos

Ranjna,

Have you looked at the code? The line that causes the error is rather specific:

SELECT * FROM t7int1 INTO wa_t7int1

Looks like it's loading wa_t7int1 with the contents of t7int1. So, do both of these tables exist? Is there enough space in the wa_t7int1 table for the contents of the t7int1.

Are there any locks on these tables that are preventing access?

Mind as well start with the basics and more forward.

Cheers,

Tim

Former Member
0 Kudos

Hi Ranjana,

I want to know the SAP ver. and database (SQL or DB2..etc.)

Than only we can give the solution.

Regards

Rajnish

former_member433984
Active Contributor
0 Kudos

Hello Ranjna,

in ST22 where you see this message should be process number generated exception.

Look in dev_X from corresponding process and post it here (if too long, please cut the file). We have to see the patchlevel of dbmsslib.dll and SAP kernel as well.

best regards,

Yaroslav