-
Zwei Subfiles nebeneinander
Hallo AS/400-Gemeinde,
ich muß für ein Projekt einen Bildschirm erstellen, bei dem 2 Subfiles nebeneinander dargestellt werden.
Die linke Subfile hat eine Breite von 25 Zeichen und die rechte 73 Zeichen. Die Überschriften werden global im CTL01 definiert.
Über eine Befehlstaste soll der "Fokus" jeweils zwischen den Subfile gewechselt werden, also WRITE und dann EXFMT auf den entsprechenden CTL
Jedoch als normale Subfiles klappt das nicht, da die eine jeweils die andere überlagert und löscht.
Müssen die Subfiles als Window definiert werden oder gibt es einen anderen Trick ????
Vielen Tag im voraus für die Tipps,
Peter Kinne
-
Etwas schwer verständlich deine Beschreibung. 132 Zeichen am Screen??? 80 am Screen???
du hast 2 Controlformate? Beschreibe bitte etwas genauer
Das Leben ist wie Spaghetti. Eine einzige Sauerei aber sooooo gut.
-
Also, dann hier noch ein paar Details.
Der Bildschirm hat 24 Zeilen mit 80 Zeichen. Das Layout ist SAA-Like. Also zuerst zwei Zeilen Überschrift. Dann kommt ein Format mit 9 Zeilen über die gesamte Breite von 80 Zeichen. Dort stehen einige Keyfelder und Kundeninformationen. Weiterhin ist dort eine Zeile mit den gültigen Auswahlen, die getroffen werden können.
Dann kommt auf der linken Seite eine Subfile mit 10 Zeilen und einer Breite von 21 Zeichen.
In der gleiche Höhe und ebenfalls 10 Zeilen soll rechts daneben eine weitere Subfile angezeigt werden. Also auf Position 50
Zum Hintergrund: Auf der linken Seite sollen Auftragspostionen angezeigt werden und in der rechten Subfile Auftragstexte.
Ich hoffe die Angaben sind nun genügend.
Vielen Dank,
Peter
-
Hallo Peter,
das kann man machen, indem man die Steuerung selbst übernimmt, Stichwort SLN. Das ist eine alte, leider in Vergessenheit geratene Technik alternativ zur SFL.
Dabei kannman den Focus auch über die Cursorposition erkennen/setzen.
Gruß, Robert
-
Packe das Subfile mit den Texten in ein SFLWINDOW welches du mit OVERLAY über das erste Subfile legen kannst. Deine SFL legen nämlich nicht neben- sondern übereinander, daher die Frage auf 132 Stellen.
Das Leben ist wie Spaghetti. Eine einzige Sauerei aber sooooo gut.
-
Es gab mal einen sehr guten Beitrag von B.Hauser zu diesem Thema !
Also:
Da Subfiles immer über die gesamte Breite eines Bildes gehen, schafft man es nicht, 2 Subfiles nebeneinander zu positionieren.
Man MUSS diese in 2 Fenster packen, die dann genau nebeneinander ausgegeben werden.
Die Fenster-Rahmen kann man ja ausblenden, so dass die optische Trennung nicht auffällt.
Wichtig ist USRRSTDSP auf Satzebene, damit wird verhindert, dass das System die Fenster steuert (automatisch wiederherstellt o.ä.).
WINDOW(..... *NOMSGLN *NORSTCSR), sonst hat jedes Fenster eine eigene Nachrichtenzeile und der Cursor ist auf das letzte angezeigte Fenster beschränkt.
Die Blätterfunktion muss vom Programm gesteuert werden, da sonst nicht gewährleistet ist, dass die linke und rechte Subfile zu einander passen, d.H., dass ROLLUP/ROLLDOWN per Bezugszahl ausgewertet werden müssen.
Da beim EXFMT nur 1 Format aktiv sein kann, muss man per WRITECTLFMT1, WRITECTLFMT2, READ FILENAME arbeiten.
Dann kann man in der INFDS das Format abfragen und so das tatsächliche Format einlesen. Dies setzt allerdings das Schlüsselwort ASSUME voraus, so dass der tatsächliche READ nicht wieder blockiert.
Ach ja, auf Grund deiner Breite muss das natürlich auf einem 132-stelligen Bild passieren.
Die 2. Möglichkeit ist, eine SFL mit genau einem Feld zu definieren und die Aufbereitung (Editierung, Farben) programmintern zu lösen:
Im ILERPG einfach mittels %EDITC, %EDITW für Dezimale.
Im RPG mittels SPECIAL-File, EXCEPT und O-Bestimmungen.
-
Hallo Peter,
hallo Kollegen,
Muss es denn partout immer SFL sein? Solche Sachen lassen sich mit SLN sehr pragmatisch lösen, werde Euch heute abend ein Beispiel posten ...
Gruß, Robert
-
Recht herzlichen Dank für die Tipps.
Ich hatte in der Zwischenzeit schon an der Version wie von "Fuerchau" beschrieben, gebastelt. Und das Ganze sieht nicht schlecht aus. Nun muß ich noch ein bißchen an der Aufbereitung.
An "Fuerchau"
Das mit der Breite von 132 Stellen verstehe ich nicht. Bei mir passt alles auf eine 80-er-Zeile.
Vielen Dank,
Peter
-
SLN löst dieses Problem leider nicht, da hier einfach GLEICHE Zeilen nebeneinander dargestellt werden und diese auch noch GENAU die gleiche Breite haben.
-
@Peter
Wenn's passt ist ja gut, ich hab die Gesamtbreite der beiden Subfiles nicht korrekt entdecken können.
-
Anbei das versprochene Beispiel (stark vereinfacht)
-
Hallo Robert,
vielen Dank für das Beispiel.
Ich werde es ebenfalls mal probieren.
Gruß
Peter
Similar Threads
-
By mahones in forum NEWSboard Server Software
Antworten: 7
Letzter Beitrag: 01-03-06, 14:11
-
By grihe in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 25-10-05, 14:35
-
By Stefan_Sk in forum NEWSboard Programmierung
Antworten: 9
Letzter Beitrag: 23-06-05, 17:35
-
By JonnyRico in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 20-04-05, 10:19
-
By qiwi2000 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 30-11-01, 08:59
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks