[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte

Hybrid View

  1. #1
    Registriert seit
    Aug 2006
    Beiträge
    2.114
    Ich kann Dir zwar nicht helfen, hilfreich für andere ist es aber zu sagen in welcher Sprache Du das machst RPG / Cobol und evtl. Dein Source postet in dem Du die Fenster erstellst.

    macht die Sache dann für andere einfacher.

    GG

  2. #2
    Registriert seit
    Feb 2015
    Beiträge
    19
    Danke, ist in Cobol
    LG

  3. #3
    Registriert seit
    Feb 2015
    Beiträge
    19
    Und hier wäre noch das zugehörige DSP-File:

    A DSPSIZ(24 80 *DS3)
    A REF(*LIBL/VMKRF001)
    A PRINT
    A* INDARA
    A CF04(04)
    A CF12(12)
    A ALTHELP(CA01)
    A HELP
    A HLPDOC('DMYHILFE' 'DUMYHELP' 'INTKL-
    A ')
    A************************************************* ****************
    A* WINDOWS DEFINITION
    A************************************************* ****************
    A R VMKDR114W
    A WINDOW(07 05 06 72)
    A WDWBORDER((*COLOR BLU) (*DSPATR RI)-
    A (*CHAR ' '))
    A USRRSTDSP
    A************************************************* ****************
    A* V M K D R 1 1 4 S - Subfile HAUPTRECORD
    A************************************************* ****************
    A R VMKDR114S SFL
    A 3 1'Connection'
    A COLOR(BLU)
    A CONROLTXT 20A B 3 12COLOR(WHT)
    A 3 34 'Contract'
    A COLOR(BLU)
    A CTNOAFT 5A B 3 44COLOR(WHT)
    A 3 50'Shortname'
    A COLOR(BLU)
    A CTNOAFTSH 10A B 3 61COLOR(WHT)
    A*N60 DSPATR(ND)
    A************************************************* ****************
    A* V M K D R 1 1 4 C - Subfile CONTROLRECORD
    A************************************************* ****************
    A R VMKDR114C SFLCTL(VMKDR114S)
    A SFLSIZ(0015)
    A SFLPAG(0003)
    A WINDOW(VMKDR114W)
    A OVRDTA
    A PUTOVR
    A OVERLAY
    A KEEP
    A N92 ROLLUP
    A 91 SFLDSP
    A SFLDSPCTL
    A 93 SFLCLR
    A* SFLEND(*MORE)
    A 01 CSRLOC(LIN POS)
    A RTNCSRLOC(&RCD &FLD)
    A DSPREC 3S 0H SFLRCDNBR(CURSOR)
    A RECNBR 4S 0H
    A LIN 3S 0H
    A POS 3S 0H
    A FLD 10A H
    A RCD 10A H
    A AKTION 6A O 1 2COLOR(WHT)
    A 1 9'Connection'
    A COLOR(WHT)
    A************************************************* ****************
    A* MESSAGE SUBFILE
    A************************************************* ****************
    A R MSGSFL SFL SFLMSGRCD(24)
    A MSGKY SFLMSGKEY
    A MPGMQ SFLPGMQ
    A************************************************* ****************
    A* MESSAGE SUBFILE CONTROL
    A************************************************* ****************
    A R MSGCTL SFLCTL(MSGSFL)
    A SFLSIZ(12) SFLPAG(1)
    A SFLDSP
    A SFLINZ
    A OVERLAY PUTOVR KEEP
    A 95 SFLCLR
    A N98 SFLEND
    A 96 LOCK
    A MPGMQ SFLPGMQ
    A R DUMMY
    A ASSUME
    A 1 3' '

  4. #4
    Registriert seit
    Jun 2009
    Beiträge
    319
    Ich würde mal in der DSPFD RSTDSP(*YES) einstellen.

  5. #5
    Registriert seit
    Jun 2009
    Beiträge
    319
    CHGDSPF xxxxxxx RSTDSP(*YES)

  6. #6
    Registriert seit
    Feb 2015
    Beiträge
    19
    Danke, werde ich probieren

    A 93 SFLCLR

    muss ich also nach dieser Angabe was genau angeben?

    A RSTDSP(*YES)

    eingeben?

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Auch das Thema findet sich immer wieder hier.
    RSTDSP(*YES) betrifft den eigenen Bildschirm, wenn dieser von einem CALL überschrieben wurde.
    RSTDSP(*YES) ist, wenn keiner eingegriffen hat, sowieso der Default.

    Mittels Schlüsselwort ASSUME auf einem eigenen, nicht verwendeten Satz, kombiniert nun die AS/400 beim Open den Inhalt deines Fensters mit dem aktuellen Inhalt.

    Durch RSTDSP(*YES) deines DSPF wird nun nach Rückkehr der gesamte Inhalt wiederhergestellt.
    Ohne ASSUME wäre hier RSTDSP(*NO) korrekt.
    Dies führt aber z.B. beim Ausführen einer Abruftaste mit QCMD oder einem MSGBRK zu Problemen.

    ASSUME ist für jedes DSPF mit ausschließlichen Fenstern meist erforderlich.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  8. #8
    Registriert seit
    Jun 2009
    Beiträge
    319
    RSTDSP(*YES) ist nicht der Defaultwert beim CRTDSPF.
    Default = *NO

    Nochmal, ich würde auf der Befehlsebene mal

    CHGDSPF 'Bibliothek/Bildschirmdatei RSTDSP(*YES)

    eingeben.

    und dann nochmal probieren.

  9. #9
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Füg' mal in Deine DisplayFile das folgende Dummy-Format ein (wird nie aufgerufen!) und erstelle Display-File und Programm neu.

    Code:
    A          R DUMMYFMT                             
    A                                      ASSUME     
    A                                 24 80' '
    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  10. #10
    Registriert seit
    Feb 2015
    Beiträge
    19
    Guten Morgen miteinander
    Zuerst einmal vielen, vielen Dank für Eure Tips, finde ich super.

    Brigitta: ja werde ich probieren

    Dschainers: Sorry, ich hatte ja geschrieben, dass ich neu in dieser Umgebung bin, also bitte entschuldige meine wahrscheinlich naive Frage: Wo genau muss ich denn
    CHGDSPF 'Bibliothek/Bildschirmdatei RSTDSP(*YES)
    eingeben - was heisst "auf Befehlseben"?

    Ich habe übriges einen weiteren Test gemacht. Wenn ich aus dem ersten Fenster kein weiteres Pgm/Fenster aufrufe, sondern den auszugebenden Wert in meinem ersten Pgm/Fenster direkt einstelle und dann das Fenster wie gewohnt ausgebe, fubktioniert alles bestens, d.h. der Hintergrund bleibt bestehen. Lange Rede kurzrêr Sinn, es funktioniert nur dann nicht, wenn ich ein zweites Fenster ausgebe

    LG Günter

  11. #11
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Die Situation, dass das der Hintergrund verschwindet, sobald ein weiteres Fenster aufgemacht wird ohne zuvor in dem "Haupt-"Programm den Bildschirm erneut angezeigt zu haben (EXTFMT) ist alt bekann.
    An dieser Stelle wird sich auch nichts mehr ändern, da der Stand der "green Screen"-Entwickung "stabilisiert" ist.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  12. #12
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    @ mit Read lesen nach Systemwechsel

    Bin zwar kein Cobolaner, denke aber, wenn du die Datei zu macht und neu öffnest sollte das gehen.
    Wir nutzen für diese Dinge (Für alle Dateizugriffe) 'Leseprogramme'.
    D.H. ein PGM liest/schreibt Datei A System A, ein anderes Datei A System B
    (SQL: Connect to ...)

    So können wir immer nach Bedarf die richtige Datei vom richtigen System lesen

    Ach ja, wenn wir nicht mit SQL zugreifen nutzen wir DDM Files dafür (aber auch mit Lesepgmmen)

    Robi

Similar Threads

  1. Antworten: 7
    Letzter Beitrag: 13-01-15, 16:43
  2. 3488 Info Window II
    By hdw2 in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 18-07-14, 14:27
  3. Eingabe Subfile in einem Window
    By Tschabo in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 16-04-14, 16:20
  4. Alter Hintergrund bei aufgerufenem Window
    By Robi in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 14-11-13, 16:18
  5. DSPF / Window / Overlay
    By malzusrex in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 27-05-03, 10:05

Tags for this Thread

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •