06-18-2008 11:12 AM
Dear all
I am facing a problem related to abap program, when I run the program like zmatlist
When I give Material Number in selection option ( for example 20000 Material Number )
In one go then abap report give me the following DUMP
DBIF_RSQL_INVALID_RSQL
CX_SY_OPEN_SQL_DB
And when in give selection option in chunk the that report run fine
After the dump I check dev_w0 file it shows like that
C *** ERROR => max. statement length (65536) exceeded
[dbsloci.c 5759]
C Dumping statement ...
C 0 | TEXT | 6 | SELECT
C 1 | TEXT | 4 | T_00
C 2 | TEXT | 1 | .
C 3 | IDENTIFIER | 5 | BISMT
.
.
.
So on
C 17481 | TEXT | 3 | AND
C 17482 | TEXT | 4 | T_02
C 17483 | TEXT | 1 | .
C 17484 | IDENTIFIER | 5 | WERKS
C 17485 | TEXT | 1 | =
C 17486 | MARKER(8588)| 0 | NULL
C token_cnt=17487, input_cnt=8589, marker_cnt=8589, stmt_length=86128
B ***LOG BYK=> current SQL statement exceeds a database limit [dbtran#5 @ 7261] [dbtran 7261 ]
B dbtran ERROR LOG (hdl_dbsl_error): DbSl 'PRE'
thankx
Rayyan
06-18-2008 11:13 AM
06-18-2008 11:14 AM
Check the field you are using in the select query , I think you are passing the data to the field which is not long enough .
06-18-2008 11:14 AM
Hi,
Check your Select queries.The fields you are selecting from a table may not be same as strcture of internal table.There may be a reason that too many records are there in DB and memory for expanding internal table is not sufficient.
06-18-2008 11:14 AM
Hi ,
Could you please paste the SQL statement resulting in the dump.
Regards
Arun
06-18-2008 11:15 AM
Hi,
The dump is due to some mismatch in one of your select statements pls check it.
check the decleration of your inter table wether all the fields given are in order same as given in the select.
Hope this helps..
regards,
Sharath
06-19-2008 4:00 AM
abper write following query
004280 perform authority_begin(rsaqexce).
004290 perform authority(rsaqexce) using 'MARA'.
004300 perform authority(rsaqexce) using 'MAKT'.
004310 perform authority(rsaqexce) using 'MARC'.
004320 perform authority(rsaqexce) using 'MBEW'.
004330 perform authority_end(rsaqexce).
004340 perform %comp_ldesc.
-
> select MARABISMT MARAEKWSL MARAERNAM MARAERSDA MARALIQDT MARALVORM
004360 MARASPART MARAZEINR MAKTMAKTX MAKTMATNR MARCAUSME MARCBESKZ
004370 MARCDISMM MARCDISPO MARCEISBE MARCEKGRP MARCFEVOR MARCMABST
004380 MARCSOBSL MARCSSQSS MARCSTRGR MARCUSEQU MARCWEBAZ MARCWERKS
004390 MBEWMATNR MBEWSALK3 MBEWVERPR MBEWVPRSV
004400 into (MARA-BISMT , MARA-EKWSL , MARA-ERNAM , MARA-ERSDA , MARA-LIQDT , M
004410 , MARA-MTART , MARA-QMPUR , MARA-SPART , MARA-ZEINR , MAKT-MAKTX ,
004420 , MARC-BSTMA , MARC-BSTMI , MARC-BSTRF , MARC-DISLS , MARC-DISMM ,
004430 , MARC-MABST , MARC-MATNR , MARC-MINBE , MARC-PLIFZ , MARC-PRCTR ,
004440 , MARC-USEQU , MARC-WEBAZ , MARC-WERKS , MBEW-BKLAS , MBEW-BWKEY ,
004450 , MBEW-SALK3 , MBEW-VERPR , MBEW-VPRSV )
004460 from ( MARA
004470 inner join MAKT
004480 on MAKTMATNR = MARAMATNR
004490 inner join MARC
004500 on MARCMATNR = MAKTMATNR
004510 inner join MBEW
004520 on MBEWMATNR = MARCMATNR
004530 and MBEWBWKEY = MARCWERKS )
004540 where MARA~BISMT in SP$00009
09-08-2008 9:55 AM
Hi,
The abap dump is due to the Select query...
Check the select query...
Regards,
Kunjal
09-08-2008 9:46 AM
write perform authority statement with 'CL_QUERY_TAB_ACCESS_AUTHORITY'
PERFORM AUTHORITY_BEGIN(RSAQEXCE) using 'CL_QUERY_TAB_ACCESS_AUTHORITY'.
PERFORM AUTHORITY(RSAQEXCE) USING 'EKKO' 'CL_QUERY_TAB_ACCESS_AUTHORITY'.
PERFORM AUTHORITY(RSAQEXCE) USING 'LFA1' 'CL_QUERY_TAB_ACCESS_AUTHORITY'.
PERFORM AUTHORITY(RSAQEXCE) USING 'EKPO' 'CL_QUERY_TAB_ACCESS_AUTHORITY'.
PERFORM AUTHORITY(RSAQEXCE) USING 'EBAN' 'CL_QUERY_TAB_ACCESS_AUTHORITY'.
PERFORM AUTHORITY_END(RSAQEXCE) using 'CL_QUERY_TAB_ACCESS_AUTHORITY'.