Nach Absprung mit F3 zurück ins Programm springen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
23 Beiträge • Seite 1 von 2 (current) Nächste
23 Beiträge Seite 1 von 2 (current) Nächste

Nach Absprung mit F3 zurück ins Programm springen

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Hallo Leute,

ich habe einen Hotspot auf das Feld Tabname gesetzt und springe in die SE11 ab.
Von dort aus wird eine Aufzeichnung mit Tabname abgespielt und auf Anzeigen geklickt.
Wenn ich nun F3 drücke komme ich logischerweise ins Auswahlfenster der SE11.
Nun ist meine Frage wie mache ich es, dass wenn ich F3 drücke zurück in meine ALV-Tabelle springe?

Danke im Voraus

Gruß

Max
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

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


Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
hmaxi96 hat geschrieben:Nun ist meine Frage wie mache ich es, dass wenn ich F3 drücke zurück in meine ALV-Tabelle springe?
Für das "ungewollte" SE11-Übersichtsbild musst du auch einen Eintrag in die BI-Mappe aufnehmen incl. OK-Code zum Verlassen.
Den CALL TA dann mit mode = E aufrufen.
Es wird dann bis in die SE11-Detailbild dunkel abgespielt. Da es für das Detailbild keinen OK-Code mehr gibt, läuft der BI auf einen Fehler und wird hell. Wird das Detailbild verlassen erkennt das der Call TA und spielt den Rest der Mappe ab (=Verlassen der SE11).
Gruß Hendrik

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Danke für die schnelle Antwort! :up:
Die CALL TRANSACTION hat bei mir bereits den MODE 'E'.
Wie soll ich das mit dem OK-Code machen?
Wenn ich den MODE zu 'A' umändere wird mir der Code angezeigt: =WB_DISPLAY
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
hmaxi96 hat geschrieben:Die CALL TRANSACTION hat bei mir bereits den MODE 'E'.
Wie soll ich das mit dem OK-Code machen?
Beispielsweise:

Code: Alles auswählen.

REPORT ztest.

PARAMETERS: p_tab TYPE tabname16 DEFAULT 'MARA'.

DATA:   bdcdata LIKE bdcdata    OCCURS 0 WITH HEADER LINE.

START-OF-SELECTION.

* Übersichtbild: Einstig in Tabelle
  PERFORM bdc_dynpro      USING 'SAPLSD_ENTRY' '1000'.
  PERFORM bdc_field       USING 'RSRD1-TBMA'
                                'X'.
  PERFORM bdc_field       USING 'RSRD1-TBMA_VAL'
                                p_tab.
  PERFORM bdc_field       USING 'BDC_OKCODE'
                              '=WB_DISPLAY'.

* Detailbild anzeige: hier darf der User machen was er will
*  PERFORM bdc_dynpro      USING 'SAPLSD41' '2200'.

* Übersichtbild: Verlassen
  PERFORM bdc_dynpro      USING 'SAPLSD_ENTRY' '1000'.

  PERFORM bdc_field       USING 'BDC_OKCODE'
                                '=WB_BACK'.

  CALL TRANSACTION 'SE11' USING bdcdata MODE 'E'.

FORM bdc_dynpro USING program dynpro.
  CLEAR bdcdata.
  bdcdata-program  = program.
  bdcdata-dynpro   = dynpro.
  bdcdata-dynbegin = 'X'.
  APPEND bdcdata.
ENDFORM.                    "BDC_DYNPRO

FORM bdc_field USING fnam fval.
  CLEAR bdcdata.
  bdcdata-fnam = fnam.
  bdcdata-fval = fval.
  APPEND bdcdata.
ENDFORM.                    "BDC_FIELD
zeigt eine Tabelle an und kehrt danach wieder ganz ins aufrufende Programm zurück....

Folgende Benutzer bedankten sich beim Autor JHM für den Beitrag:
hmaxi96

Gruß Hendrik

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Ich habs genau so, blos ohne den =WB_BACK.
Wenn ich aber diesen Perform einfüge, dann springt er beim Hotspotclick nur in die SE11 und zeigt nicht die Struktur an.
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von hmaxi96 (ForumUser / 77 / 13 / 1 ) »
Hatte doch irgendeine Kleinigkeit anders :D
Vielen Dank! :)
Investor im Bereich Kryptowährungen.
Bei Interesse oder Fragen stehe ich Ihnen gerne zur Verfügung.

https://www.xing.com/profile/Maximilian_Hauer3

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von inab (ForumUser / 69 / 0 / 6 ) »
Hast Du es schon mal mit
call transaction ... and skip first screen versucht ?

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von ralf.wenzel (Top Expert / 3924 / 200 / 280 ) »
Das bringt nix, beim Rücksprung wird das Bild trotzdem angesprungen, der SKIP FIRST SCREEN gilt nur fürs "Reingehen" nicht fürs "Rausgehen". Hab ich mich schon oft drüber geärgert.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von stef5 (ForumUser / 6 / 1 / 0 ) »
Hallo Leute,
ich habe das gleiche Problem.
Ich springe von einer Transaktion in eine SAP Standard Transaktion und überspringe den Selektionsschirm.
Beim Rücksprung ruft er mir aber den Selektionsschirm auf.
Versuche ich das wie oben beschrieben zu verhindern, springt er sofort zurück ohne dass mir die aufgerufene Transaktion angezeigt wird.
Wie kann ich die Ausführung der Steps zwischenzeitlich stoppen? Die OK-Codes kommen von der Aufzeichnung...

Code: Alles auswählen.

        CLEAR ls_bdcdata.
        ls_bdcdata-program  = 'SAPLICL_BDT_APPL'.
        ls_bdcdata-dynpro   = '0100'.
        ls_bdcdata-dynbegin = 'X'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'BDC_OKCODE'.
        ls_bdcdata-fval = '=ENTER'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'ICL_CDC_SCREEN_FIELDS-CLAIM'.
        ls_bdcdata-fval = lv_claim.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-program  = 'SAPLICL_BDT_APPL'.
        ls_bdcdata-dynpro   = '0100'.
        ls_bdcdata-dynbegin = 'X'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'BDC_OKCODE'.
        ls_bdcdata-fval = '/EEXIT'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CALL TRANSACTION 'ICLCDC03'  USING lt_bdcdata MODE 'E'.

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von DeathAndPain (Top Expert / 1941 / 257 / 412 ) »
Wenn Du in der Transaktion stehenbleiben möchtest, gar nicht. Das ist leider nicht zu ändern. Darüber ärgere ich mich auch immer, wenn ich irgendwo per Batch Input einen SM30-Absprung in die Tabellenpflege einer (kundeneigenen) Customizingtabelle mache. Wenn man mit F3 zurückgeht, muss man durch das Selektionsbild der SM30 durch, bevor man wieder im aufrufenden Programm landet.

Was ich bei solch Batch Inputs aber noch als kleinen Geheimtipp empfehlen kann, ist uraltes Wissen aus 3.1i-Zeiten, das heute kaum noch Erwähnung findet, das aber gleichwohl unverändert funktioniert. Und zwar kann man anstelle der dynproindividuellen Okcodes auch Codierungen für die virtuell zu drückende Funktionstaste verwenden.

Wenn man z.B. mit F3 wieder aus dem Programm rausgehen möchte, dann kann man anstelle von

Code: Alles auswählen.

PERFORM bdc_field       USING 'BDC_OKCODE'
                              '=WB_BACK'.
einfach schreiben:

Code: Alles auswählen.

PERFORM bdc_field       USING 'BDC_OKCODE'
                              '/03'.
Dabei steht "/03" für das Drücken von F3. Auf die Weise muss man sich keine Gedanken machen, wie der genaue Exit-Okcode da lautet, und der Batch funktioniert auch dann noch, wenn sich der Exitcode aus irgendeinem Grund mal ändern sollte. Mit "/01" bis "/12" kann man virtuell die Funktionstasten F1-F12 drücken, mit "/13" bis "/24" dieselben Tasten mit zusätzlich gedrücktem SHIFT. So erreicht man z.B. den gelben statt des grünen Pfeils mit "/15" (Shift+F3).

Was ich von der Gemeinde gerne mal wissen würde: Weiß jemand, wofür bei den Okcodes dieses Gleichheitszeichen am Anfang steht? Ich habe nie eine Wirkung davon erkennen können. Ob ich 'BDC_OKCODE' '=WB_BACK' oder 'BDC_OKCODE' 'WB_BACK' angebe, war in meinen Tests immer Jacke wie Hose. Und der eigentliche auszulösende Code ist ja auch nur der ohne das Gleichheitszeichen.

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
stef5


Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von stef5 (ForumUser / 6 / 1 / 0 ) »
DeathAndPain hat geschrieben:Wenn Du in der Transaktion stehenbleiben möchtest, gar nicht. Das ist leider nicht zu ändern. Darüber ärgere ich mich auch immer, wenn ich irgendwo per Batch Input einen SM30-Absprung in die Tabellenpflege einer (kundeneigenen) Customizingtabelle mache. Wenn man mit F3 zurückgeht, muss man durch das Selektionsbild der SM30 durch, bevor man wieder im aufrufenden Programm landet.
Was ich dabei nicht verstehe ist die Aussage von JHM:
JHM hat geschrieben:Für das "ungewollte" SE11-Übersichtsbild musst du auch einen Eintrag in die BI-Mappe aufnehmen incl. OK-Code zum Verlassen.
Den CALL TA dann mit mode = E aufrufen.
Es wird dann bis in die SE11-Detailbild dunkel abgespielt. Da es für das Detailbild keinen OK-Code mehr gibt, läuft der BI auf einen Fehler und wird hell. Wird das Detailbild verlassen erkennt das der Call TA und spielt den Rest der Mappe ab (=Verlassen der SE11).
Heißt das ich habe kein Detailbild ohne OK-Code? Und er läuft dewegen durch? Ich müßte also einen Fehler erzeugen damit es stoppt???

Ich habe das jetzt mal ausprobiert. Ich erzeuge einen Fehler, indem ich ein Feld anspreche das es gar nicht gibt. Er stoppt und zeigt mir den Fehler an. Mit Retour kommt jetzt kein Selektionsschirm mehr. Nur die Fehlermeldung ist jetzt noch lästig. Bekomme ich die irgendwie weg oder kann ich irgend einen Fehler erzeugen der nicht angezeigt werden kann?

Code: Alles auswählen.

       
        CLEAR ls_bdcdata.
        ls_bdcdata-program  = 'SAPLICL_BDT_APPL'.
        ls_bdcdata-dynpro   = '0100'.
        ls_bdcdata-dynbegin = 'X'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'BDC_OKCODE'.
        ls_bdcdata-fval = '=ENTER'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'ICL_CDC_SCREEN_FIELDS-CLAIM'.
        ls_bdcdata-fval = lv_claim.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-program  = 'SAPLICL_BDT_APPL'.
        ls_bdcdata-dynpro   = '0100'.
        ls_bdcdata-dynbegin = 'X'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'michgibtsnicht'.
        ls_bdcdata-fval = 'ERROR'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-program  = 'SAPLICL_BDT_APPL'.
        ls_bdcdata-dynpro   = '0100'.
        ls_bdcdata-dynbegin = 'X'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CLEAR ls_bdcdata.
        ls_bdcdata-fnam = 'BDC_OKCODE'.
        ls_bdcdata-fval = '/EEXIT'.
        APPEND ls_bdcdata TO lt_bdcdata.
        CALL TRANSACTION 'ICLCDC03'  USING lt_bdcdata MODE 'E'.

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von DeathAndPain (Top Expert / 1941 / 257 / 412 ) »
Heißt das ich habe kein Detailbild ohne OK-Code? Und er läuft dewegen durch? Ich müßte also einen Fehler erzeugen damit es stoppt???
Du wilst doch, dass es "durchläuft"?! JHM (und ich auch) haben Dich jedenfalls so verstanden, dass Dein Batch Input im Prinzip tut, was er soll, aber anstatt am Ende zu terminieren, bleibt er im letzten Bild der Transaktion stehen und zeigt dieses an. Deshalb hat JHM Dich darauf hingewiesen, dass Du für dieses letzte Bild auch noch einen Ok-Code in Deinem Batch Input vorsehen musst, damit es verlassen wird (z.B. "/03" :wink: ).

Und jetzt baust Du extra einen Fehler ein, um in der Mappe hängenzubleiben!?

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von stef5 (ForumUser / 6 / 1 / 0 ) »
DeathAndPain hat geschrieben:Du wilst doch, dass es "durchläuft"?!
Nein. Ich will in der aufgerufenen Transaktion stehen bleiben. Und wenn der User zurückgeht soll er den Selektionsschirm nicht anzeigen. Also den BDC Code weiterausführen.
DeathAndPain hat geschrieben: JHM (und ich auch) haben Dich jedenfalls so verstanden, ...Deshalb hat JHM Dich darauf hingewiesen, ...
JHM hat mir nie geantwortet. Ich habe diesen Thread nur aufgegriffen weil ich ja das gleiche Problem habe wie hmaxi96 damals, wo ihm JHM geholfen hat.

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von DeathAndPain (Top Expert / 1941 / 257 / 412 ) »
Nein. Ich will in der aufgerufenen Transaktion stehen bleiben. Und wenn der User zurückgeht soll er den Selektionsschirm nicht anzeigen. Also den BDC Code weiterausführen.
Das geht prinzipbedingt nicht. Ein BDC-Code hat den Stellenwert einer Batchmappe. Diese wird ohne Zutun des Benutzers ausgeführt. Lediglich wenn es bei der Abspielung einen Fehler gibt, etwa weil die in der Mappe hinterlegten Daten nicht zum angezeigten Dynpro passen, dann führt das beim Abspielmodus 'E' dazu, dass die Abspielung in den Modus 'A' wechselt und dieses Dynpro sichtbar anzeigt, damit der Benutzer die Bescherung sieht und sich was einfallen lassen kann. Der Abspielmodus ist dann aber geändert und wird nicht mehr zurück zu 'E' wechseln. Allenfalls könntest Du vielleicht erreichen, dass der Benutzer sich per Stein auf der Entertaste manuell durch die verbleibenden Dynpros bewegen lässt.

Re: Nach Absprung mit F3 zurück ins Programm springen

Beitrag von Daniel (Specialist / 314 / 68 / 44 ) »
Ruf doch einfach den Baustein RS_DD_TABL_EDIT.
Der macht genau die gewünschte Anzeige
(EDIT_MODE = 'S')

Vergleichbare Themen

5
Antw.
3534
Views
Springen in richtige Zeile zurück
von Kojak » 05.12.2005 13:32 • Verfasst in ABAP® für Anfänger
2
Antw.
2823
Views
Absprung von ALV in Transaktion und zurück
von ABAP-Azubi » 29.01.2014 13:10 • Verfasst in ABAP® für Anfänger
3
Antw.
5252
Views
Absprung über Batch Input in eine Transaktion und ZURÜCK
von Jura » 01.09.2005 17:53 • Verfasst in ABAP® für Anfänger
4
Antw.
1924
Views
Absprung in ein anderes Programm erkennen
von DeathGuardian » 13.10.2005 12:52 • Verfasst in ABAP® Core
3
Antw.
1996
Views
Nach Absprung wird Programm geschlossen
von hmaxi96 » 29.03.2016 07:44 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

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.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 2 Tagen von Bright4.5 1 / 757
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2380
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8966