Tastendruck simulieren.

Getting started ... Alles für einen gelungenen Start.
12 Beiträge • Seite 1 von 1
12 Beiträge Seite 1 von 1

Tastendruck simulieren.

Beitrag von 5Jacken (ForumUser / 16 / 6 / 0 ) »
Guten Morgen liebe Community,

wie der Titel schon sagt, benötige ich das Wissen, wie ich einen Tastendruck simulieren kann.
Sufu hat mir nichts gebracht was helfen könnte.

Das Problem:

Ich habe ein Drill-Down auf eine Transaktion gemacht und möchte diese ausführen.

Code: Alles auswählen.

   
SET PARAMETER ID 'XUS' FIELD Usr01-bname.
CALL TRANSACTION 'SU01' AND SKIP FIRST SCREEN.
Aber die Transaktion "SU01" schreitet nur durch Drücken eines Buttons oder durch Drücken von "F7 (Anzeigen)" weiter.

Deshalb möchte ich nach dem drill down ein Tastendruck >F7< simulieren.

Villeicht gibt mir jemand ein Beispiel, welches mich zu der Lösung führt.

Danke im Vorraus,

mfG,

5Jacken.

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


Re: Tastendruck simulieren.

Beitrag von jensschladitz (Specialist / 417 / 0 / 56 ) »
Sali,

welche Daten solklen denn angezeigt werden - vielleicht rericht dir ja auch der Aufruf des FUBA BAPI_USER_DISPLAY
In vielen Systemen ist nämlich die SU01 für den Normaluser nicht nutzbar - zumindest war es bei vielen System so auf denen ich unterwegs war.
Oder mach einen call auf TA SU3 ...

Gruss Jens
thanks Jens

Re: Tastendruck simulieren.

Beitrag von 5Jacken (ForumUser / 16 / 6 / 0 ) »
Soll schon die Transaktion SU01 sein (Anweisung). Das Programm ist nicht für normale User programmiert.

Aber danke für deine Bemühungen.

Re: Tastendruck simulieren.

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
5Jacken hat geschrieben:Aber die Transaktion "SU01" schreitet nur durch Drücken eines Buttons oder durch Drücken von "F7 (Anzeigen)" weiter.
Erste Möglichkeit ist CALL TRANSACTION mit BatchInput.
Evtl. reicht aber auch schon das setzten des FunctionCodes vor dem Call Transaktion mittels FuBa: SAPGUI_SET_FUNCTIONCODE.
Gruß Hendrik

Re: Tastendruck simulieren.

Beitrag von 5Jacken (ForumUser / 16 / 6 / 0 ) »
Entschuldigung JHM aber das müsste man mir erklären.

Edit:

Eventuell gibt man mir ein Beispiel.

In etwa so:

Code: Alles auswählen.

if i = 0.
Simuliere hier einen Tastendruck.
endif.

Re: Tastendruck simulieren.

Beitrag von black_adept (Top Expert / 4086 / 126 / 940 ) »
Hallo 5Jacken,

die Antwort von JHM ist absolut ausreichend und wenn dir das zugehörige Vorgehen noch nicht in Fleisch und Blut übergegangen ist solltest du das jetzt nachholen.

Weiterführende Info für deinen Fall:
http://help.sap.com/abapdocu_702/en/aba ... action.htm - dort Addtion 2
+ Transaktion SHDB ( Batch Input Aufzeichnung )
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Tastendruck simulieren.

Beitrag von ewx (Top Expert / 4844 / 311 / 640 ) »
black_adept hat geschrieben:die Antwort von JHM ist absolut ausreichend [...]
Nicht ganz. Denn um das gewünschte Verhalten zu erreichen muss { options-dismode | mode } auf 'E' gesetzt werden.

Re: Tastendruck simulieren.

Beitrag von black_adept (Top Expert / 4086 / 126 / 940 ) »
ewx hat geschrieben:
black_adept hat geschrieben:die Antwort von JHM ist absolut ausreichend [...]
Nicht ganz. Denn um das gewünschte Verhalten zu erreichen muss { options-dismode | mode } auf 'E' gesetzt werden.
Oder Modus "N" verwenden und erst wenn man auf dem Zieldynpro angekommen ist auf "E" oder "A" umschalten was ich für sauberer halte.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Tastendruck simulieren.

Beitrag von ewx (Top Expert / 4844 / 311 / 640 ) »
black_adept hat geschrieben: Oder Modus "N" verwenden und erst wenn man auf dem Zieldynpro angekommen ist auf "E" oder "A" umschalten was ich für sauberer halte.
Du verwirrst mich...

Re: Tastendruck simulieren.

Beitrag von black_adept (Top Expert / 4086 / 126 / 940 ) »
Modus "E" schaltet bei jedem Fehler auf sichtbar Abspielen um. Aber was der User möchte ist ja zunächst unsichtbar bis zu einem bestimmten Screen geführt zu werden. Und wenn da vorher ein Fehler auftritt ist es halt immer die Frage ob man dann dem User den (tatsächlich ungeplanten) Fehler aufblendet oder eine Abbruchmeldung des CT bekommt und dies dem User dann einfach mitteilt.
Falls bis zum Zieldynpro alles ok gelaufen ist, sollte erst hier von Modus "N" auf Modus "E" oder Modus "A" umgeschaltet werden, da genau genommen erst ab hier auch dieses Verhalten gewünscht ist.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Tastendruck simulieren.

Beitrag von ewx (Top Expert / 4844 / 311 / 640 ) »
Um das Einstiegsbild zu überspringen ist jedoch ein zwei geteilter Call-Transaction wenig sinnvoll. Bist du dir sicher, dass du den Mode zwischendurch wechseln kannst?

Re: Tastendruck simulieren.

Beitrag von black_adept (Top Expert / 4086 / 126 / 940 ) »
ewx hat geschrieben:Bist du dir sicher, dass du den Mode zwischendurch wechseln kannst?
Demo: Bei echt unerwartetem Fehler ( z.B. User gesperrt ) gibt es eine Fehlermeldung, ansonsten wird der User auf den Zielbildschirm geführt und dort dann auf Modus "E" umgeschaltet, was dann sofort zum Anzeigen des Zieldynros führt.

Code: Alles auswählen.

  DATA: ls_opt        TYPE ctu_params,
        lt_messages   TYPE STANDARD TABLE OF bdcmsgcoll,
        ls_message    LIKE LINE OF lt_messages,
        worst_message LIKE ls_message.

  PERFORM bdc_dynpro      USING 'SAPLSUU5' '0050'.
  PERFORM bdc_field       USING 'USR02-BNAME' p_uname.
  PERFORM bdc_field       USING 'BDC_OKCODE' '=CHAN'.

  PERFORM bdc_dynpro      USING 'SAPLSUU5' '0100'.
  PERFORM bdc_field       USING 'BDC_OKCODE' '/bde'.  " Umschalten auf Modus "E"

  PERFORM bdc_dynpro      USING 'SAPLSUU5' '0050'.
  PERFORM bdc_field       USING 'BDC_OKCODE' '/EBACK'.


  ls_opt-dismode = 'N'.
  ls_opt-updmode = 'S'.
  CALL TRANSACTION 'SU01' USING bdcdata OPTIONS FROM ls_opt MESSAGES INTO lt_messages.

  IF sy-subrc <> 0.
    MESSAGE 'Error - Reason follows in next message' TYPE 'I'.
    LOOP AT lt_messages INTO ls_message.

      IF worst_message IS INITIAL.
        worst_message = ls_message.
      ENDIF.

      IF ls_message-msgtyp = 'E' OR
         ls_message-msgtyp = 'A' OR
         ls_message-msgtyp = 'X'.
        worst_message = ls_message.
        EXIT.
      ENDIF.

    ENDLOOP.
    MESSAGE ID worst_message-msgid TYPE 'I' NUMBER worst_message-msgnr
        WITH worst_message-msgv1 worst_message-msgv2 worst_message-msgv3 worst_message-msgv4.
  ENDIF.
Zusatzinfo, die nur für ewx sinnvoll ist: ZSS_TEST1B
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

10
Antw.
4252
Views
Tastendruck Simulieren, On-Change-Ereignis
von Grey_M » 24.01.2006 12:02 • Verfasst in ABAP Objects®
2
Antw.
3361
Views
Ausgewähltes / aktives CUSTOM CONTROL bei F2-Tastendruck
von Gokar » 07.03.2018 17:34 • Verfasst in Dialogprogrammierung
3
Antw.
2633
Views
Simulieren von Rechnungsbuchungen
von Flo » 15.11.2005 16:05 • Verfasst in Financials
0
Antw.
1228
Views
KEYPRESS simulieren
von Hunter » 20.05.2008 17:53 • Verfasst in ABAP Objects®
0
Antw.
2106
Views
SOA mit MiniSAP simulieren?!?!?
von gerd-im-netz » 05.09.2006 16:26 • Verfasst in Java & SAP®

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 11 Stunden von Bright4.5 1 / 243
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1880
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8484