Mittels GuiXT können sie alle Selektionsfelder initialisieren (incl. Mehrfachauswahl)

Mit folgendem InputScript können sie für einen Selektionsscreen sämtliche Eingabefelder initalisieren.
Sollte z.B. durch die Auswahl einer Variante auch eine Mehrfachauswahl hinterlegt worden sein, so wird auch diese gelöscht.
Je nach Transaktion wo dieses Script eingesetzt wird müssen ev. die Koordinaten der einzelnen Elemente noch angepasst werden.

Die Anzahl der Zeilen wurde auf 100 begrenzt. Sollte ein Selektionsbild jedoch mehr als 100 Eingabefelder habe, so können sie einfach den Wert von 100 erhöhen.

Das Script eignet sich auch dazu, als Include in einem bestehenden InputScript aufgenommen zu werden. (Möglichst am Anfang)

// InputScript um die Selektionsfelder eines beliebigen Selektionschirmes zu löschen
// 27.01.2010 / Gérald Koehn / Koehn Consulting / www.guixt.ch
// Script wurde für Transaktion IW49 entwickelt,
// ev. müssen für andere Transaktionen gewisse Koordinaten angepasst werden

// Es wird über alle Bildelemente geloopt "Feld von" und "Feld bis" sowie die Mehrfachselektion

Set V[z]  4        // Zeile
Set V[sv]  34      // Spalte von   Muss ev. je nach Transaktion angepasst werden
Set V[sb]  59      // Spalte bis   Muss ev. je nach Transaktion angepasst werden
Set V[sm]  78      // Spalte Mehrfachselektion Muss ev. je nach Transaktion angepasst werden

Label Selektion_new_Screen
Screen *
  Label Selektion_loeschen
  // limitiert auf 100 Zeilen, sollte im Normalfall ausreichen, 
  // kann jedoch einfach erhöht werden
  if V[z<100]
    GetFieldattribute  #[&[z],&[sm]] buttonicon="Icone"
    if V[Icone=1E]   // dann hat es noch eine Mehrfachselktion, die auch noch gelöscht werden sollte
      SetCursor #[&[z],&[sv]]
      Enter "DELA"
      Set #[&[z],&[sv]] ""       // Löschen Feld von
      Set #[&[z],&[sb]] ""       // Löschen Feld bis
      set V[z] &[z] + 1
      goto Selektion_new_Screen
    else
      Set #[&[z],&[sv]] ""       // Löschen Feld von
      Set #[&[z],&[sb]] ""       // Löschen Feld bis
      set V[z] &[z] + 1
      goto Selektion_loeschen
    endif   
  else
    Enter
  endif

Empfehlen