Runtime Error DBIF_RSQL_INVALID_RSQL
Hello Gurus,
One of the ABAP programs failed in the process chains with a short dump.
The details are as follows:
Could you help me resolve this?
Thanks and best wishes,
raj
Runtime Error DBIF_RSQL_INVALID_RSQL
Exception CX_SY_OPEN_SQL_DB
Occurred on 02.07.2008 at 20:55:20
What happened?
Error in ABAP application program.
The current ABAP program "Z_GENERATE_PLAN" had to be terminated
because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
is especially useful if you want to keep a particular message.
Error analysis
An exception occurred. This exception will be dealt with in more detail
below. The exception, assigned to the class 'CX_SY_OPEN_SQL_DB', was not
caught, which
led to a runtime error. The reason for this exception is:
The SQL statement generated from the SAP Open SQL Statement violates a
restriction imposed by the database system used in R/3.
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the available memory.
o ...
You can usually find details in the system log (SM21) and in the
developer trace of the work process (ST11).
If an error occurs the developer trace often informs you about the
current restrictions.
How to correct the error
The SAP Open SQL statement must be divided into several smaller units.
If the problem occurred due to the use of an excessively large table
in an IN itab construct, you can use the addition FOR ALL ENTRIES
instead.
When you use this addition, the statement is split into smaller units
according to the restrictions of the database system used.
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"DBIF_RSQL_INVALID_RSQL" CX_SY_OPEN_SQL_DBC
"ZGENERATE_PLAN" or "Z_GENERATE_PLAN"
"START-OF-SELECTION"
Thanks and best wishes,
raj
Tried this solution:
The current size of one of the input datasets was breaking the maximum length of the SQL statement (which is generated dynamically). Adjust edthe program to handle situations when the input is too large.
Will update you.
Thanks,
Raj
Similar Messages
-
Hi,
Following code is working fine in Development system and in Production system I am getting a runtime error. Only difference I am finding is in r_lifnr value. In development system I have few lifnr and in Production system it's not so... am I getting error because of it? Is there any restriction to no. of items populated in a range? Or Basis person need to change any parameter? Enclosed the detail dump below the code...
Advance thanks.
Regards,
Balaji Viswanath.
Code:
SELECT bukrs
lifnr
augdt
augbl
zuonr
gjahr
belnr
buzei
waers
dmbtr
wrbtr
zlsch
shkzg
blart
gsber
sgtxt
INTO TABLE t_bsak_tmp
FROM bsak CLIENT SPECIFIED
WHERE mandt = sy-mandt AND
lifnr IN r_lifnr AND
bukrs IN s_bukrs AND
augdt IN s_augdt AND
blart IN s_blart.
IF sy-subrc <> 0.
No data found for selection criteria
MESSAGE i018.
LEAVE LIST-PROCESSING.
ENDIF.
Dump:
Runtime Errors DBIF_RSQL_INVALID_RSQL
Exception CX_SY_OPEN_SQL_DB
Occurred on 14.11.2005 at 14:35:22
Error in the module RSQL accessing the database interface.
What happened?
Error in ABAP application program.
The current ABAP program "/DS1/FI_CR_REPT_PGSR802_VEND_P" had to be terminated
because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
Error analysis
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was
neither
caught nor passed along using a RAISING clause, in the procedure
"GET_CLRD_VEN_DATA" "(FORM)"
Since the caller of the procedure could not have expected this exception
to occur, the running program was terminated.
The reason for the exception is:
The SQL statement generated from the SAP Open SQL Statement violates a
restriction imposed by the database system used in R/3.
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the available memory.
o ...
You can usually find details in the system log (SM21) and in the
developer trace of the work process (ST11).
If an error occurs the developer trace often informs you about the
current restrictions.
How to correct the error
The exception must either be prevented, caught within the procedure
"GET_CLRD_VEN_DATA"
"(FORM)", or declared in the procedure's RAISING clause.
To prevent the exception, note the following:
The SAP Open SQL statement must be divided into several smaller units.
If the problem occurred due to the use of an excessively large table
in an IN itab construct, you can use the addition FOR ALL ENTRIES
instead.
When you use this addition, the statement is split into smaller units
according to the restrictions of the database system used.
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"DBIF_RSQL_INVALID_RSQL" CX_SY_OPEN_SQL_DBC
"/DS1/FI_CR_REPT_PGSR802_VEND_P" or "/DS1/FI_CR_REPT_PGSR802_VEND_P"
"GET_CLRD_VEN_DATA"
If you cannot solve the problem yourself, please send the
following documents to SAP:
1. A hard copy print describing the problem.
To obtain this, select the "Print" function on the current screen.
2. A suitable hardcopy prinout of the system log.
To obtain this, call the system log with Transaction SM21
and select the "Print" function to print out the relevant
part.
3. If the programs are your own programs or modified SAP programs,
supply the source code.
To do this, you can either use the "PRINT" command in the editor or
print the programs using the report RSINCL00.
4. Details regarding the conditions under which the error occurred
or which actions and input led to the error.
System environment
SAP Release.............. "620"
Application server....... "ztm1003"
Network address.......... "145.26.160.103"
Operating system......... "AIX"
Release.................. "5.3"
Hardware type............ "00C004DC4C00"
Character length......... 16 Bits
Pointer length........... 64 Bits
Work process number...... 6
Short dump setting....... "full"
Database server.......... "ztm1003"
Database type............ "ORACLE"
Database name............ "A94"
Database owner........... "SAPR3K"
Character set............ "C"
SAP kernel............... "640"
Created on............... "Aug 7 2005 20:44:35"
Created in............... "AIX 1 5 00538A4A4C00"
Database version......... "OCI_920 "
Patch level.............. "85"
Patch text............... " "
Supported environment....
Database................. "ORACLE 8.1.7.., ORACLE 9.2.0.., ORACLE
10.1.0.."
SAP database version..... "640"
Operating system......... "AIX 1 5, AIX 2 5, AIX 3 5"
User, transaction...
Client.............. 110
User................ "INBVI0"
Language key........ "E"
Transaction......... "SE38 "
Program............. "/DS1/FI_CR_REPT_PGSR802_VEND_P"
Screen.............. "SAPMSSY0 1000"
Screen line......... 6
Information on where terminated
The termination occurred in the ABAP program "/DS1/FI_CR_REPT_PGSR802_VEND_P"
in "GET_CLRD_VEN_DATA".
The main program was "/DS1/FI_CR_REPT_PGSR802_VEND_P ".
The termination occurred in line 503 of the source code of the (Include)
program "/DS1/FI_CR_REPT_PGSR802_VEND_P"
of the source code of program "/DS1/FI_CR_REPT_PGSR802_VEND_P" (when calling
the editor 5030).
Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in
the
procedure "GET_CLRD_VEN_DATA" "(FORM)" but was not handled locally, not
declared in the
RAISING clause of the procedure.
The procedure is in the program "/DS1/FI_CR_REPT_PGSR802_VEND_P ". Its source
code starts in line 501
of the (Include) program "/DS1/FI_CR_REPT_PGSR802_VEND_P ".
Source code extract
004730 &----
004740 * get country names from t005t
004750 ----
004760 FORM get_country_names.
004770
004780 t_lfa1_land[] = t_lfa1[].
004790 SORT t_lfa1_land BY land1.
004800 DELETE ADJACENT DUPLICATES FROM t_lfa1_land COMPARING land1.
004810
004820 IF NOT t_lfa1_land[] IS INITIAL.
004830 SELECT land1
004840 landx
004850 INTO TABLE t_t005t
004860 FROM t005t
004870 FOR ALL ENTRIES IN t_lfa1_land
004880 WHERE spras = sy-langu AND
004890 land1 = t_lfa1_land-land1.
004900 REFRESH t_lfa1_land.
004910 SORT t_t005t BY land1.
004920 ELSE.
004930 MESSAGE i014 WITH 'No vendor data fetched'(001).
004940 ENDIF.
004950 ENDFORM. " get_country_names
004960 &----
004970 *& Form get_clrd_ven_data
004980 &----
004990 * Cleared vendor data
005000 ----
005010 FORM get_clrd_ven_data .
005020
> SELECT bukrs
005040 lifnr
005050 augdt
005060 augbl
005070 zuonr
005080 gjahr
005090 belnr
005100 buzei
005110 waers
005120 dmbtr
005130 wrbtr
005140 zlsch
005150 shkzg
005160 blart
005170 gsber
005180 sgtxt
005190 INTO TABLE t_bsak_tmp
005200 FROM bsak CLIENT SPECIFIED
005210 * the order of the fields are as in the secondary Index.
005220 WHERE mandt = sy-mandt AND
Contents of system fields
SY field contents..................... SY field contents.....................
SY-SUBRC 0 SY-INDEX 0
SY-TABIX 1 SY-DBCNT 59
SY-FDPOS 0 SY-LSIND 0
SY-PAGNO 0 SY-LINNO 1
SY-COLNO 1 SY-PFKEY
SY-UCOMM
SY-TITLE Vendor Payment Details for IRD
SY-MSGTY I SY-MSGID SF
SY-MSGNO 616 SY-MSGV1 /DS1/FI_CR_REPT_PGSR802_VEND_P
SY-MSGV2 RE SY-MSGV3 EN
SY-MSGV4
Active calls / events
No.... Type........ Name..........................
Program
Include Line
Class
2 FORM GET_CLRD_VEN_DATA
/DS1/FI_CR_REPT_PGSR802_VEND_P
/DS1/FI_CR_REPT_PGSR802_VEND_P 503
1 EVENT START-OF-SELECTION
/DS1/FI_CR_REPT_PGSR802_VEND_P
/DS1/FI_CR_REPT_PGSR802_VEND_P 135Hi Balaji,
Here is what the dump said and my answers are right below them.
<i>Possible errors:</i>
o The maximum size of an SQL statement has been exceeded.</i>
This may not be the reason in your case. This usually happens when you use the option FOR ALL ENTRIES
<i>o The statement contains too many input variables.</i>
Most likely this is your issue. I think your r_lifnr is filled with all the vendors in your system and filled as single values. In that case you may be exceeding a limit set on the system. Instead of trying to remove this setting, what I would suggest is to do the following.
Define a select-option for LIFNR on your selection screen. This way users can have the flexibility of specifying certain vendors. If they don't enter anything, it is still ok. Don't fill it with single values.
Use this select-option in your select statement. After the select statement, do a delete from itab where the vendors are not in your r_lifnr as below.
DELETE t_bsak_tmp WHERE NOT lifnr IN r_lifnr.
Also, avoid using client. You don't need that unless you really want to select from a different client other than your logon client. Your select statement is using logon client anyway, so you don't need to specify that.
<i>o The space needed for the input data exceeds the available memory.</i>
If the above changes are made and the problem is still there, then this is the next thing to look at.
Srinivas -
RunTime error DBIF_RSQL_INVALID_RSQL while updating infotype 0035
Dear Experts,
I am delimiting(changing the end date from future date to current date) the HR objects in IT 0035 using FM RH_CUT_INFTY. It is delimiting the records as per required.
To do this update we have developed a report where we read the Object ID and the PERNR on the selection screen and inside the program we update IT35.
The program executes in three steps:
1. Lock HR Object
2. Update(in synchronous mode) the records for the specified Object ID-PERNR pair using FM RH_CUT_INFTY
3. Release HR object and go to next HR object and go back to step 1.
The report is executing good when there are less number of records for an HR object. But, when the number of (PERNR)records for an HR object is more then the report is giving a po-up "Update was terminated" and when I checked the dump for the same in ST22, it gives the following details:
Runtime Errors : DBIF_RSQL_INVALID_RSQL
Exception : CX_SY_OPEN_SQL_DB
I would be grateful if anyone can please help me resolve this issue.
Thanks,
JitenHi Jiten,
I don't know how much I can help you on this.
But I found an FM: RH_CUT_INFTY_GENERIC
This FM seems to be designed for mess process of CUT INFTY.
I check the source code, the VTASK is set to 'B' when calling RH_CUT_INFTY in a loop.
CALL FUNCTION 'RH_CUT_INFTY'
EXPORTING
LOAD = ' '
GDATE = GDATE
HISTO = HISTO
DEL_SUCC = DEL_SUCC
VTASK = 'B'
ORDER_FLG = ORDER_FLG
COMMIT_FLG = COMMIT_FLG
AUTHY = AUTHY
PPPAR_IMP =
KEEP_LUPD = KEEP_LUPD
WORKF_ACTV = WORKF_ACTV
TABLES
INNNN = action_tab
ILFCODE =
EXCEPTIONS
ERROR_DURING_CUT = 1
NO_AUTHORIZATION = 2
GDATE_BEFORE_BEGDA = 3
CUT_OF_TIMCO_ONE = 4
CORR_EXIT = 5
OTHERS = 6.
And when all the objects have been submitted to delimitation, call FM RH_UPDATE_DATABASE at last.
I think this could be a workaround for your issue.
Cheers, -
Runtime Error - DBIF_RSQL_INVALID_RSQL - Too many OPEN CURSOR
When I try to train a Decision Tree Model via an APD process in RSANWB, I get a runtime error when my model is configured with too many parameter fields or too many leaves (with 2 leaves it works, with more it fails).
By searching SAP Notes I see that there are many references to this kind of runtime errors. But no note on occurences of it in RSANWB / RSDMWB .
Any information on this anyone?
Claudio Ciardelli
Runtime Errors DBIF_RSQL_INVALID_RSQL
Date and Time 29.07.2005 16:19:21
|ShrtText |
| Error in RSQL module of database interface. |
|What happened? |
| Error in ABAP application program. |
| |
| The current ABAP program "SAPLRS_DME_DECISION_TREE_PRED" had to be terminated |
| because one of the |
| statements could not be executed. |
| |
| This is probably due to an error in the ABAP program. |
| |
|Error analysis |
| The system attempted to open a cursor for a SELECT or OPEN CURSOR |
| statement but all 16 cursors were already in use. |
| The statement that failed accesses table "/BIC/0CDT000030 ". |
| The erroneous statement accesses table "/BIC/0CDT000030 ". |
|Trigger Location of Runtime Error |
| Program SAPLRS_DME_DECISION_TREE_PRED |
| Include LRS_DME_DECISION_TREE_PREDU06 |
| Row 103 |
| Module type (FUNCTION) |
| Module Name RS_DME_DTP_EVALUATE |
|Source Code Extract |
|Line |SourceCde |
| 73|* Prepare for Data evaluation |
| 74| CATCH SYSTEM-EXCEPTIONS OTHERS = 15. |
| 75| CREATE DATA ref TYPE (i_enum_dbtab). |
| 76| ASSIGN ref->* TO <fs_wkarea>. |
| 77| ASSIGN COMPONENT gv_class_dbposit OF STRUCTURE |
| 78| <fs_wkarea> TO <fs_class>. |
| 79| CREATE DATA ref TYPE TABLE OF (i_enum_dbtab). |
| 80| ASSIGN ref->* TO <ft_data>. |
| 81| |
| 82| ENDCATCH. |
| 83| IF sy-subrc = 15. |
| 84|* Error on Assignment. |
| 85| CALL FUNCTION 'RS_DME_COM_ADDMSG_NOLOG' |
| 86| EXPORTING |
| 87| i_type = 'E' |
| 88| i_msgno = 301 |
| 89| i_msgv1 = 'EVALUATION_PHASE' |
| 90| IMPORTING |
| 91| es_return = ls_return. |
| 92| APPEND ls_return TO e_t_return. |
| 93| EXIT. |
| 94| ENDIF. |
| 95| |
| 96|* For the un-trained Rec-Ids, evaluate..... |
| 97| REFRESH lt_recinp. |
| 98| APPEND LINES OF i_t_records TO lt_recinp. |
| 99| SORT lt_recinp . |
| 100|* Open Cursor.. |
| 101| DATA: l_curs TYPE cursor. |
| 102| DATA: l_psize TYPE i VALUE 10000. |
|>>>>>| OPEN CURSOR WITH HOLD l_curs FOR |
| 104| SELECT * FROM (i_enum_dbtab) |
| 105| WHERE rsdmdt_recid NOT IN |
| 106| ( SELECT rsdmdt_recid FROM |
| 107| (i_learn_tab) ). |
| 108| |
| 109|* Start Fetch... |
| 110| DO. |
| 111| FETCH NEXT CURSOR l_curs |
| 112| INTO CORRESPONDING FIELDS OF TABLE <ft_data> |
| 113| PACKAGE SIZE l_psize. |
| 114| IF sy-subrc NE space. |
| 115| EXIT. |
| 116| ENDIF. |
| 117| |
| 118|* Process records... |
| 119| LOOP AT <ft_data> ASSIGNING <fs_wkarea>. |
| 120| |
| 121|* Call Prediction Function. |
| 122| CALL FUNCTION 'RS_DME_DTP_PREDICT_STRUCTURE' |Hi Claudio,
well the message is very clear and I think in your case you need to split your model into a few somehow equal models, each not having more than 2 leaves.
Another option might be to do more things serially instead of parallel.
Hope it helps
regards
Siggi -
Runtime error "DBIF_RSQL_INVALID_RSQL" during unicode preconversion SPUMG
Hi experts,
I was performing the unicode preconversion with spumg on ECC 5.0. The system environment is HP-UX 11.31 and Oracle 10g.
During the scan lever 2: tables without language info, there's always an error when scan table "VBSEGK", meanwhile the runtime error "DBIF_RSQL_INVALID_RSQL" raised in ST22. Below is some information regarding to this error.
Runtime error:
Runtime Error DBIF_RSQL_INVALID_RSQL
Except. CX_SY_OPEN_SQL_DB
Date and Time 30.05.2011 05:44:42
Error in ABAP application program.
The current ABAP program "UMG_SCANNER" had to be terminated because one of the statements could not be executed.
This is probably due to an error in the ABAP program.
An exception occurred. This exception is dealt with in more detail below
.The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was neither caught nor passed along using a RAISING clause, in the procedure "FETCH_NEXT"
"(METHOD)".
Since the caller of the procedure could not have expected this exception
to occur, the running program was terminated.
The reason for the exception is:
The data read during a SELECT access could not be inserted into the
target field.
Either conversion is not supported for the target field's type or the
target field is too short to accept the value or the data are not in a
form that the target field can accept.
Thanks and Regards,
Kevin YuHi Kevin,
this is probably caused by one or more incorrect / corrupt entries in table VBSEGK.
UMG_SCANNER reads the content of this table and is unable to do so for a specific entry.
Now it is necessary to find out, which entry causes this issue ...
Maybe your colleagues from the according application (FI-GL-GL-X) can help you ?
Best regards,
Nils Buerckel -
Runtime Error DBIF_RSQL_INVALID_RSQL on dataload to PSA
Hi,
Apologies for the long problem statement.
We need to extract data from a non- SAP SQL system to our SAP Netweaver 7.01 (EhP1 SP5) BI system. We have established a UD Connection and connected to tables in the SQL system.
After a few dataloads and data validity, some fields were changed in the source tables in the SQL system.
Now, when we try to extract data into our PSA by triggering InfoPackage, it gives a Runtime Error with following messages:
*Runtime Errors DBIF_RSQL_INVALID_RSQL*
*Exception CX_SY_OPEN_SQL_DB*
*Error in module RSQL of the database interface.*
*An exception occurred that is explained in detail below.*
*The exception, which is assigned to class 'CX_SY_OPEN_SQL_DB', was not caugh*
*in*
*procedure "INSERT_ODS" "(FORM)", nor was it propagated by a RAISING clause.*
*Since the caller of the procedure could not have anticipated that the*
*exception would occur, the current program is terminated.*
*The reason for the exception is:*
*In a SELECT access, the read file could not be placed in the target*
*field provided.*
*Either the conversion is not supported for the type of the target field,*
*the target field is too small to include the value, or the data does not*
*have the format required for the target field.*
We tried creating another datasource on the same table and we could extract data successfully. There a quite a few more DS that have the same issue. Is there another way to resolve this issue while retaining current DS.
Also, for another table which has more number of rec (arnd 20K), the extraction keeps running even after creating new datasource.
Please help.
-Abhishek.
Edited by: Abhishek Rajan on Sep 28, 2010 8:05 PMHi Rajan,
Please find this thread.
I guess it may be useful. When datasource structrue changes , there will inconsistency in database and will not allow us to delete or do data load.
This has resolved my problem.
PSA Not Deleting, error : DDL time(___1):.....0 milliseconds
Thanks
Vamsi -
hi
i get a Runtime error - DBIF_RSQL_INVALID_RSQL, Exception - CX_SY_OPEN_SQL_DB when i run a periodic background program which is defined by myself
i find that there are many threads refer to this problem
but mine have something special,that is it would be cancelled because of the reason mentioned above in a fixed period(00:00am-08:30am) everyday (p.s. our company's standand work time begins at 08:30am),and in other time period of the day,it could run successfully.
so i am confused ,what possible reasons would lead to this problem?what should i do to hand it ?
waiting for your answer ,thanks very much.
vitaclemens
thanks,i have tried your ways,but i think i am too new in this feild to get a point from the dump
i will appriciate it if you could help me to analysis the dump info
here are those info ,hope it is useful
>>>>> SELECT vbpaVBELN vbpaKUNNR into TABLE it_kno FROM vbpa WHERE vbpaPARVW ='WE' AND vbpaVBELN IN r_VBELN9.
SORT it_kno by KUNNR .
delete ADJACENT DUPLICATES FROM it_kno .
LOOP at it_kno .
r_KUNNR-sign = 'I'.
r_KUNNR-option = 'EQ'.
r_KUNNR-low = it_kno-KUNNR.
COLLECT r_KUNNR.
CLEAR r_KUNNR.
ENDLOOP .
系统字段的内容
Name Val.
SY-SUBRC 0
SY-INDEX 0
SY-TABIX 42
SY-DBCNT 230
SY-FDPOS 0
SY-LSIND 0
SY-PAGNO 0
SY-LINNO 1
SY-COLNO 1
SY-PFKEY
SY-UCOMM
SY-TITLE 订单执行跟踪表_后台程序
SY-MSGTY I
SY-MSGID SF
SY-MSGNO 616
SY-MSGV1 ZSDRD_17
SY-MSGV2 RE
SY-MSGV3 ZH
SY-MSGV4
SY-MODNO 0
SY-DATUM 20091117
SY-UZEIT 000015
SY-XPROG SAPCNVE
SY-XFORM CONVERSION_EXIT -
Currently SAP Note 1439467 SUIM| RSUSR70: Runtime error DBIF_RSQL_INVALID_RSQL is not available. When searching the note in http://service.sap.com/notes error message The requested SAP Note is either in reworking or is released internally only is displayed. It was available of couple of days ago.
Does anyone know when it will be available again?
Thanks for help,
Jarmo TuominenHi
Maybe never open the note, The note is only internal, It's that only SAP can see the note. Is likely that the note is being updated, in this case only wait.
if you have any error with your system please paste logs for help or open OSS Ticket
Hi I found this SAP Note 1171653 - SUIM| RSUSR070 runtime error DBIF_RSQL_INVALID_RSQL
Regards
William Neira
Edited by: William Leonardo Neira on Mar 4, 2011 5:52 PM -
Runtime Error # DBIF_RSQL_INVALID_RSQL for large size BOMs
Hi All,
I am facing problem running a custom report for Routing summary. When Executing the report gives the above runtime error.
ShrtText: Error in RSQL module of database interface.
Error analysis :
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was neither caught nor passed along using a RAISING clause, in the procedure
"CP_SC_MTK_LOAD_COMPLEX_BY_TSK" "(FUNCTION)"
Since the caller of the procedure could not have expected this to occur, the running program was terminated.
The reason for the exception is: The SQL statement generated from the SAP Open SQL Statement violates restriction imposed by the database system used in R/3.
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the available memory.
How to correct the error
The SAP Open SQL statement must be divided into several smaller units.
If the problem occurred due to the use of an excessively large in an IN itab construct, you can use the addition FOR ALL ENTRIES
instead. When you use this addition, the statement is split into smaller according to the restrictions of the database system used.
You may able to find an interim solution to the problem in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"DBIF_RSQL_INVALID_RSQL" CX_SY_OPEN_SQL_DBC
"SAPLCPSC" or "LCPSCU03"
"CP_SC_MTK_LOAD_COMPLEX_BY_TSK"
This report uses SAP standard Function module "CP_SC_MTK_LOAD_COMPLEX_BY_TSK" in the select statement.
When Analysed, We found that since the BOM size for routing is large(More than 2000 components), this dump is coming. for rest of the routings, the report works fine.
I could not found any SAP note relevant for this.
This is definitely related to large BOM size, if anybody of you came across such problem and how to correct it now.Hi,
We did solve this problem. This problem usually comes when there is very large records in internal table (More than 2000 Approx).
We need to split that select statement and make multiple statements so that the memory overflow doesn't happen. refer SAP note: 13607.
We modified the coding as follows by splitting the SELECT statementu2026
SELECT DISTINCT MANDT PLNTY PLNNR PLNAL MATNR WERKS VBELN POSNR
INTO CORRESPONDING FIELDS OF TABLE E_MTK_IDENT
FROM MAPL FOR ALL ENTRIES IN I_TSK_IDENT
WHERE PLNTY = I_TSK_IDENT-PLNTY AND
PLNNR = I_TSK_IDENT-PLNNR AND
PLNAL = I_TSK_IDENT-PLNAL AND
MATNR IN I_CPSC_MTK_SEL-MATNR AND
WERKS IN I_CPSC_MTK_SEL-WERKS AND
VBELN IN I_CPSC_MTK_SEL-VBELN AND
POSNR IN I_CPSC_MTK_SEL-POSNR AND
(FREE_WHERE-WHERE_TAB).
SELECT MANDT PLNTY PLNNR PLNAL MATNR WERKS VBELN POSNR
INTO CORRESPONDING FIELDS OF TABLE E_MTK_IDENT
FROM MAPL FOR ALL ENTRIES IN I_TSK_IDENT
WHERE PLNTY = I_TSK_IDENT-PLNTY AND
PLNNR = I_TSK_IDENT-PLNNR AND
PLNAL = I_TSK_IDENT-PLNAL AND
(FREE_WHERE-WHERE_TAB).
Delete E_MTK_IDENT where matnr NOT in I_CPSC_MTK_SEL-MATNR.
Delete E_MTK_IDENT where werks NOT in I_CPSC_MTK_SEL-WERKS.
Delete E_MTK_IDENT where VBELN NOT in I_CPSC_MTK_SEL-VBELN.
Delete E_MTK_IDENT where POSNR NOT in I_CPSC_MTK_SEL-POSNR.
Hope this helps you.
Regards, Madhu -
Dump : Runtime Errors DBIF_RSQL_INVALID_RSQL
Hi Experts,
I got a dump at the select statement in the production during the excution.The Details of the program are :
DATA : BEGIN OF it_ekko OCCURS 0.
INCLUDE STRUCTURE ekko.
DATA : END OF it_ekko.
START-OF-SELECTION.
SELECT * FROM ekko
INTO TABLE it_ekko
WHERE ebeln IN p_ebeln
AND aedat IN p_aedat
AND bsart IN p_bsart
AND lifnr IN p_lifnr.
In ST22, the description of dump details is as follows.
<b><u>What happened?</u></b>
Error in ABAP application program.
The current ABAP program "ZMMRP126_1" had to be terminated because one of the statements could not be executed.
This is probably due to an error in the ABAP program.
<b><u>Error analysis</u></b>
An exception occurred. This exception will be dealt with in more detail
below. The exception, assigned to the class 'CX_SY_OPEN_SQL_DB', was not
caught, which
led to a runtime error. The reason for this exception is:
The SQL statement generated from the SAP Open SQL Statement violates a
restriction imposed by the database system used in R/3.
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the available memory.
o ...
You can usually find details in the system log (SM21) and in the
developer trace of the work process (ST11).
If an error occurs the developer trace often informs you about the
current restrictions.
<b><u>Source Code Extract</u></b>
001830
> SELECT * FROM ekko "read through purchase orders
001850 INTO TABLE it_ekko
001860 WHERE ebeln IN p_ebeln "for order number
001870 AND aedat IN p_aedat "created date
001880 AND bsart IN p_bsart "document type
001890 AND lifnr IN p_lifnr.
001900
001910 LOOP AT it_ekko INTO ekko.
001920 PERFORM process_items. "read, check and save line items
001930 ENDLOOP.
<b><u>Contents of system fields</u></b>
SY field contents..................... SY field contents.....................
SY-SUBRC 0 SY-INDEX 0
SY-TABIX 1 <b>SY-DBCNT 69682</b>
SY-FDPOS 0 SY-LSIND 0
SY-PAGNO 0 SY-LINNO 1
SY-COLNO 1 SY-PFKEY
SY-UCOMM SY-TITLE Purchase Order Receipt Status
SY-MSGTY I SY-MSGID SF
SY-MSGNO 616 SY-MSGV1 5000098347
SY-MSGV2 SY-MSGV3
SY-MSGV4
Kindly help me to solve out this issue.
Thanks & Regards,
Krishna Kishore .Khi,
I think you declared p_ebeln as parameter and used in where condition with IN operator.
Could you change with EQ operator.
Or If p_ebeln is select-oprions means check you are giving high range in the selection screen for the input values.
try to check by giving 1 purchase order i.e p_ebeln = 'XXXX' only.
dont give range.
If output is big range means program goes to dump.
are you trying to modify EKKO table in the program?
Please reward if its useful.
Thanks
Sivaparvathi
Or -
Runtime error DBIF_RSQL_INVALID_RSQL on BW Idoc archiving.
Hi Experts,
I am facing one issue while performing IDOC archiving in BW system.
While running write program with RSEXARCA, I am getting ABAP dump DBIF_RSQL_INVALID_RSQL
with a exception CX_SY_OPEN_SQL_DB. 'Error in RSQL module of database interface' as a short text.
Please let me know what could be the problem.
Regards,
Mohan.Hi,
You can try to implement the latest DBSL patch in order to solve this. You can implement the latest Kernel and DBSL patches from the links below.
-> http://service.sap.com/patches
-> Support Packages and Patches - Entry by Application Group
-> Additional Components
-> SAP Kernel
Regards,
Rafael -
Runtime Error in SQL command ..
Hi everybody
I have a report wich terminates with a dump message.
The error is in an SQL command, here the program aborts:
SELECT KUNNR KKBER KLIMK SAUFT SKFOR SSOBL
INTO TABLE I_KNKK
FROM KNKK
WHERE KUNNR IN R_KUNNR
AND KKBER IN R_KKBER
AND SBGRP IN S_SBGRP.
DATA: BEGIN OF I_KNKK OCCURS 0,
KUNNR LIKE KNKK-KUNNR,
KKBER LIKE KNKK-KKBER,
KLIMK LIKE KNKK-KLIMK,
SAUFT LIKE KNKK-SAUFT,
SKFOR LIKE KNKK-SKFOR,
SSOBL LIKE KNKK-SSOBL,
SBGRP LIKE KNKK-SBGRP,
END OF I_KNKK.
In first moment, i saw the table and SQL filter have the SBGRP field but the SQL fields selection has not this field. But, these same program works good with others selection parameters, in fact this SQL only terminates the program for the bigest company, wich causes the program make many BD access because all previous SQL.
The dump log says:
Runtime errors DBIF_RSQL_INVALID_RSQL
Exception CX_SY_OPEN_SQL_DB
Occurred on 23.05.2006 at 17:27:15
Error in the module RSQL accessing the database interface.
An exception occurred. The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', neither caught nor passed along using a RAISING clause, in the procedure "(FORM)" . Since the caller of the procedure could not have expected this except to occur, the running program was terminated.
The reason for the exception is:
The SQL statement generated from the SAP Open SQL Statement violates restriction imposed by the database system used in R/3.
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the
available memory.
o ...
How can i be sure the dump is for a lot of BD access for all the SQL commands ?
If these is the error, does somebody knows how can i eliminate this error ?
Please help ..
Regards
FrankI think the field discrepancy is a red herring here. Not guilty! I agree that using the 'CORRESPONDING FIELDS OF' is safer though.
The error could be happening because your range variables have lots of entries in them which makes the generated sql huge.
To break it up you could use the 'package size' option of the select. This will work it's way through the input in chunks (or packages) of the size you specify.
You could change it to:
SELECT KUNNR KKBER KLIMK SAUFT SKFOR SSOBL
INTO TABLE I_KNKK package size 2000 "or a variable value
FROM KNKK
WHERE KUNNR IN R_KUNNR
AND KKBER IN R_KKBER
AND SBGRP IN S_SBGRP.
process current contents of i_knkk here
endselect.
or ,
SELECT KUNNR KKBER KLIMK SAUFT SKFOR SSOBL
appending TABLE I_KNKK package size 2000
FROM KNKK
WHERE KUNNR IN R_KUNNR
AND KKBER IN R_KKBER
AND SBGRP IN S_SBGRP.
endselect. -
Runtime error when executing ME2B/ME3B if condition recs 160
Dear all,
I have created a vendor rebate agreement and entered condition records for a vendor/material combination.
Since for this vendor there are 170 materials for which he provides rebate I have created 170 condition records.
When I am trying to change or display the rebate agreement by executing transaction codes ME2B and ME3B respectively the following run time error occurs (Runtime error when executing transaction codes ME2B/ME3B for condition recrds >160):
Runtime Errors: DBIF_RSQL_INVALID_RSQL
Except. CX_SY_OPEN_SQL_DB
The error is in function module SELECT_TEXT at line 120 "select * from stxh client specified into table stxh_buffer".
When I debug or test/execute the function module SELECT_TEXT, I find that there are no relevant entries in table STXH for the vendor rebate agreements.
Please note that if the condition records of the rebate agreement are 160 and less then there is no problem.
I would appreciate if I could have your expert oppinion on what is causing this runtime error and if it is possible on how to resolve it.
Thanks in advance.
Regards,
Mimis
Edited by: Mimis1973 on Jan 26, 2011 11:18 AM
Edited by: Mimis1973 on Jan 26, 2011 11:20 AM
Edited by: Mimis1973 on Jan 26, 2011 11:23 AMThere's something similar in OSS note 1002788. Is it relevant to your system?
-
ALV: Runtime error when calling only few columns of tables in ALV rpt
Dear ABAP Gurus N Experts,
I am new for ABAP.
I am creating an ALV for fetching the data from ztable. It works fine, If I select all column than .
SELECT * FROM zshipment01 INTO TABLE gi_zshipment01.
But when I try to select only few column it gives an error. Runtime errors: DBIF_RSQL_INVALID_RSQL, Exception: CX_SY_OPEN_SQL_DB
SELECT container shipment_no bill_of_lad bl_date DATE_OF_PORT ARRIVAL_NO1 ED_TRUCKING
FROM zshipment01 INTO TABLE gi_zshipment01.
I am using following function:, which is called in program as PERFORM load_data_into_grid.
FORM load_data_into_grid.
SELECT * FROM zshipment01 INTO TABLE gi_zshipment01.
Load data into the grid and display them
CALL METHOD go_grid->set_table_for_first_display
EXPORTING i_structure_name = 'zshipment01'
CHANGING it_outtab = gi_zshipment01.
ENDFORM. " load_data_into_grid
Early response will be highly appreciated.
With thanks,
DSC
Moderator Messge: Basic questions are not allowed. Search before you post.
Edited by: kishan P on Feb 29, 2012 2:22 PMHi Devendra,
Try to use "corresponding" statement.
SELECT field1 field1 etc FROM zshipment01 *INTO CORRESPONDING FIELD OF TABLE* gi_zshipment01.
Regards,
Dondi.
Points unassigned
Edited by: kishan P on Feb 29, 2012 2:22 PM -
Reg Blocked Export Documents Runtime Error
Hi..
I am using the transaction '/SAPSLL/BL_DOC_SD_R3' to see blocked export documents.......
Now when i run it for a plant and about 40 thousand sales orders... it is going for a runtime error.....
I need to know for how many records can i run this transaction at one time.. ......
Regards.Gautham..
The selection screen stuff did not help....
This is the error which i am getting...
Runtime errors DBIF_RSQL_INVALID_RSQL
Exception CX_SY_OPEN_SQL_DB
Possible errors:
o The maximum size of an SQL statement has been exceeded.
o The statement contains too many input variables.
o The space needed for the input data exceeds the available memory.
Maybe you are looking for
-
How do I set up iCloud in Lion for a family sharing 1 Apple ID?
There are three people in our family. Mom...Dad...Daughter. Up till now, we have used 1 Apple ID and password for iTunes Store and Mac App Store purchases. We used MY e-mail address for the Apple ID. I installed Lion 7.2 on my daughter's MBP yest
-
Help! Mess-- Merging 4PCs' libraries into 1 common library on Home Server!
I am helping a friend of mine set up his new Windows Home Server. He currently has ITunes running on 4 different Windows PCs with different ITunes libraries (although there are tracks that appear in some or all of these libraries). These libraries we
-
My iPhoto icon disappeared and is no longer in my applications folder
I suddenly couldn't open iPhoto although all other iLife applications work well. I opened my web page blog and another window also opened up saying media files: There were all my pictures. I could open both events and pictures (tiny thumbprints). How
-
Elements 8.0 won't open editor in Win7 64bit. "error is unrecoverable"
I have been running Elements 8.0 w/o problems on my Windows 7 (64 bit) machine. All of a sudden, I am unsable to open the Edit function. The Organizer will open, but not the Edit. This is the error message I receive: I removed the program and reloade
-
PSE 4 for Mac coming March 3!
Hi Everybody, I just got an email from Adobe announcing PSE 4 for Mac. Offering a $20 coupon good till Sept 06. That brings it to $79 But if you order it from Amazon, its $59 with the mail in coupon. I just pre-ordered it. Jane