Skript kürzen bzw. lesbarer machen

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

Skript kürzen bzw. lesbarer machen

Beitrag von i34V (ForumUser / 4 / 0 / 0 ) »
Hallo zusammen,
bin wirklich Anfänger und komme mit Fragen daher die sicher schon einmal jemand genannt hat. Ich finde aber leider nichts passendes und von daher versuche ich es einfach mal.

Code wurde durch den Recorder aufgenommen.

Code: Alles auswählen.

with session

        .findById("wnd[0]/tbar[0]/okcd").Text = "/NSQ01"
        .findById("wnd[0]").sendVKey 0
        .findById("wnd[0]/mbar/menu[1]/menu[7]").Select
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell 10, "DBBGTEXT"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "10"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").doubleClickCurrentCell
        .findById("wnd[0]/usr/ctxtRS38R-QNUM").Text = "KOMMI_VERLADEN"
        .findById("wnd[0]/tbar[1]/btn[17]").press
        .findById("wnd[1]/usr/ctxtRS38R-VARIANT").Text = "/VZ ALLE NVE"
        .findById("wnd[1]/tbar[0]/btn[0]").press
        .findById("wnd[0]/usr/ctxtSP$00003-LOW").Text = LIEFERDATUM_1
        .findById("wnd[0]/tbar[1]/btn[8]").press

end with
Bestimmte Teile des Code konnte ich auch schon kürzen oder mit Variablen bestücken was bis hierher auch gut funktioniert.

Interessant für mich ist dieser Teil:

Code: Alles auswählen.

        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell 10, "DBBGTEXT"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "10"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").doubleClickCurrentCell
Wenn jemand aus unserem Haus eine neue Variante anlegt dann steht meine Variante vielleicht nicht mehr in Zeile 10 sondern 11 und es würde die falsche Variante auswählen.

Meine Frage ist also, wie kann ich diesen Teil so ändern das der Code auf meine Variante zugreift ohne Angabe der Zeile.

Versucht habe ich mich in diesem Abschnitt:

aus:

Code: Alles auswählen.

.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell 10, "DBBGTEXT"
wurde:

Code: Alles auswählen.

.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell TEST_1, "DBBGTEXT"
Hat auch funktioniert, es bleibt aber immer noch diese Zeile.

Code: Alles auswählen.

.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "10"
Für Tipps wäre ich sehr Dankbar
Gruß

Mike

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


Re: Skript kürzen bzw. lesbarer machen

Beitrag von i34V (ForumUser / 4 / 0 / 0 ) »
Hallo zusammen,
hab natürlich ein wenig weiter probiert und mir durch Filter setzen beholfen. Denn dann scheint es so das dieser Teil immer 0 ist. 😊

Code: Alles auswählen.

.findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "0"
Ist wahrscheinlich eine blöde Routine und andere schlagen die Hände über dem Kopf zusammen, aber zum einsteigen und schauen was so geht reicht es.

Vielleicht geht es eleganter was mich natürlich weiterhin interessieren würde.

Gruß
Mike

Re: Skript kürzen bzw. lesbarer machen

Beitrag von sap_enthusiast (ForumUser / 94 / 25 / 23 ) »
Gibt es eine Fehlermeldung?
Falls nicht hast mit Debuggen versucht? Bei reine Script Datei kannste mit Visual Studio und Terminal das erreichen, bei Excel einfach VB Editor.

Re: Skript kürzen bzw. lesbarer machen

Beitrag von i34V (ForumUser / 4 / 0 / 0 ) »
Hallo sap_enthusiast,

mein 2ter Post wurde wahrscheinlich erst nach deiner Antwort freigegeben. :-)

Das ganze Skript ist weitaus größer und auch schon im Excel untergebracht mit Anmeldung und allem drum und dran. Alles funktioniert auch ohne zu murren.

Ich muss das Query aber bei der Aufnahme auswählen z.B. mit doppelklick oder markieren und Enter.

Doppelklick:

Code: Alles auswählen.

        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell 10, "DBBGTEXT"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "10"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").doubleClickCurrentCell
markieren und Enter:

Code: Alles auswählen.

        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").setCurrentCell 10, "DBBGTEXT"
        .findById("wnd[1]/usr/cntlGRID1/shellcont/shell").selectedRows = "10"
        .findById("wnd[0]").sendVKey 0
Test_1 würde bei uns bedeuten:

Code: Alles auswählen.

selectedRows = "10"
jetzt kommt einer daher und erstellt die Variante Test_0 welche dann:

Code: Alles auswählen.

selectedRows = "10"
ist und meine

Code: Alles auswählen.

selectedRows = "11"
und schon würde nix mehr funktioneren. Mein Trick hierzu siehe 2ten Post von mir.

Gruß
Mike

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2588
Views
Lohnart Kürzen nach Beschäftigungsgrad
von MarcoS » 10.04.2008 16:51 • Verfasst in Human Resources
10
Antw.
3308
Views
integer in SAP Skript Formular
von cali » 13.12.2006 08:38 • Verfasst in ABAP® Core
2
Antw.
1574
Views
Skript Fehler im HTML Control
von Neroringer » 25.10.2006 17:00 • Verfasst in Basis
7
Antw.
2386
Views
SAP Skript - Perform mit zusammengesetzter Variable
von Kaiwalker » 07.02.2007 12:04 • Verfasst in ABAP® Core

Über diesen Beitrag



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.