Dynpro Stack?

Benutzeroberflächen in SAP®-Systemen.
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

Dynpro Stack?

Beitrag von mawi (ForumUser / 61 / 0 / 1 ) »
Ich suche momentan nach einer Möglichkeit, das rufende Dynpro zu bekommen, z.B.:

ich befinde mich in Dynpro 100
dort wird aufgerufen "CALL SCREEN 200"
nun bin ich im Dynpro 200 und möchte wissen, wer mich aufgerufen hat, d.h. hier möchte ich '100' zurückbekommen.

Geht das?

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


Beitrag von brinam (Specialist / 111 / 0 / 0 ) »
Hallo mawi,

Du könntest Dir alternativ eine globale Variable (g_dynnr like sy-dynnr) definieren. Diese aktualisierst Du dann immer vor dem CALL SCREEN und kannst sie dann im PBO des gerufenen Dynpros auswerten.
Viele Grüße
Britta

Beitrag von mawi (ForumUser / 61 / 0 / 1 ) »
hallo britta,

genauso mache ich es momentan - ich hatte aber die leise hoffnung, mich auch noch von dieser globalen variablen verabschieden zu können :?

dennoch danke!

Beitrag von black_adept (Top Expert / 4131 / 130 / 955 ) »
Wenn du nur innerhalb eines Programms die Screen aufrufst gäbe es eine etwas dämliche Methode, wie man ALLE in der Aufrufhistorie davorliegenden Dynpros findet ( bei rekursiven Aufrufen allerdings nur jeweils eine nummer und nicht n viele ).

Aber den direkten Aufrufer an sich zu ermitteln halte ich für sehr schwer - wenn überhaupt machbar.
Zumal es ja Situationen gibt, in denen ein in einen Trägerdynpro eingebetteter Subscreen den neuen Screen aufruft. In solchen Fällen stellt sich ja schon mal die Frage "Wer ist denn der Aufrufer"? Sowohl für Träger als auch für Subscreen könnte ich Pros und Kontras finden.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von mawi (ForumUser / 61 / 0 / 1 ) »
ich befinde mich nur innerhalb desselben programmes und habe auch keine subscreens. könntest du mir daher bitte die etwas dämliche methode verraten? ob ich sie nutze, kann ich ja dann immer noch selbst entscheiden :)

Beitrag von black_adept (Top Expert / 4131 / 130 / 955 ) »
Hallo mawi,

mir selber hat die dämliche Methode auch nicht gefallen - und mich hat gewurmt, dass das nicht gehen soll mit dem direkten Aufrufer.

Also kurz mal den Debugger angeworfen, ein wenig rumgestochert und dann letztlich bei folgender Routine gelandet. ( Ist auf einem ECC 6.0 getestet - andere Releasestände keine Gewähr - aber da kann man das sicher ähnlich machen ) Und sieheda - es geht doch den Aufrufer in deinem speziellen Fall zu finden. Ist zwar immer noch dämlich und etwas umständlich - aber SAP dokumentiert ja leider seine System-Calls nicht.
Für meinen Fall des eingebettetn Subdynpros werden übrigens sowohl Trägerdynpro als auch Subdynpro angegeben.

Code: Alles auswählen.

FORM test2 .
  DATA: dyname                        LIKE  d020s-prog,
        dynumb                        LIKE  d020s-dnum,
        request                       LIKE  d020s-type VALUE 'A',
        ssf                           TYPE c VALUE 'X',
        startdynpro(8)                TYPE c VALUE 'STACKPOS',
        start_search_on_scr_stackpos  TYPE  sytabix,
        searchpath_of_subscreen_areas TYPE string,
        dpovtab                       TYPE STANDARD TABLE OF dpov.

  DATA: subrc1                        TYPE sysubrc,
        subrc2                        TYPE sysubrc.

  FIELD-SYMBOLS:<startdynpro>         TYPE clike.


  dyname = sy-repid.
  DO 9999 TIMES.
    dynumb = sy-index.
    start_search_on_scr_stackpos = 1.
    CALL  'HELP_GET_FIELDS'  ID 'DYNAME'    FIELD dyname
                             ID 'DYNUMB'    FIELD dynumb
                             ID 'REQUEST'   FIELD request
                             ID 'DPOVNAME'  FIELD syst-repid
                             ID 'DPOVNUMB'  FIELD syst-dynnr
                             ID 'SSF'       FIELD ssf
                             ID 'PROOT'     FIELD startdynpro
                             ID 'STACKPOS'  FIELD start_search_on_scr_stackpos
                             ID 'PATH'      FIELD searchpath_of_subscreen_areas
                             ID 'DPOV'      FIELD dpovtab."#EC CI_CCALL
    subrc1 = sy-subrc.
    start_search_on_scr_stackpos = 2.
    CALL  'HELP_GET_FIELDS'  ID 'DYNAME'    FIELD dyname
                             ID 'DYNUMB'    FIELD dynumb
                             ID 'REQUEST'   FIELD request
                             ID 'DPOVNAME'  FIELD syst-repid
                             ID 'DPOVNUMB'  FIELD syst-dynnr
                             ID 'SSF'       FIELD ssf
                             ID 'PROOT'     FIELD startdynpro
                             ID 'STACKPOS'  FIELD start_search_on_scr_stackpos
                             ID 'PATH'      FIELD searchpath_of_subscreen_areas
                             ID 'DPOV'      FIELD dpovtab."#EC CI_CCALL
    subrc2 = sy-subrc.
    IF subrc1 = 0 AND subrc2 <> 0.
*  was hier ankommt ist genau eine Aufrufhierarchie über der aktuellen
* Dynpronummer steht in Feld DYNUMB
      BREAK-POINT.
    ENDIF.
  ENDDO.
ENDFORM.                                                    " test2
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von mawi (ForumUser / 61 / 0 / 1 ) »
hallo und vielen dank für eure ideen!

noch ungetestet, aber ich bin grad auf den folgenden fuba gestoßen:

Code: Alles auswählen.

     GUI_GET_PARENT_DYNPRO
der klingt zumindest vielversprechend :D

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1863
Views
Web Dynpro auf anderes System mit älteren Stack übertragen
von Ippoo » 28.11.2012 17:37 • Verfasst in ABAP® für Anfänger
3
Antw.
8660
Views
Referenz => FREED STACK
von ralf.wenzel » 02.04.2020 15:22 • Verfasst in ABAP® Core
1
Antw.
1924
Views
Nachinstallation von Java Stack bei NW 2004s
von blinkie » 31.01.2008 07:23 • Verfasst in Basis
1
Antw.
2037
Views
Java Stack nachträglich deinstallieren
von este0037 » 07.04.2008 16:26 • Verfasst in Basis
1
Antw.
2180
Views
SUM EHP6 to EHP7 Java Stack Upgrade, Database System User P
von dastefl » 04.05.2015 15:02 • Verfasst in Basis

Über diesen Beitrag


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

Aktuelle Forenbeiträge

BAPI_GOODSMVT_CREATE
vor 13 Stunden von waltersen 4 / 146
SAP GUI Installation Probleme
vor 4 Tagen von Romaniac gelöst 2 / 519
Erweiterung in ME51N/ME52N:
vor einer Woche von ABAPlerv 1 / 734

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

BAPI_GOODSMVT_CREATE
vor 13 Stunden von waltersen 4 / 146
SAP GUI Installation Probleme
vor 4 Tagen von Romaniac gelöst 2 / 519
Erweiterung in ME51N/ME52N:
vor einer Woche von ABAPlerv 1 / 734

Unbeantwortete Forenbeiträge

Erweiterung in ME51N/ME52N:
vor einer Woche von ABAPlerv 1 / 734
Erweiterung in ME51N/ME52N:
vor einer Woche von ABAPlerv 1 / 647