SAP Jobsuche bei DV-Treff
newgui
  • newgui
  • SAP Forum - Experte Thema Starter
vor 10 Jahre
Hallo Forumsgemeinde,

stehe vor einem Problem bei dem ich nicht mehr weiter weiß.

Ich habe habe ein script mit dem über die vl71 der Versanddurchlaufschein gedruckt werden soll.

So funktionierts wenn der Parameter VERMO passt.

session.findById("wnd[0]/tbar[0]/okcd").text = "vl71"

session.findById("wnd[0]").sendVKey 0

session.findById("wnd[0]/usr/ctxtRG_KSCHL-LOW").text = "ZL12"

session.findById("wnd[0]/usr/ctxtPM_NSORT").text = "01"

session.findById("wnd[0]/usr/ctxtPM_VERMO").text = "1"

session.findById("wnd[0]/usr/ctxtRG_VSTEL-LOW").text = "211D"

session.findById("wnd[0]/usr/ctxtGF_RFPRT").text = "LOCL"

session.findById("wnd[0]/usr/ctxtGF_RFPRT").setFocus

session.findById("wnd[0]/usr/ctxtGF_RFPRT").caretPosition = 4

session.findById("wnd[0]/usr/chk[1,3]").selected = true

session.findById("wnd[0]/tbar[1]/btn[14]").press

session.findById("wnd[0]/tbar[0]/btn[3]").press

session.findById("wnd[0]/tbar[0]/btn[3]").press

Das Problem ist nun, dass hier je nachdem ob er zum ersen mal gedruckt wird eine 1 steht sonst eine 2

session.findById("wnd[0]/usr/ctxtPM_VERMO").text = "1"

Wenn ich auf einen Fehler laufen würde könnte ich es ja über einen Error handler abfangen. Leider wird hier aber kein Fehler im script erzeugt sondern es kommt halt die Meldung "Control not found by id". und dann steht das script.

Ich hab auch noch nichts gefunden wie ich diese Meldung abfangen könnte und dann statt der 1 eine 2 reinschreiben und den Rest wieder ausführen könnte. 😢

session.findById("wnd[0]/usr/ctxtGF_RFPRT").setFocus

session.findById("wnd[0]/usr/ctxtGF_RFPRT").caretPosition = 4

session.findById("wnd[0]/usr/chk[1,3]").selected = true

session.findById("wnd[0]/tbar[1]/btn[14]").press

session.findById("wnd[0]/tbar[0]/btn[3]").press

session.findById("wnd[0]/tbar[0]/btn[3]").press

Würd mich freuen wenn mir jemand helfen könnte.

mfg

newgui

ScriptMan
vor 10 Jahre
Hallo newgui,

wo genau steht die Fehlernachricht?

- in einem neuen Fenster

- in der SAP-Message-Fußzeile

- oder ...

Leider habe ich keinen Zugriff auf die TA VL71.

Grüße,

ScriptMan

newgui
  • newgui
  • SAP Forum - Experte Thema Starter
vor 10 Jahre
Hallo Scriptman,

danke für deine Antwort. Du hast mir jetzt gleich indirkt weitergeholfen. Stichwort SAP-Message Fußzeile 😁 . Wusste, dass ich dazu schon mal was in der GUIXT-Dokumentation gelesen hatte.

Hab jetzt das Script nicht mit gui scripting sondern mit guixt aufgebaut und dabei die Message abgefangen .

Set F[%_PM_VERMO_%_APP_%-TEXT] "2"

Ausführen

IF V[message="Es existieren keine Nachrichten für die Wiederholverarbeitung"]

Set F[%_PM_VERMO_%_APP_%-TEXT] "1"

Danach Drucken

else

Drucken

endif

Zumindest scheint es zu funktionieren. Dabei bin ich endlich auch dahintergekommen wie man ein Kontrollkästchen in guixt setzt. Beim Aufzeichnen wird ja nichts angezeigt. Hatte das zwar schon mal mit x versucht allerdings klein geschrieben 😝 .

Set list[3,1] "X"

Trotzdem noch die Frage: Könnte man SAP-Message-Fußzeilen auch per scripting abfangen?

Man weiß ja nicht ob man es nicht nochmal braucht ;-)

mfg

newgui

ScriptMan
vor 10 Jahre
Hallo newgui,

das könnte man als gegenseitige Anregung bezeichnen. Die sogenannte WIN - WIN - Situation führt alle Beteiligten eine Stufe weiter. 👍

Zu der letzten Frage habe ich noch einen Link für dich. Es könnte sein, dass man dort fündig wird.

http://scn.sap.com/thread/744719 

Grüße,

ScriptMan

Benutzer, die gerade dieses Thema lesen