cancel
Showing results for 
Search instead for 
Did you mean: 

RUN_RSDRI_QUERY- STRING_SIZE_TOO_LARGE dump

Former Member
0 Kudos

Hello! I am using the RUN_RSDRI_QUERY to retrieve data from a cube instead of using the ct_data because I am reading data inside a different cube. Inside this method, there is a call to CL_SQL_STATEMENT-> EXECUTE_PROCEDURE where a CALL 'C_DB_FUNCTION' is throwing a dump saying

"STRING_SIZE_TOO_LARGE in CL_SQL_STATEMENT==============CP. A string with a length 2426823974 (bytes) was about to be created.

However, this length exceeds the maximum size possible for a string of 2145386496."

I read a note '2030938'  but it is for a different program "CL_UJK_LOGGER=================CP". I tried to implement the same correction but it still doesn't work. This is how I am calling the method. The dump doesn't occur in Dev.

CALL METHOD lo_query->run_rsdri_query

           EXPORTING

             it_dim_name       = lt_dim_list   " BPC: Dimension List

             if_check_security = abap_false    " BPC: Generic indicator

           IMPORTING

             et_data           = <lt_result>

             et_message        = lt_message.   " BPC: Messages

       CATCH cx_ujo_read.                      " Exception of common read

     ENDTRY.


Any suggestions please?


Regards,

Kiran

Accepted Solutions (1)

Accepted Solutions (1)

damovand
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello,

Have you seen  Note 2188345

Best Regards,

Leila

Former Member
0 Kudos

Leila- This note doesn't provide a solution other than reducing the select criteria.

damovand
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

I thought the size of the query or the result set might be a consideration.  you confirmed to eliminate those issues?

Regards,

Leila

Former Member
0 Kudos

The only search filter in this method I see is the 'RANGE' condition but this refers to the columns of the structure and the filter on the rows but I am still specifying the same number of columns. I am trying to know if there are other input parameters to be passed to this method in order to make it run efficient.

Former Member
0 Kudos

Hi,

use it_range to filter your selection.

this is how to create for the range

  ls_sel-dimension = 'material'.

  ls_sel-sign = 'I'.

  ls_sel-option = 'EQ'.

  ls_sel-low = 'member_name'.

  APPEND ls_sel TO lt_selection.

      lo_query->run_rsdri_query(

        EXPORTING

          it_dim_name       =  lt_dim_name      " BPC: Dimension List

          it_range          =  lt_selection     " BPC: Selection condition

          if_check_security =  abap_false       " BPC: Generic indicator

         IMPORTING

          et_data           =  <lt_query_result>

          ).

Andy

Answers (1)

Answers (1)

Former Member
0 Kudos

I am closing this discussion and awarding points. Thanks for all the responses.