Logo2
Multi Windows
[Home] [Code Samples] [Multi Windows]
a_Style0402

The DDS forMultiple windows on a display screen

     ******************************************************************    
     ** WRITTEN BY    : Booth Martin                                  *
     ** DATE WRITTEN  : 11-2007                                       *
     ** COMMENTS      : demonstrate   multi-windows                   *
     **                                                               *
     ******************************************************************
     A                                      DSPSIZ(24 80 *DS3)
     A                                      PRINT
     A  90                                  MSGALARM
     A                                      ERRSFL
     A                                      CA03
     A                                      CF23
     A*****************************************************************
     A          R S1CMD2
     A                                      OVERLAY
     A                                 23  2'F3=Exit'
     A                                      COLOR(BLU)
     A                                   + 3'F23=Multi-Windows'
     A                                      COLOR(BLU)
     A                                 22 70' Page Up & '
     A                                      DSPATR(RI) COLOR(BLU)
     A                                 23 70' Page Down '
     A                                      DSPATR(RI) COLOR(BLU)
     A*****************************************************************
     A          R WIN1
     A                                      WINDOW(&W1LINE &W1POS -
     A                                      5 32 -
     A                                      *NOMSGLIN *NORSTCSR)
     A                                      WDWBORDER((*COLOR BLU))
     A                                      WDWTITLE((*TEXT &W1TITLE) +
     A                                      (*COLOR YLW) +
     A                                      *LEFT *BOTTOM)
     A                                      USRRSTDSP
     A                                      OVERLAY
     A                                      PAGEUP(21)
     A                                      PAGEDOWN(22)
     A            W1LINE         2S 0P
     A            W1POS          3S 0P
     A            W1TITLE       20   P
     A            W1FIELD1      30      1  2
     A                                      COLOR(WHT)
     A            W1RADIO1       2Y 0B  2  1SNGCHCFLD
     A                                      CHOICE(1 'High Flyer')
     A                                      CHOICE(2 'Guest')
     A                                      CHOICE(3 'Tourist')
     A                                      CHCCTL(1 &W1RADIOF1)
     A                                      CHCCTL(2 &W1RADIOF2)
     A                                      CHCCTL(3 &W1RADIOF3)
     A                                      CHCAVAIL((*COLOR TRQ))
     A            W1RADIOF1      1Y 0H
     A            W1RADIOF2      1Y 0H
     A            W1RADIOF3      1Y 0H
     A            W1CHECK1       2Y 0B  2 18MLTCHCFLD
     A                                      CHOICE(1 'No-Call List')
     A                                      CHOICE(2 'Special Diet')
     A                                      CHOICE(3 'VIP Account')
     A                                      CHCCTL(1 &W1CHECKF1)
     A                                      CHCCTL(2 &W1CHECKF2)
     A                                      CHCCTL(3 &W1CHECKF3)
     A                                      CHCAVAIL((*COLOR PNK))
     A            W1CHECKF1      1Y 0H
     A            W1CHECKF2      1Y 0H
     A            W1CHECKF3      1Y 0H  
     






The RPG forMultiple windows on a display screen

      **********************************************************************   
      * WRITTEN BY    : Booth Martin                                       *
      * DATE WRITTEN  : 11-2007                                            *
      * COMMENTS      : Demonstrate Multi windows.                         *
      **********************************************************************

     **--------------------------------------------------------------------*
     ** FILES                                                              *
     **--------------------------------------------------------------------*
     FSTYLE04FM cf   e             workstn
     **--------------------------------------------------------------------*
     ** DEFINITIONS                                                        *
     **--------------------------------------------------------------------*
      * Constants.
     D c#Windows       c                    15
     D c#StartingRow   c                    17
     D c#StartingCol   c                    10

      * Working fields.
     D wCount          s                   like(W1LINE)
     D wOffset         s                   like(W1LINE)

     D W1Array         s            500    dim(15)
      * Windows array data
     D W1Data          ds           500
     D  W1LINE                             OVERLAY(W1Data )
     D  W1POS                              OVERLAY(W1Data : *NEXT)
     D  W1TITLE                            OVERLAY(W1Data : *NEXT)
     D  W1Field1                           OVERLAY(W1Data : *NEXT)
     D  W1RadioF1                          OVERLAY(W1Data : *NEXT)
     D  W1RadioF2                          OVERLAY(W1Data : *NEXT)
     D  W1RadioF3                          OVERLAY(W1Data : *NEXT)
     D  W1CheckF1                          OVERLAY(W1Data : *NEXT)
     D  W1CheckF2                          OVERLAY(W1Data : *NEXT)
     D  W1CheckF3                          OVERLAY(W1Data : *NEXT)

     **====================================================================*
     ** MAIN CALCULATIONS                                                  *
     **====================================================================*
      * Fill array with values.
     C                   clear                   W1Array
     C                   eval      W1Line = c#StartingRow + 1
     C                   eval      W1Pos = c#StartingCol - 2
     C                   for       wCount = 1 to c#Windows
     C                   eval      W1Line = w1Line - 1
     C                   eval      W1Pos = w1Pos + 2
      * Fill Fields:
     C                   eval      W1Field1 = 'John Doe, 1-999-888-5555'
     C                   eval      W1RadioF1 = 0
     C                   eval      W1RadioF2 = 1
     C                   eval      W1RadioF3 = 0
     C                   eval      W1CheckF1 = 1
     C                   eval      W1CheckF2 = 1
     C                   eval      W1CheckF3 = 0
     C                   eval      W1TITLE = 'Window @ ' + %char(W1Line)
     C                               + ',' + %char(W1POS)
     C                               + ', ' + %char(wCount)
     C                   eval      W1Array(wCount) = W1Data
     C                   endfor
      * Put up screen.
     C                   write     S1CMD2
     C                   for       wCount = 1 to c#Windows
     C                   eval      W1Data = W1Array(wCount)
     C                   write     WIN1
     C                   endfor

     C                   eval      wCount = c#Windows
     C                   read      WIN1
     C                   dou       *inkc
     C                   select
     C                   when      *in21 and
     C                              W1LINE > (c#StartingRow - c#Windows + 1)
      * Go up a window
     C                   eval      wCount = wCount + 1
     C                   eval      W1Data = W1Array(wCount)
     C                   when      *in22 and
     C                              W1LINE < c#StartingRow
      * Go down a window
     C                   eval      wCount = wCount - 1
     C                   eval      W1Data = W1Array(wCount)
     C                   endsl
     C                   exfmt     WIN1
     C                   enddo

      * Exit.
     C                   eval      *inlr = *on

     **====================================================================*
     ** END OF MAIN  PROCEDURE                                             *
     **====================================================================*

 

[Home] [Code Samples] [SQL (simple)] [Subfiles] [Web & .json] [Contact Us] [Other]