Verwendungsnachweis von Tabellen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Verwendungsnachweis von Tabellen

Beitrag von il.ost (ForumUser / 49 / 28 / 0 ) »
Hallo zusammen. Ich habe jetzt eine Aufgabe, wo ich FuBa: RS_EU_CROSSREF (Verwendungsnachweis) benutzen muss. Ich bin auf folgende Problem/Aufgabe gestoßen:
Wenn ich das Verwendungsnachweis für die Tabelle mache, dann bekomme ich die Includes, in denen die Tabelle benutzt wird, ich will aber wissen in welchem Funktionsbaustein es nutzt wird. (Fuba befindet sich in diesem Iclude)
Weißt jmd die Lösung dafür?
Zuletzt geändert von il.ost am 29.04.2019 13:38, insgesamt 1-mal geändert.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Verwendungsnachweis von Tabellen

Beitrag von ewx (Top Expert / 4885 / 319 / 644 ) »
Das ist leider ein blöder Bug in dem Verwendungsnachweis... nervt mich auch immer.
Folgendes Coding zeigt den Fuba mit an:

Code: Alles auswählen.

  DATA ls_rsfind   TYPE rsfind.
  DATA lt_rsfind   TYPE STANDARD TABLE OF rsfind.
  DATA l_euobj     TYPE euobj.
  DATA l_fullname  TYPE string.
  DATA lt_findlist TYPE sci_findlst.


  l_euobj-id       = 'TABL'.
  ls_rsfind-object = 'TFDIR'.
  APPEND ls_rsfind TO lt_rsfind.

  DATA(lt_scope_devclass) = VALUE scit_devc( ( sign = 'I' option = 'CP' low = 'Z*' ) ).
  DATA lt_scope_obj_cls TYPE STANDARD TABLE OF seu_obj.
  DATA lt_scope_objects TYPE STANDARD TABLE OF rsfind.
  DATA lv_number_of_hits TYPE i.

  lt_scope_obj_cls = VALUE #(
                      ( 'P' )  "program
                      ( 'OM' ) "class method
                     ).

  CALL FUNCTION 'RS_EU_CROSSREF'
    EXPORTING
      i_find_obj_cls               = l_euobj-id
      no_dialog                    = 'X'
      expand_source_in_batch_mode  = ' '
      expand_source_in_online_mode = ' '
      without_text                 = 'X'
      i_full_name                  = space
    IMPORTING
      o_hits                       = lv_number_of_hits
    TABLES
      i_findstrings                = lt_rsfind
      o_founds                     = lt_findlist
      i_scope_objects              = lt_scope_objects
      i_scope_object_cls           = lt_scope_obj_cls
      i_scope_devclass             = lt_scope_devclass
    EXCEPTIONS
      not_executed                 = 1
      not_found                    = 2
      illegal_object               = 3
      no_cross_for_this_object     = 4
      batch                        = 5
      batchjob_error               = 6
      wrong_type                   = 7
      object_not_exist             = 8
      OTHERS                       = 9.



  DATA lv_funcname TYPE rs38l_fnam.
  DATA lv_include  TYPE progname.

  LOOP AT lt_findlist INTO DATA(ls_findlist).
    lv_include = ls_findlist-program.
    CLEAR lv_funcname.
    CALL FUNCTION 'FUNCTION_INCLUDE_INFO'
      CHANGING
        funcname = lv_funcname
        include  = lv_include
      EXCEPTIONS
        OTHERS   = 6.
    IF sy-subrc = 0.
      WRITE: / lv_funcname, ls_findlist-program.
    ELSEIF ls_findlist-encl_objec IS INITIAL.
      WRITE: / ls_findlist-object.
    ELSE.
      WRITE: / ls_findlist-encl_objec, ls_findlist-program.
    ENDIF.
    WRITE: ls_findlist-source,
           ls_findlist-object_row.
  ENDLOOP.

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
il.ost


Re: Verwendungsnachweis von Tabellen

Beitrag von il.ost (ForumUser / 49 / 28 / 0 ) »
ewx hat geschrieben:
29.04.2019 12:53
Das ist leider ein blöder Bug in dem Verwendungsnachweis... nervt mich auch immer.
Folgendes Coding zeigt den Fuba mit an:

Code: Alles auswählen.

  DATA ls_rsfind   TYPE rsfind.
  DATA lt_rsfind   TYPE STANDARD TABLE OF rsfind.
  DATA l_euobj     TYPE euobj.
  DATA l_fullname  TYPE string.
  DATA lt_findlist TYPE sci_findlst.


  l_euobj-id       = 'TABL'.
  ls_rsfind-object = 'TFDIR'.
  APPEND ls_rsfind TO lt_rsfind.

  DATA(lt_scope_devclass) = VALUE scit_devc( ( sign = 'I' option = 'CP' low = 'Z*' ) ).
  DATA lt_scope_obj_cls TYPE STANDARD TABLE OF seu_obj.
  DATA lt_scope_objects TYPE STANDARD TABLE OF rsfind.
  DATA lv_number_of_hits TYPE i.

  lt_scope_obj_cls = VALUE #(
                      ( 'P' )  "program
                      ( 'OM' ) "class method
                     ).

  CALL FUNCTION 'RS_EU_CROSSREF'
    EXPORTING
      i_find_obj_cls               = l_euobj-id
      no_dialog                    = 'X'
      expand_source_in_batch_mode  = ' '
      expand_source_in_online_mode = ' '
      without_text                 = 'X'
      i_full_name                  = space
    IMPORTING
      o_hits                       = lv_number_of_hits
    TABLES
      i_findstrings                = lt_rsfind
      o_founds                     = lt_findlist
      i_scope_objects              = lt_scope_objects
      i_scope_object_cls           = lt_scope_obj_cls
      i_scope_devclass             = lt_scope_devclass
    EXCEPTIONS
      not_executed                 = 1
      not_found                    = 2
      illegal_object               = 3
      no_cross_for_this_object     = 4
      batch                        = 5
      batchjob_error               = 6
      wrong_type                   = 7
      object_not_exist             = 8
      OTHERS                       = 9.



  DATA lv_funcname TYPE rs38l_fnam.
  DATA lv_include  TYPE progname.

  LOOP AT lt_findlist INTO DATA(ls_findlist).
    lv_include = ls_findlist-program.
    CLEAR lv_funcname.
    CALL FUNCTION 'FUNCTION_INCLUDE_INFO'
      CHANGING
        funcname = lv_funcname
        include  = lv_include
      EXCEPTIONS
        OTHERS   = 6.
    IF sy-subrc = 0.
      WRITE: / lv_funcname, ls_findlist-program.
    ELSEIF ls_findlist-encl_objec IS INITIAL.
      WRITE: / ls_findlist-object.
    ELSE.
      WRITE: / ls_findlist-encl_objec, ls_findlist-program.
    ENDIF.
    WRITE: ls_findlist-source,
           ls_findlist-object_row.
  ENDLOOP.
Vielen Dank, Enno!
Das war genau das, was ich gebraucht habe!

Seite 1 von 1

Vergleichbare Themen

3
Antw.
4792
Views
Verwendungsnachweis
von dkast » 15.05.2017 16:53 • Verfasst in ABAP® Core
7
Antw.
2180
Views
Verwendungsnachweis in Smartforms
von whaslbeck » 08.03.2022 09:12 • Verfasst in ABAP® Core
0
Antw.
2336
Views
Verwendungsnachweis Kostenstellen
von -hawkeye- » 18.04.2008 08:44 • Verfasst in Financials
4
Antw.
19562
Views
Verwendungsnachweis unvollständig
von black_adept » 14.03.2012 16:22 • Verfasst in ABAP® Core
2
Antw.
2159
Views
Mehrstufiger Verwendungsnachweis mit ...
von HH_ABAP » 04.06.2018 10:46 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Frage zur redefinierten Methode
vor einer Stunde von a-dead-trousers 5 / 203
RFC vs. ODATA
vor 19 Stunden von ewx 3 / 178
Druck von Etiketten via FP_PDF_TEST_01
vor 22 Stunden von Mr_Mkt 3 / 175

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.