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 / 4849 / 313 / 642 ) »
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.
4233
Views
Verwendungsnachweis
von dkast » 15.05.2017 16:53 • Verfasst in ABAP® Core
5
Antw.
7560
Views
Verwendungsnachweis Programmieren
von Beni » 16.02.2005 17:29 • Verfasst in ABAP® Core
7
Antw.
1499
Views
Verwendungsnachweis in Smartforms
von whaslbeck » 08.03.2022 09:12 • Verfasst in ABAP® Core
0
Antw.
2191
Views
Verwendungsnachweis Kostenstellen
von -hawkeye- » 18.04.2008 08:44 • Verfasst in Financials
4
Antw.
18349
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

Regex in where
vor 59 Minuten von edwin 1 / 9
Programm anlegen mit Vorlage
vor 5 Stunden von DeathAndPain 2 / 78
IT0024 Qualifikationen CP-ID
vor 5 Stunden von DeathAndPain 2 / 315
BUSOBJEKT zu CMIS PHIO ermitteln
vor 7 Stunden von snooga87 1 / 54

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

Regex in where
vor 59 Minuten von edwin 1 / 9
Programm anlegen mit Vorlage
vor 5 Stunden von DeathAndPain 2 / 78
IT0024 Qualifikationen CP-ID
vor 5 Stunden von DeathAndPain 2 / 315
BUSOBJEKT zu CMIS PHIO ermitteln
vor 7 Stunden von snooga87 1 / 54

Unbeantwortete Forenbeiträge

Regex in where
vor 59 Minuten von edwin 1 / 9
BUSOBJEKT zu CMIS PHIO ermitteln
vor 7 Stunden von snooga87 1 / 54
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3230