Funktion Input Sets bieten die Möglichkeit, vordefinierte Eingabewerte abzulegen und über einen Mausklick abzurufen. Pro Bildschirmmaske können Sie mehrere Input Sets definieren.

Die Input Sets können sowohl individuell pro Benutzer als auch für Benutzergruppen definiert werden. Sie werden in der Drucktastenleiste ganz rechts angezeigt: in Blau die individuell definierten Input Sets mit den jeweiligen Kennbuchstaben, z.B. , in Gelb die allgemein zur Verfügung stehenden, z.B. .

Ein Klick auf die rechte Maustaste zeigt Ihnen den Namen des Input Set sowie die Feldnamen und Inhalte:

Beispiel Persönliche Input Sets definieren Sie, indem Sie im GuiXT Window auf Edit->History klicken und dort die Werte erfassen. Jedes Input Set beginnt mit einem Titel in eckigen Klammern, anschließend pro Eingabewert eine Zeile mit der Feldbezeichnung, Doppelpunkt und dem einzugebenden Wert:

[Rechnungseingang]
Buchungskreis: 0001
Belegart:RE
Währung/Kurs: DEM

Der erste Buchstabe des Titels, z.B. R, wird dann von GuiXT in der Drucktastenleiste angezeigt.

Der Dateinamen für allgemein benutzbare Input Sets ist der gleiche. Die Datei kopieren Sie in das im GuiXT Profile angegebene Verzeichnis "Shared Input Sets".

Feldbezeichnungen Folgende Feldbezeichnungen sind möglich
  • Feldtexte
    Buchungskreis: 0001
    Belegart: KN
  • Direkte Positionsangabe
    Im Format #[Zeile,Spalte,Feldlänge]:
    #[5,20,18]:00058102
  • Technische Feldnamen (sprachunabhängig)
    BKPF-BLART: SA
  • Tabellenfelder
    Im Format cell[Tabellenname,Spaltenname,Zeile]. Bei Tabellen ohne Titel bitte "table" als Name verwenden.
    cell[Alle Positionen,ME,1]: ST
Auslösen der Enter-Taste Im Anschluss an die Eingabe der Werte können Sie durch OK automatisch die Enter-Taste drücken, z.B.:

Werk: 0012
Lagerort: 0003
OK

Sie können auch einen Funktionscode (Transaktionscode, internen Code oder F-Taste) mitgeben, z.B.

Werk: 0012
Lagerort: 0004
OK: /9

Welche Codes hier möglich sind, finden Sie in der Dokumentation zur Pushbutton-Anweisung.

Es ist auch möglich, nach Auslösen der Enter-Taste die nachfolgende Maske ebenfalls mit Werten zu versehen. Im Unterschied zu einem Input Script (Pushbutton-Anweisung, process=) werden die Masken in diesem Fall sichtbar prozessiert, sodass längere Ketten hier nicht unbedingt sinnvoll sind.

Positionierung des Eingabecursors Durch die Eingabe in ein Feld wird auch der Eingabecursor dorthin gesetzt. Nach dem Prozessieren eines Input Set steht daher der Cursor in dem zuletzt im InputSet aufgeführten Feld. Sie können den Cursor explizit positionieren, ohne eine Eingabe auszulösen. Hierzu nennen Sie den Feldnamen und dann als Wert "@Cursor", z.B.:

Kennwort: @Cursor

Aufruf der lokalen Wertehilfe Durch den Wert "@History" können Sie für ein Feld die Eingabehistorie und lokale Wertehilfe anzeigen. Das ist insbesondere dann nützlich, wenn Sie zu einem Eingabefeld (Standardfeld oder eigenes InputField) durch eine "Image"-Anweisung mit "Input=..." die lokale Wertehilfe als kleine Ikone nach dem Feld anbieten wollen:

Image (..,..) "valuehelp.gif" Input="Abteilung:@History"

Cursor-gesteuerte Eingabe in Tabellen Bei der Eingabe in Tabellen ist es meist sinnvoll, die Tabellenzeile durch den Benutzer vorgeben zu lassen. Je nach Positionierung des Eingabecursors wird die Eingabe dann in der ausgewählten Zeile vorgenommen. Falls der Benutzer den Cursor nicht innerhalb der Tabelle positioniert hat, erfolgen die Einträge in die erste Tabellenzeile.

Geben Sie in der cell-Notation hierzu als Zelle * an, z.B.

cell[Alle Positionen,Material,*]: 10007684
cell[Alle Positionen,Auftragsmenge,*]: 1
cell[Alle Positionen,ME,*]: ST

Bei mehrzeiligen Einträgen ist auch die Angabe *+1 als Zeile möglich. Aber bitte beachten Sie hierbei, daß durch die Eingabe des Wertes der Cursor dann um eine Zeile nach unten positioniert wird, sodaß die Angabe *+1 nur bei dem jeweils ersten Feld pro neuer Zeile erfolgen darf:

cell[Alle Positionen,Material,*]: 10007684
cell[Alle Positionen,Auftragsmenge,*]: 1

cell[Alle Positionen,Material,*+1]: 10007685
cell[Alle Positionen,Auftragsmenge,*]: 10

cell[Alle Positionen,Material,*+1]: 10007686
cell[Alle Positionen,Auftragsmenge,*]: 5

Zum Schluß können Sie den Eingabecursor in die nächstfolgende Zeile stellen:

cell[Alle Positionen,Material,*+1]: @Cursor

Falls es sich um eine tabellenartige Darstellung handelt, ohne daß ein Tablecontrol verwendet wäre (insbesondere in SAP Rel. 3.1), so verwenden Sie ebenfalls den Index *, z.B. Material(*). Dadurch erfolgt die Eingabe in der Zeile, in der der Eingabecursor gerade steht. Auch hier ist die Notation *+1 ebenfalls unterstützt.

Eigene Bilder statt Anfangsbuchstaben Sie können in der Definition eines Input Set auch eine eigene kleine Bilddatei angeben, die dann statt des Buchstabens angezeigt wird, z.B.:

[Reisebeleg] Image=C:\GuiXT\Images\travel.gif
Belegart: T5
Buchungskreis: 0001

Die Größe sollte 18x18 Pixel betragen. Die Umrandung (3D-Effekt) muß, falls gewünscht, im Bild enthalten sein.

Gemeinsam genutzte InputSets für mehrere Benutzer


Shared Input Sets

Im GuiXT-Profile können Sie ein zusätzliches Verzeichnis angeben:  "Shared input sets". Sie können hier Input Sets definieren, die von allen Anwendern oder von Anwendergruppen eingesetzt werden sollen. Diese Input Sets werden durch Ikonen einer anderen Farbe dargestellt (gelb anstelle von blau).

 

Gemeinsame genutzte Input Sets können pro Bild  sprachabhängig oder sprachunabhängig gepflegt werden. GuiXT sucht jeweils zunächst nach eine .inp-Datei, die den Sprachenschlüssel im Dateinamen enthält (Aufbau identisch wie bei den Scriptnamen). Wird diese nicht gefunden, wird eine sprachunabhängige Datei gesucht (Dateinamen durch Weglassen des Sprachenschlüssels gebildet). 

 

Image und View Anweisungen Eingabewerte können auch bei einem Image oder in einem html-Dokument hinterlegt werden, siehe die GuiXT Script-Anweisungen Image und View.
Externe Anwendungen Eingabewerte können auch von externen Anwendungen über GuiXT an die SAP Session gesendet werden. Hiezu bietet GuiXT ab Version 2003 Q2 3 ein einfaches Kommandozeilen-Interface. Die Eingaben werden jeweils in der aktuellen SAP Session vorgenommen. Ist keine Session aktiv, geschieht nichts. Bei Bedarf kann die externe Anwendung zunächst selbst über einen SAP Shortcut (.sap Datei) eine Session starten.

Die Übermittlung der Daten erfolgt über den (manuellen oder programminternen) Aufruf

guixt  input="inputstring"

Dabei ist inputstring  so aufgebaut wie für den Parameter  input= der  Image Anweisung beschrieben. Es ist möglich, Eingabewerte zu setzen, Aktionen durchzuführen und InputScripts zu prozessieren.

Beispiel 1:

guixt  input="Debitor:1000;OK"

Hierdurch wird der Wert "1000" in das Feld "Debitor" gesetzt und "Enter" gedrückt.

Beispiel 2:

guixt  input="U[CUST]:1000;OK:/NVD03,process=vd03.txt"

Transaktion VD03 wird aufgerufen und das InputScript "vd03.txt" aktiviert. Als Parameter "CUST" wird dem InputScript der Wert "1000" mitgegeben.

Beispiel 3:

Sie legen eine Batchdatei "showcustomer.bat" an; Inhalt ist

guixt  input="U[CUST]:%1;OK:/NVD03,process=vd03.txt"

Jetzt kann durch Aufruf von

showcustomer 1000

die in Beispiel 2 beschriebene Aktion ausgelöst werden (Anzeige Kundenstammsatz 1000).