SAP Jobsuche bei DV-Treff
M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Moin.

Ich beschäftige mich nun seit einiger Zeit mit dem Thema GUIXT und stehe nun an einem Punkt an dem ich nicht weiter komme.

Ich muss immer wieder einzelne markierte Zeilen in einem Auftrag (IW32) bearbeiten.

Zur Zeit muss ich manuell die Anzahl der markierten Zeilen eingeben.

Dieses würde ich gerne automatisieren.

z.B. markiere ich in der IW32 die Zeile 2,5,7 und 10.

Bei diesen möchte ich dann eine Änderung durchführen.

Wie kann SAP automatisch erkennen wie viele Zeilen ich markiert habe?

(In diesem Fall 4)

Vielen Dank für die Hilfe

Micha

ScriptMan
vor 5 Jahre
Hallo Micha,

wenn du uns ein Beispiel liefern würdest, könnten wir uns es hier im Forum mal ansehen. Es ist nämlich auch nicht ganz klar, ob es sich tatsächlich um GuiXT oder SAP GUI Scripting handelt.

Grüße, ScriptMan

M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Zitat von: ScriptMan 

Hallo Micha,

wenn du uns ein Beispiel liefern würdest, könnten wir uns es hier im Forum mal ansehen. Es ist nämlich auch nicht ganz klar, ob es sich tatsächlich um GuiXT oder SAP GUI Scripting handelt.

Grüße, ScriptMan

Hallo Scriptman.

Ich habe die Thematik etwas schlecht beschrieben.

Zur Zeit habe ich folgenden Ablauf:

1. Markieren der zu bearbeitenden Zeilen im Auftrag (IW32)

2. Manuelle Eingabe der Zeilen Zahl als Scriptvariable V[AnzZeilen] (Guixt erstelltes Eingabefeld)

3. Ausführen des Bearbeitungsscriptes z.B. Setzen des Steuerschlüssels

Ich würde gerne den Schritt 2 Automatisieren so das GUIXT erkennt das z.B. 4 Zeilen markiert sind und diese als V[AnzZeilen] setzt.

In Schritt 3 erfolgt dann ein "Herunterzählen" dieser Variable bis alle markierten Zeilen bearbeitet sind.

Gruss Micha

ScriptMan
vor 5 Jahre
Ich arbeite leider nicht mit IW32. Könntest du uns ein Bild liefern, das es deutlich macht, ob es sich um ein Grid oder eine einfache Tabelle handelt.

Grüße, ScriptMan

M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Dieses Bild ist aus dem Internet von Community WIKI.

Sieht aber genauso aus wie bei mir ;)

[img=https://wiki.scn.sap.com/wiki/display/PLM/Open+Catalog+Interface]https://wiki.scn.sap.com/wiki/display/PLM/Open+Catalog+Interface[/img]

ScriptMan
vor 5 Jahre
Hallo Micha,

ich habe mal da einen Ausflug in die Vergangenheit getan:

http://www.synactive.com/examples/example0018.html 

Eine abgespeckte Version dessen würde dann die Anzahl der markierten Sätze ermitteln.

z.B.

Pushbutton (toolbar) "@9E\QAnzahl markierter Sätze anzeigen@Anzahl" process="Table_Anzahl.txt"

InputScript "Table_Anzahl.txt":

set V[TableName] ""

set V[marked] ""

set V[TableName] "&V[_cursortabtechname]"

if V[TableName=]

message "W: Der Cursor muss sich innerhalb einer Tabelle befinden." -statusline

goto script_ende

endif

// scroll to first line

Screen *

Enter "/ScrollToLine=1" Table="T[&V[TableName]]"

// Variables

Set V[absrow] 1 // Absolute row number

set V[Anzahl] 0

Screen *

GetTableAttribute T[&V[TableName]] FirstVisibleRow=FVisRow LastVisibleRow=LVisRow LastRow=LastRow

label new_row

// end of screen?

if V[absrow>&V[LVisRow]]

Enter "/ScrollToLine=&V[absrow]" Table="T[&V[TableName]]"

goto end_of_screen

endif

Set V[selected] "&cell[&V[TableName],0,&V[absrow]]"

// Selected?

if V[selected=X]

set V[Anzahl] "&V[Anzahl]" + 1

set V[marked] "X"

endif

Set V[absrow] &V[absrow] + 1

goto new_row

label end_of_screen

if V[marked=]

message "S: Es wurden keine selektierten Sätze gefunden." -statusline

else

message "S: Die Anzahl der markierten Sätze: &V[Anzahl]" -statusline

endif

// Back to line 1

Enter "/ScrollToLine=1" Table="T[&V[TableName]]"

label script_ende

Grüße, ScriptMan

M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Zitat von: ScriptMan 

Hallo Micha,

ich habe mal da einen Ausflug in die Vergangenheit getan:

http://www.synactive.com/examples/example0018.html 

Eine abgespeckte Version dessen würde dann die Anzahl der markierten Sätze ermitteln.

z.B.

...script_ende

Grüße, ScriptMan

Moin. Das klingt doch sehr gut.

Manchmal sieht man den Wald vor lauter Bäumen nicht.

Ich werde es ausprobieren und dann wieder ein Feedback geben.

Vielen Dank

M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Zitat von: ScriptMan 

Hallo Micha,

ich habe mal da einen Ausflug in die Vergangenheit getan:

http://www.synactive.com/examples/example0018.html 

Eine abgespeckte Version dessen würde dann die Anzahl der markierten Sätze ermitteln.

z.B.

....

Grüße, ScriptMan

Vielen Dank.

Es funktioniert Wunderbar.

Jetzt muss ich mir nur noch einen Rückzähler einbauen damit ich eine "unbegrenzte" Zeilen bearbeiten kann und dann ist es perfekt.

Das sollte ich aber hinbekommen.

Vielen Dank dafür

M.Carl
  • M.Carl
  • SAP Forum - Neuling Thema Starter
vor 5 Jahre
Hallo.

Bis jetzt hat das Skript super funktioniert.

Aber nun habe ich ein Limit festgestellt.

Ich habe manchmal Aufträge mit ca 50 Einträgen/Vorgängen.

Jedoch hört das Skript nach ca. 28 Einträgen auf zu arbeiten.

Weis jemand Rad?

Es wird quasi bis Vorgang 280 (Immer 10er schritte bei uns) alles bearbeitet und danach nicht mehr.

Ich habe das oben angeschriebene Skript verwendet und ihm darunter gesagt was er tun soll.

Hoffe auf weitere Hilfe.

Vielen Dank

MfG Micha