Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
dkle
Participant

Introduction

The following enhancement may be helpful if you are struggling with

1.     error message RSO656 trying to release a transport request containing BEx Query elements

        eg. 'Transportable object R3TRELEM 00O2TG5E5LHYQCU0A33Y2O04S needs local object R3TRELEM 00O2TG5E5LHYLX10OYV4QJ7M5',


        but you don't know how to pick up the missing element into the transport request, OR


2.     finding out which querys are included within a certain transport request (particularly if it contains hundreds of elements).


Transport Organizer display before enhancing


In default SE01 transaction, query elements are displayed as element UID (see screenshot).

To find out to which query these elements belong, we would have to check various database tables via SE16 (Tables in SAP BW which give information related to Queries, Work Books and Web Templates - SAP NetWe...


Transport Organizer after enhancing

The technical name of the query to which each Query Element belongs is displayed in a separate column.

If the Query Element is the query itself, the cell is intensified.

Please click the screenshot to see the additional column. It it not visible in the default blog context (SCN limitation).

Steps to implement

  1. Go to SE80 and open Include LSTRHF01
  2. Click "Enhance"
  3. In the menu bar, click on "Edit" -> "Enhancement Operations" -> "Show implicit enhancement Options"
  4. Create a new enhancement at the beginning of FORM "tdr_text_display".
  5. Use the following code (tested with SAP Netweaver 740):

  DATA: wa_rszeltdir TYPE rszeltdir.
  READ TABLE pt_node WITH KEY type = gc_node_objtyp name = 'R3TRELEM' compress = space ASSIGNING FIELD-SYMBOL(<parent_node>).
  IF sy-subrc = 0.
    LOOP AT pt_node ASSIGNING FIELD-SYMBOL(<node>) WHERE type = gc_node_object AND parent = <parent_node>-id AND text1 IS INITIAL.
      CLEAR wa_rszeltdir.
      DO 5 TIMES.
        IF sy-index = 1.
          wa_rszeltdir-eltuid = <node>-name.
          SELECT SINGLE deftp mapname FROM rszeltdir INTO CORRESPONDING FIELDS OF wa_rszeltdir
            WHERE eltuid = wa_rszeltdir-eltuid
             AND objvers = 'A'.
        ELSE.
          SELECT SINGLE deftp seltuid AS eltuid mapname FROM rszeltxref AS a
            JOIN rszeltdir AS B
            ON a~seltuid = b~eltuid
            AND a~objvers = b~objvers INTO CORRESPONDING FIELDS OF wa_rszeltdir
            WHERE a~teltuid = wa_rszeltdir-eltuid
              AND a~objvers = 'A'.
        ENDIF.
        IF sy-subrc NE 0.
          EXIT.
        ENDIF.
        IF wa_rszeltdir-deftp = 'REP'.
          <node>-tlength1 = 30.
          <node>-text1    = wa_rszeltdir-mapname.
          IF sy-index = 1.
            <node>-tintensiv1 = abap_true.            "blauer Hintergrund
            <node>-tcolor1    = gc_color_changeable.  "blauer Hintergrund
          ENDIF.
          EXIT.
        ENDIF.
      ENDDO.
    ENDLOOP.
  ENDIF.


Closing

Now it should be no deal identifying the BEx Query that is not yet ready to be transported (in case of error message RSO656).

Just go to RSA1 -> Transport Connection and collect all necessary objects for this Query.

The missing element will be marked and can be collected into the transport request.

Labels in this area