PDA

View Full Version : DSPF Dynamischer Aufbau einer SFL nach Eingabe eines Zeichens



jkochann
10-04-13, 14:13
Hallo,

da ich keine Idee habe, frage ich mal die Profis:

Ich habe eine DSPF mit einem Eingabefeld in der Länge X. In Abhängingkeit der eingegebenen Zeichen möchte ich eine SFL dazu aufbauen. Das heißt, das ich nach jeder Eingabe die Steuerung an das Programm zurückgeben muss. Im ersten Schritt habe ich das Feld in einzelne Felder á 1 Zeichen zerlegt und das DSPATR(ER) verwendet. Das funktioniert auch prima, aber natürlich habe ich zwischen den Feldern immer das Leerzeichen. Dies ist ja wahrscheinlich das Feld mit den Attributen des folgenden Feldes. Gibt es einen Trick, um diesen Effekt in einer anderen und eleganteren Art und Weise zu erreichen? Momentan ist also mein Ansatz folgender:
MAN1 1A B 3 14CHECK(ER)
MAN2 1A B 3 14CHECK(ER)
MAN3 1A B 3 14CHECK(ER) usw.

Schön wäre es aber, wenn der Anwender nur folgendes sehen würde:
MANr 10A B 3 14
und ich trotzdem nach jedem eingebenen Zeichen die Kontroll wieder an das Programm übergeben könnte.
Für alle Überlegungen danke ich schon mal im Vorraus.
Gruß jkochann

Fuerchau
10-04-13, 14:15
Technisch mit einer DSPF leider nicht möglich.

jkochann
10-04-13, 14:29
Vielen Dank für die schnelle Antwort. Das erspart mir nächtelanges Grübeln.

as400frischling
10-04-13, 20:11
Technisch mit einer DSPF leider nicht möglich.
Ansich hättest du ja recht aber es wäre ein Aufwand mit "normalen" DSPF Dateien zu arbeiten.


Deshalb sollte der Threadersteller Subfiles nutzen. Diese sind ja für solche zwecke geeignet um mehrere Zeilen bzw. Datensätze in einer Bildschirmdatei anzuzeigen.

Fuerchau
10-04-13, 21:52
Dann lese den Text oben mal durch.
Er will ja eine Subfile aufbauen und zwar mit jeder Zeicheneingabe (kennt man ja z.T. aus Windowsanwendungen).
Nur leider wird ein Programm nicht aktiv, solange keine Funktionstaste (Fxx, Enter, ...) gedrückt wird.

OfficeVision konnte die 5250 irgendwie in einen Modus versetzen (evtl. Native-API's), bei dem jede Taste, selbst die Cursor-Tasten sofort auslösten (Textbearbeitung).
Leider ist das nirgendwo dokumentiert, wie das ging.

as400frischling
10-04-13, 22:44
Ups mein Fehler habe den Text schnell überflogen und zu schnell reagiert :)