DBIF_RSQL_INVALID_RSQL error

Our production RPM system was getting repeated DBIF_RSQL_INVALID_RSQL runtime errors with exception CX_SY_OPEN_SQL_DB.  Short dumps say "The resources for further secondary database connections are exhausted."
Users could not save because everything was failing in procedure
"WRITE_TO_DATABASE" so we bounced the system and while it was down we deleted SQLPKG's.  Problem was solved after we started the system back up.
We found note 838940 that seems to match but says problem was fixed in 6.40 kernel when the maximum number of allowed connections was increased from 5 to 16.
We are at 700 kernel, SP 243, DBSL 700.08 patch 220.  System is RPM 4.5 SPS 21, running on an iSeries 570 LPAR with V6R1.
It has happened 3 times this week - twice on RPM, once on BW - and they run on different partitions.
We need to find the root cause and resolve.  We have also opened a message with OSS - but are hoping someone in the forum has seen this issue.
Thanks much,
Margie

Hi Everyone - Our OSS message pointed us to a failing QXDAEDRSQL job.  Jim Doll opened a PMR with IBM and while collecting traces and doing other research we discovered that all types of TCP/IP jobs failed at the same time as the QXDAEDRSQL job.  IBM asked if we had any network scans running at that time.
We checked with our Security team and found there is an inventory/detection scan running Thursday night through Friday morning (Friday morning is the time period of three repeated failures).
Security is going to omit our servers from the scan next week, if we have no failure on Friday 9/10/10 - it proves that the scans were causing the QXDAEDRSQL job failure which, in turn, caused the DBIF_RSQL_INVALID_RSQL error.
We thought everyone would appreciate knowing the resolution for this one.  Thank you all for your suggestions.
-Margie

Similar Messages

  • DBIF_RSQL_INVALID_RSQL - Error in RSQL module of database interface.

    Hi Frnds,
    I get the the error snd short dump when Ia m running a report.
    DBIF_RSQL_INVALID_RSQL - Error in RSQL module of database interface.
    The program it is pointing to main program. Details are mentioned below.
    Can anyone give some inputs as to why this error is coming..?
    Regards
    SPrakash
    Information on where terminated                                                                   |
    The termination occurred in the ABAP program "/1BCDWB/DBBSEG" in
    "START-OF-SELECTION".
    The main program was "/1BCDWB/DBBSEG ".
    The termination occurred in line 567 of the source code of the (Include)
    program "/1BCDWB/DBBSEG"
    |    of the source code of program "/1BCDWB/DBBSEG" (when calling the editor 5670).
    Source Code Extract
    Line
    SourceCde
    537
    START-OF-SELECTION.
    538
    IF MAX_SEL > 0.
    539
    RSEUMOD-TBMAXSEL = MAX_SEL.
    540
    ELSEIF MAX_SEL = 0.
    541
    CLEAR RSEUMOD-TBMAXSEL.
    542
    ENDIF.
    543
    IMPORT G_DATA_EXIT FROM MEMORY ID MEM_ID.
    544
    IF SY-BATCH IS INITIAL AND G_DATA_EXIT IS INITIAL.
    545
    IMPORT ACTION FROM MEMORY ID MEM_ID.
    546
    ELSE.
    547
    ACTION = 'ANZE'.
    548
    concatenate '/1BCDWB/DB' 'BSEG' into g_dbdatakey-eu_name.
    549
    g_dbdatakey-username = c_all.
    550
    import sort_NAME_TAB to %_TAB2_sort
    551
    field_name_tab to %_TAB2_field
    552
    from database dbdata(DB) id g_dbdatakey.
    553
    if sy-subrc = 0.
    554
    delete from dbdata
    555
    where relid    = 'DB' and
    556
    eu_name  = g_dbdatakey-eu_name and
    557
    username = c_all.
    558
    describe table %_tab2_field lines %_l_lines.
    559
    if not %_l_lines is initial.
    560
    %_TAB2[] = %_tab2_field[].
    561
    endif.
    562
    endif.
    563
    ENDIF.
    564
    CASE ACTION.
    565
    WHEN 'ANZE'.
    566
    try.
    >>>>>
    SELECT * FROM BSEG                     "client specified
    568
    APPENDING TABLE IBSEG
    569
    UP TO RSEUMOD-TBMAXSEL ROWS BYPASSING BUFFER
    570
    WHERE BUKRS IN I1
    571
    AND   BELNR IN I2
    572
    AND   GJAHR IN I3
    573
    AND   BUZEI IN I4
    574
    AND   BUZID IN I5
    575
    AND   AUGDT IN I6
    576
    AND   BSCHL IN I7
    577
    AND   KOART IN I8
    578
    AND   SHKZG IN I9
    579
    AND   WRBTR IN I10
    580
    AND   PSWSL IN I11
    581
    AND   ZUONR IN I12
    582
    AND   KOSTL IN I13
    583
    AND   SAKNR IN I14
    584
    AND   HKONT IN I15
    585
    AND   LIFNR IN I16
    586
    AND   MATNR IN I17

    Hello Satya
    Another possible error cause might be that the SQL statement sent to the DB is too large. You could try the following:
      SELECT * FROM bseg APPENDING TABLE ibseg
        PACKAGE SIZE 500  " or 1000
        WHERE bukrs IN ...
        AND ...
      ENDSELECT.
    For details see the ABAP keyword documentation for <b>PACKAGE SIZE</b>.
    Regards
      Uwe

  • DBIF_RSQL_INVALID_RSQL  " Error in the module RSQL accessing the database i

    TYPES: BEGIN OF lty_bkpf,
               xblnr LIKE bkpf-xblnr,
             END OF lty_bkpf.
      DATA: li_bkpf TYPE STANDARD TABLE OF lty_bkpf
                    WITH HEADER LINE.
      RANGES: lr_xblnr FOR bkpf-xblnr,
              lr_xblnr1 FOR bkpf-xblnr,
               s_bukrs FOR bseg-bukrs.
    IF NOT lr_xblnr1[] IS INITIAL.
        SELECT xblnr
            FROM bkpf
            APPENDING CORRESPONDING FIELDS OF TABLE li_bkpf
            WHERE bukrs IN s_bukrs
            AND bstat = ''
            AND xblnr IN lr_xblnr1  
            AND blart EQ 'SA'.
      ENDIF.
    s_bukrs has a single value .
    lr_xblnr1 has 3000 entries and also with  wild characters.  ( I     CP   4903813253* ) .
    the SELECT statement is going into dump  with the message  : DBIF_RSQL_INVALID_RSQL
    " Error in the module RSQL accessing the database interface."
    please suggest me alternate code  to encounter this issue .
    thanks,
    Raghu V

    Moderator message - Please search before asking - post locked
    Rob

  • DBIF_RSQL_INVALID_RSQL Error while activating the ODS Object

    Hello BW Friends,
    We have used the Extractor 2LIS_11_VAHDR and enhanced and coded the user exit to extract the data to the required field. Extractor is working fine and able to get the records but when we tried to schedule a data load in BW the request was shown green in the ODS and when saw it in monitor it is still yellow and zero in PSA and the processing hasn't completed. When i tried to activate it manually there is a short dump generated with this error, DBIF_RSQL_INVALID_RSQL. If any one of you has encountered same problem please let us know. Appreciate your prompt response on this.
    Regards,
    Rajesh

    Raj,
    I misunderstood your question.... check whether source system job is processing or not? what about any blocked TRFC'sin SM58.
    try to find root cause... ODS activation is not a problem... load is not finished you tried to acivate the request still in the process Yellow.
    try to check in Monitor details tab page messages...
    All the best.
    Regards,
    Nagesh Ganisetti.
    Message was edited by: Nagesh Ganisetti
    Message was edited by: Nagesh Ganisetti

  • DBIF_RSQL_INVALID_RSQL error in SELECT query

    hi,
    my select statement fails and gives above mentined exception.. any idea why ? pl note this exception i get only when i add the field  asdabw in my list. earlier my query did not have this  asdabw and it was working perfectly fine. not able to find the root cause.
    i have another similar query with  a~sdabw and it works perfectly fine !! 
    query that does not work is this..
    SELECT  atknum ewerks cvstel atdlnr ashtyp asttrg c~traid
                clgbzo entgew fkunnz dname1 dort01 dregio d~pstlz
                dlzone avsbed aroute adptbg auptbg aexti1 f~dptbg
                fdpten ftsnum adatbg auatbg adpabf aupabf
                a~sdabw
        INTO TABLE lt_ship_view
       FROM ( ( ( ( ( vttk AS a INNER JOIN vttp AS b ON btknum = atknum )
             INNER JOIN likp AS c ON cvbeln = bvbeln )
             INNER JOIN lips AS e ON evbeln = bvbeln  )
             INNER JOIN vtts AS f ON ftknum = atknum )
             INNER JOIN kna1 AS d ON dkunnr = fkunnz )
       WHERE e~werks IN tr_werks  AND
             a~vsbed IN tr_vsbed  AND
             a~route IN tr_route  AND
             a~tknum IN tr_tknum  AND
             a~shtyp IN tr_shtyp  AND
             a~sttrg IN tr_sttrg  AND
             a~tdlnr IN tr_tdlnr  AND
             a~datbg IN tr_date   AND
             a~uatbg IN tr_time
             %_HINTS DB2 'USE OPTIMIZE FOR 1 ROWS'.
    query that works fine is..
    SELECT atknum bvbeln cposnr cmatnr carktx clgnum clgort clgtyp c~lgpla
            ccharg clfimg cvrkme cbrgew cgewei avsart cwerks dvstel a~shtyp
            avsbed atdlnr aroute cvgbel adptbg auptbg
            f~kunnz AS kunnr "Get ship to from stage JRB4
            ename1 ename2 eort01 eregio epstlz elzone cvbelv cposnv c~vgbel
            cvgpos ccuobj aexti1 dlfart cbedar_lf fdpten fdptbg asttrg f~tsnum
            csobkz cspart btprfo dlgbzo cmatkl fadrnz ektokd asdabw
    INTO TABLE lt_pick_view
    FROM ( ( ( ( ( ( vttk AS a INNER JOIN vttp AS b
                 ON btknum = atknum )
    INNER JOIN lips AS c ON cvbeln = bvbeln )
    INNER JOIN likp AS d ON dvbeln = bvbeln )
    INNER JOIN vtsp AS p ON ptknum = btknum AND ptpnum = btpnum )
    INNER JOIN vtts AS f ON ftknum = ptknum AND ftsnum = ptsnum )
    INNER JOIN kna1 AS e ON ekunnr = fkunnz )
    WHERE c~werks IN tr_werks
    AND  d~vstel IN tr_vstel
    AND  c~brgew IN tr_weight
    AND  a~vsbed IN tr_vsbed
    AND  a~route IN tr_route
    AND  a~tknum IN tr_tknum
    AND  b~vbeln IN tr_dvbeln
    AND  a~shtyp IN tr_shtyp
    AND  a~sttrg IN tr_sttrg
    AND  a~tdlnr IN tr_tdlnr
    AND  a~dptbg IN tr_date
    AND  a~uptbg IN tr_time
    AND  e~regio IN tr_regio
    AND  a~exti1 IN tr_exti1
    AND  e~lzone IN tr_tzone
      %_HINTS DB2 'USE VALUES FOR OPTIMIZATION'.

    The fields mostly not in the order. so use CORRESPONDING FIELDS OF
    SELECT a~tknum e~werks c~vstel a~tdlnr a~shtyp a~sttrg c~traid
    c~lgbzo e~ntgew f~kunnz d~name1 d~ort01 d~regio d~pstlz
    d~lzone a~vsbed a~route a~dptbg a~uptbg a~exti1 f~dptbg
    f~dpten f~tsnum a~datbg a~uatbg a~dpabf a~upabf
    a~sdabw
    INTO CORRESPONDING FIELDS OF TABLE lt_ship_view

  • Error while Activating ODS data

    Hi Experts,
    I am getting following error while Activating ODS Request.
    Job started                                                         
    Step 001 started (program RSODSACT1, variant &0000000000142, user ID lsingh
    Activation is running: Data target ZINV_MAT, from 7,883 to 7,883    
    Data to be activated successfully checked against archiving objects 
    SQL: 10/17/2005 21:04:17 lsingh                                      
    ANALYZE TABLE "/BIC/AZINV_MAT40" DELETE                             
    STATISTICS                                                          
    SQL-END: 10/17/2005 21:04:17 00:00:00                               
    SQL: 10/17/2005 21:04:17 GOELA                                      
    BEGIN DBMS_STATS.GATHER_TABLE_STATS ( OWNNAME =>                    
    'SAPIBD', TABNAME => '"/BIC/AZINV_MAT40"',                          
    ESTIMATE_PERCENT => 1 , METHOD_OPT => 'FOR ALL                      
    INDEXED COLUMNS SIZE 75', DEGREE => 1 ,                             
    GRANULARITY => 'ALL', CASCADE => TRUE ); END;                       
    SQL-END: 10/17/2005 21:04:17 00:00:00                               
    ABAP/4 processor: DBIF_RSQL_INVALID_RSQL                            
    Job cancelled                                                       
    It's giving DBIF_RSQL_INVALID_RSQL error.
    I am loading full upload to the ODS first time.
    Any answer will be greatly appreciated.
    Regards,
    LS

    hi LS,
    yes contact basis is the right way
    try to double click the DBIF_RSQL_INVALID_RSQL if you interest with more detail error info, by viewing the short dump (transaction st22 can be used), transaction sm21 may also helpful, if authorization is granted.

  • DBIF_RSQL_INVALID_RSQL from RSDRI_INFOPROV_READ

    HI all,
    to get an Information from a Cube for SAP-BPS Function I use the Function RSDRI_INFOPROV_READ.
    I get the error:
    Error in SQL-Statement: DBIF_RSQL_INVALID_RSQL
    Error-nr. DBMAN256
    I think the Error comes form the Subfunction:
    RSDRC_CUBE_DATA_GET
    Is this an SAP-Error or should I give other Information to the function RSDRI_INFOPROV_READ?
    Thanks!
    El-Q
    Message was edited by:
            El-Q

    Thanks for the fast answer.
    I tried the programm and I reactivated the Cubes, too.
    But it doesn't works better now. - The same Error...
    Here aditional Infos...
    The Transaktion sm21 said:
    16:48:08 DIA 00 100 User-XXX   STAR BZE Type conversion for field /BIC/FZ_KOF ==> N : not permitted               
    Details                                                                             
    Recording at local and central time........................ 19.04.2007 16:48:08     
    Task................ 15918 . 00 D0 Dialog work process No. 00                       
    User................ USER-XXX                                                     
    Client.............. ###                                                            
    Terminal............ #######                                                        
    Session............. 1                                                              
    Transaction code.... START_REPORT                                                   
    Program name........ UPB_PM_START                                                   
    Problem class....... K    SAP Web AS Problem                                        
    Development class... SBAC                                                                               
    Module name......... dbrsql                                                         
    Line................ 9166                                                           
    Table name.......... /BIC/FZ_KO                                                     
    Field name.......... F ==> N                                                                               
    Documentation for system log message BZ E :                                         
    A target field has been specified in the INTO clause of a SELECT                   
    statement, for the database field in the message. The ABAP data type of            
    the target field does not suit the type of the database field. Enter a             
    target field with an appropriate type. For information on the correct              
    type, see the Online Help on the INTO clause of a SELECT command.                                                                               
    Technical details                                                                   
    File................ 000011                                                         
    Position............ 0000001980                                                     
    Entry type.......... h      ( Database Error (Non-SQL)       )                      
    Message ID.......... BZ E                                                           
    Variable parts...... /BIC/FZ_KOF ==> N                                   dbrsql  9166
    I hope this helps to understand the Error in a better way...for me, it's an SAP-Problem, isn't it?
    Because I can't change the select in an SAP-Function.
    Thanks!
    El-Q

  • DBIF_RSQL_INVALID_RSQL in OPEN Cursor Statement

    Hi,
          I am getting DBIF_RSQL_INVALID_RSQL error with short text Error in RSQL module of database interface.
      Dump is pointing to the query " FETCH CURSOR".
    I have used following code in the logic:
    Some times only i am getting dump and some times it isworking fine can any body suggest me how to tune this code?
       OPEN CURSOR WITH HOLD s_cursor FOR
        SELECT aebeln bebelp b~zekkn
        bvgabe bgjahr bbelnr bbuzei bbewtp awaers
      FROM ekko AS a
           INNER JOIN ekbe AS b
      ON aebeln = bebeln
      WHERE ( b~bewtp = 'L'
      OR b~bewtp = 'Q' )
      AND a~ebeln IN l_r_ebeln
      AND b~belnr IN l_r_belnr.
      FETCH NEXT CURSOR s_cursor
                     APPENDING CORRESPONDING FIELDS
                     OF TABLE it_ekbe
                     PACKAGE SIZE s_s_if-maxsize.
    also please suggest me how to use for all enties with data packet size logic as in the above code?
    Thnaks & Regards,
    Vamsi

    Hi Vamsi,
    Please check Max's earlier response. You had mentioned that the problem occurs during debugging. Can you please elaborate if it only occurs during debugging or always? I'm not sure if the exception could be triggered due to implicit COMMIT as mentioned by Max. I know that SELECT-ENDSELECT during debugging can trigger a short dump due to implicit COMMIT, but I don't know if that applies also to OPEN CURSOR ... WITH HOLD (don't have a system to test this and also to check what exception is triggered during SELECT-ENDSELECT processing due to implicit COMMIT).
    For further analysis I'd recommend to carefully read the short dump and cross-check this against the system log and especially the trace file of the affected work process. As pointed out by Rob the most likely source for this exception are too many conditions in your WHERE statement. However, based on your response this doesn't seem to be the case, so by checking system log and the work process trace file you might get further information that points to more exotic causes (see e.g. OSS note [8312564|https://service.sap.com/sap/bc/bsp/spn/sapnotes/index2.htm?numm=1398802|Problems due to insufficient Nametab buffer]).
    Using the information from short dump, trace file and system log do some research in OSS for possible causes. Providing all the necessary information for forum users might be tough for the more exotic causes of this exception...
    Good luck, harald

  • Exception CX_SY_OPEN_SQL_DB while executing a BSP page

    Hi,
    I have created a BSP app'n with 2 pages. In one page i am using a class interface within that one method. In that method im firing a select query.
    If i run the BSP page, im getting the CX_SY_OPEN_SQL_DB exception with DBIF_RSQL_INVALID_RSQL error.
    I am not able to understand this issue. If any one had any idea, please reply me. I am very thankful if you do this.
    Thanks,
    Kumar

    Nitin,
    First , check if the Query is correct , then check the backed DB for any additional details , and also you might get more help if you post the same question in the BSP forums.
    How are you calling the query , do you have any internal tables or resultset where you store the values ?
    Arun

  • Create SQL run by batch -certain record

    hi all , i have created one program , and i have execute more than 40000 record. the problem is, when i run this background job with 40000 record, i got DBIF_RSQL_INVALID_RSQL error. if i run 100 record it will display.
    how i want to modified my pgram which is , its run 100 record by 100 record until 40000 record, then it is will i have the same problem? DBIF_RSQL_INVALID_RSQL?

    yeah..u can handle your select -options with less number of records like this:
    s_guidt[]  = s_guid[].
      REFRESH s_guid[].
      LOOP AT s_guidt .
        MOVE-CORRESPONDING s_guidt TO s_guid .
        APPEND s_guid .
        cnt = cnt + 1  .
        IF cnt > 50 .
          cnt  = 0.
          PERFORM get_header.
          REFRESH s_guid[].
        ENDIF.
      ENDLOOP .

  • Runtime error - DBIF_RSQL_INVALID_RSQL, Exception - CX_SY_OPEN_SQL_DB

    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             135

    Hi 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,
    Jiten

    Hi 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,

  • Error DBIF_RSQL_INVALID_RSQL in R/3

    Dear All,
    I have some data to be extracted from R/3 (from custom generic datasource),
    but it always return red and the error message is :
    "Job terminated in source system -- Request set to red" and no record to be loaded.
    Then I checked to SM37 in R/3 with request BI_REQU....(REQU.... will be the request number in BW)
    and found that job is cancelled and returns error DBIF_RSQL_INVALID_RSQL.
    It happens since 28.11.2008 and before that the extraction is fine.
    I just wondering maybe it is because closing period our MM and FI module at the end of month,
    so the server performance will drop but today is two days after closing, why it happen again?
    I consult to basis team and they check the tablespace in R/3, it is fine.
    Is it any suggestion on this?
    Regrads,
    Steph

    hi,
    possible reasons are
    1) The reason could be in your where clause you may have more number of entries. For example if you are retrieving the data from BSAS for BSIS for allentries. In BSIS table you may have 10,000 GLs . If you use 10000 GLs in BSAS select statement then you will get this dump. Better split the no. of Gls and use appending statement in your select statement.
    2) Since you know already that the data selected will be large try writing the problematic Select as a static statement (not dynamic) and see what happens then. It is not very easy to see what causes the problem with your code as it could depend on many circumstances (number of fields selected, size of work area, what the actual DB table is). You may have to execute several times with amendments to trouble-shoot which part is causing your error.
    3) you could just check OSS-Note 1153350. It seems to be an error in standard program.
    4) Check SM21 log.
    It looks like an error at database level (just before exception has occurred) which should be there in SM21 log.
    5) There might be a chace of system being overloaded with several other process.
    Please try it after some time (assuming system will have free resources after some time). It will work.
    6) Please refer OSS note:
    Note 48230 - Parameters for the SELECT ... FOR ALL ENTRIES statement
    which explains the various option to solve your problem.
    The dump is occuring because of too many inputs(20000 material number) in the select option.
    Please let me know if this helpful,<removed by moderator>.
    it will help you
    regards
    vadlamudi
    Edited by: Siegfried Szameitat on Dec 3, 2008 11:16 AM

  • 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 # 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

Maybe you are looking for