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 / 4916 / 332 / 653 ) »
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.
7093
Views
Verwendungsnachweis
von dkast » 15.05.2017 16:53 • Verfasst in ABAP® Core
0
Antw.
2543
Views
Verwendungsnachweis von Verteilerlisten
von Mr. ABAP » 07.07.2008 09:02 • Verfasst in ABAP® Core
0
Antw.
2589
Views
Verwendungsnachweis für Methoden?
von Yllana » 12.07.2007 15:01 • Verfasst in ABAP Objects®
0
Antw.
3253
Views
Verwendungsnachweis Kostenstellen
von -hawkeye- » 18.04.2008 08:44 • Verfasst in Financials
4
Antw.
22209
Views
Verwendungsnachweis unvollständig
von black_adept » 14.03.2012 16:22 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Materialstammerweiterung: Neuer Reiter
vor 2 Tagen von DeathAndPain gelöst 4 / 340
Ermittlung der Arbeitstage (Mosid)
vor 3 Tagen von Radinator 11 / 46016
LSMW-Problem
vor einer Woche von DeathAndPain gelöst 6 / 3902
SFP (Adobe Forms) QR-Code wird nicht angezeigt
vor einer Woche von Sebastian82 gelöst 4 / 2391

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.

Aktuelle Forenbeiträge

Materialstammerweiterung: Neuer Reiter
vor 2 Tagen von DeathAndPain gelöst 4 / 340
Ermittlung der Arbeitstage (Mosid)
vor 3 Tagen von Radinator 11 / 46016
LSMW-Problem
vor einer Woche von DeathAndPain gelöst 6 / 3902
SFP (Adobe Forms) QR-Code wird nicht angezeigt
vor einer Woche von Sebastian82 gelöst 4 / 2391