PDA

View Full Version : SUBFILE ANZEIGE



takeoff/400
06-02-07, 16:07
hallo forum!
ich will div. daten in einen subfile anzeigen lassen, wo der user dann ggf. eine auswahl treffen kann.(drucken) so weit so gut, wi ekann ich es anstellen, dass diese subfile anzeige nach einiger zeit (20 sec.) automatisch aktuallisiert wird und die neuen daten angezeigt werden. das pgm soll den ganzen tag in einer eigenen session laufen immer mit den aktuellen daten aus einem bestimmten file und wenn der user will, dann soll er eine auswahl treffen können.
soweit ist mir das ja alles klar, aber wie kann ich eine autom. aktualisierung zusammen bringen?? steh bei dieser anforderung zzt. völlig daneben :mad: ..
lg,
m. gruber -
takeoff/400

Fuerchau
06-02-07, 18:09
Du musst an die DSPF eine DTAQ hängen (CRTDTAQ, CRTDSPF/CHGDSPF/OVRDSPF).

Für das Freischalten der Tastatur benötigst du das Schlüsselwort INVITE.
Dann gibst du die Daten per WRITE aus und legst dich per QRCVDTAQ mit Timeout schlafen.
Kommt der Timeout (=keine Daten) kannst du aktualisieren und neu ausgeben.
Kommen Daten (die DSPF schreibt einen Satz in die DTAQ), kannst du die Daten per READ FILENAME abholen. Der READ bleibt auf Grund des INVITE nicht stehen sondern empfängt nun die Daten und ggf. F-Tasten.

takeoff/400
07-02-07, 09:28
vielen dank, das klingt alles sehr viel versprechend! ich werde jetzt mal versuchen das in die praxis um zu setzen!
mfg,
m. gruber;)

takeoff/400
07-02-07, 10:05
sorry, aber ganz komm ich noch nicht hin mit Deinen infos:
das QRCVDTAQ ist ein pgm in der QSYS. mit welchen parametern muss ich das in meinem pgm aufrufen damit das richtig funktioniert?? und wie kommen die daten in die DTAQ die ich an die DSPF angehängt habe? muss ich da was tun dafür?? sorry für die vielen unklarheiten, aber so eine anforderung hatte ich noch nie..
lg,
m. gruber

Fuerchau
07-02-07, 10:15
QRCVDTAQ GIBTS Hinweise im Forum oder hier:
Data Queue APIs (http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/apis/obj2.htm?resultof=%22%71%72%63%76%64%74%61%71%22%2 0)

Wenn du die DTAQ erstellt hast (Satzlänge 128) und mit der DSPF verbindest schreibt das OS/400 selber einen Satz in die DTAQ.
Du brauchst wirklich nichts zu machen.

Um das Programm flexibler zu machen (an mehreren Stationen, empfielt sich eine DTAQ in der QTEMP und das Anhängen per OVRDSPF (vor dem Open).

takeoff/400
07-02-07, 11:29
ich will ja nicht lästig sein, aber irgendwie komme ich nicht zum gewünschten ergebnis. es geht ja darum, daten aus einem file (die sich dort laufend verändern) in einem subfile anzuzeigen, per automatic sozusagen und dem user zusätzlich noch eine auswahl in dem subfile anzubieten. die daten kommen ja bei mir nicht aus dem DSPF, sonder aus einem PF und sollen in das SBFL geschrieben werden und ohne dass der user auf enter klopft, soll die anzeige alle paar sekunden aktualisiert werden..
sorry, mein kunde wird schon ungeduldig und ich bin von der lösung noch weit entfernt, leider..ist mir schon seit jahren nicht mehr passiert, dass mir soo das talent verloren geht..:mad:

Fuerchau
07-02-07, 11:58
Also nochmal:

Du bearbeitest deine DSPF im Programm ganz normal wie sonst auch.

Einzig im SFLCTL-Satz ist INVITE erforderlich.

Das SFLCTL-Fomat gibst du dann per WRITE statt EXFMT aus.

Vor dem READ verwendest du den QRCVDTAQ mit einem Timeout (siehe API).

Drückt der User eine Sendetaste (Fxx, Enter, ...) gibt das System einen Satz in die Dataq und der QRCVDTAQ liefert diesen Satz.

Dann kannst du mit READ/READC die Daten lesen.

Läuft der Timer ab, sind eben keine Daten da und du baust die Subfile neu auf.

Aber Achtung:
Hat der User in die SFL Daten eingegeben und nur geblättert, gehen diese Daten dann verloren.

takeoff/400
07-02-07, 12:19
ok, jetzt macht das ganze für mich sinn, werd mich noch kurz mit den API-konventionen vertraut machen, dann sollte ich das schon hinbekommen..

vielen dank jedenfalls schon mal, Du warst heute meine rettung...:o

KM
07-02-07, 13:45
Bevor das noch länger so weiter geht, schau doch mal folgenden Link an... :-)

http://www.e-bellnet.com/technical/img/0608/hint_fig03b.htm

Gruß,
KM

takeoff/400
09-02-07, 09:26
hallo zusammen!
vielen dank nochmal für die kompetente unterstützung, das pgm läuft nach einigen adaptionen jetzt pipi-fein..
das problem war nur noch zusätzlich, dass beim auslesen der subfile-auswahlen des users, man ja diese daten erst mal ins file zurückschreiben muss und dann erst die einzelnen sätze abarbeiten kann.
läuft aber jetzt wie ein uhrwerk..
schönes we & lg,
michael gruber