Single Page Sub File:-
Overview:
This module enables the student to
understand the concept of Single Page Sub File.
Outline:
Topics covered,
·
Single Page Sub File
Objective:
By the end of this module, the student should be
able to do:
- Understand
the concept of Single Page subfileDisplay Multiple of Records
In Single
Page Sub File the subfile page is equal to the subfile size i.e. SFLPAG=SFLSIZ. In
this, we have to write the code to handle both Rolldown and Rollup keys cause
in single page subfile page is equal to subfile size.
Step1: First Create a Physical File
DDS Of Physical File:
Columns . . . : 1
71 Browse PB01U01D/MYDDS
SEU==>
EMP1
FMT
A* .....A*. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7
*************** Beginning of data *************************************
0000.01
*****************************************************************
0000.02 *
0000.03 * EMLPOYEE DETAILS
0000.04 *
0000.05
*****************************************************************
0003.00 A
R EMP1R
0004.00 A EMPNO 3
0 COLHDG('EMPLOYEE ID')
0005.00 A
ENAME 10 COLHDG('EMPLOYEE NAME')
0006.00 A EGRAD 2 COLHDG('EMPLOYEE GRADE')
0007.00 A
K EMPNO
****************** End of data ****************************************
F3=Exit
F5=Refresh F9=Retrieve F10=Cursor
F11=Toggle F12=Cancel
F16=Repeat find F24=More keys
(C)
COPYRIGHT IBM CORP. 1981, 2002.
Step 2: Create Display File
- Subfile Control Format:
UUUUUUUUUU
DD/DD/DD
SINGLE PAGE
SUBFILE TT:TT:TT
------------------------------------------------------------------------------
EMPNO EMP NAME EMP GRADE
-------------------------------------------------------------------------------
- Subfile Record Format:
UUUUUUUUUU DD/DD/DD
SINGLE PAGE
SUBFILE TT:TT:TT
------------------------------------------------------------------------------
EMPNO EMP NAME EMP GRADE
------------------------------------------------------------------------------
999- BBBBBBBBBB BB
999- BBBBBBBBBB BB
999- BBBBBBBBBB BB
999- BBBBBBBBBB BB
999- BBBBBBBBBB BB
- Footer:
------------------------------------------------------------------------------
F3=EXIT
- DDS For Display File:
Columns . . . : 1
71 Edit PB01U01D/MYDDS
SEU==>
SIN1
FMT
A* .....A*. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7
*************** Beginning of data *************************************
0000.10 A*%%TS
SD 20050404 105306
PB01U01 REL-V5R2M0 5722-WDS
0000.20 A*%%EC
0000.30 A DSPSIZ(24
80 *DS3)
0000.40 A
R SFL
SFL
0000.50 A*%%TS
SD 20050402 164510
PB01U01 REL-V5R2M0 5722-WDS
0000.60 A EMPNO R
B 8 17REFFLD(EMPMSTR/EMPNO
PB01U01D/
0000.70 A ENAME R
B 8 34REFFLD(EMPMSTR/ENAME
PB01U01D/
0000.80 A EGRAD 2A
B 8 51
0000.90 A
R SFLCTL
SFLCTL(SFL)
0001.00 A*%%TS
SD 20050404 105306
PB01U01 REL-V5R2M0 5722-WDS
0001.20 A
CF03(03)
0001.30 A
PAGEUP(24)
0001.40 A
PAGEDOWN(25)
0001.50 A
OVERLAY
0001.60 A
80
SFLDSP
0001.70 A
80
SFLDSPCTL
0001.80 A
82
SFLCLR
0001.90 A
83
SFLEND(*MORE)
0002.00 A
SFLSIZ(0005)
0002.10 A
SFLPAG(0005)
0002.20 A 2 31'SINGLE PAGE
SUBFILE'
0002.30 A
COLOR(WHT)
0002.40 A
DSPATR(HI)
0002.50 A 6 16'EMPNO'
0002.60 A
DSPATR(HI)
0002.70 A 1 70DATE
0002.80 A EDTCDE(Y)
0002.90 A 2 70TIME
0003.00 A 1 2USER
0003.10 A 4 2'--------------------------
0003.20 A
---------------------------
0003.30 A
---------'
0003.40 A
COLOR(BLU)
0003.50 A 7 2'--------------------------
0003.60 A
---------------------------
0003.70 A
---------'
0003.80
A
COLOR(BLU)
0003.90 A 6 34'EMP
NAME'
0004.00 A
DSPATR(HI)
0004.10 A
6 50'EMP
GRADE'
0004.20 A
DSPATR(HI)
0004.30 A
R FOOTER
0004.40 A*%%TS
SD 20050402 161518
PB01U01 REL-V5R2M0 5722-WDS
0004.50 A 21 2'--------------------------
0004.60 A
---------------------------
0004.70 A ---------'
0005.00 A
COLOR(BLU)
0005.10 A 23
17'F3=EXIT'
0005.20 A
COLOR(BLU)
****************** End of data *************************************
F3=Exit
F4=Prompt F5=Refresh F9=Retrieve
F10=Cursor F11=Toggle
F16=Repeat find F17=Repeat change F24=More keys
Step 3: RPG Program
Columns .
. . : 1 71
Edit
PB01U01S/MYRPG
SEU==>
S1NRPG
FMT *
..... *. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+...
7
*************** Beginning of data
*************************************
0000.01 *INDICATOR USED
0000.02 * F2= UPDATE
0000.03 * F3= EXIT
0000.05 * 80= SFLDSP
0000.06 * 80= SFLDSPCTL
0000.07 * 82= SFLCLR
0000.08 * 83= SFLEND
0000.09 * PHYSICAL FILE
0001.00 FEMP1
UF E K
DISK
0001.01 * DISPLAY FILE
0002.00 FSIN1
CF E WORKSTN
0002.01 *IPFC PROMPT
0002.02 *SFL=SUB FILE RECORD FORMAT,
RRN=RELATIVE RECORD NUMBER
0002.03 F
RRN KSFILE SFL
0004.00
*----------------------------------------------------------------
0005.00 * SINGLE PAGE SFL
0006.00
*----------------------------------------------------------------
0007.00 I 'U R AT TOP' C MSG1
0008.00
I 'U R AT BOTTOM' C
MSG2
0009.00
*----------------------------------------------------------------
0010.00 *
0011.00 C
*LIKE DEFN EMPNO FID
0012.00 C *LIKE DEFN EMPNO LID
0013.00 *
0002.04 *CLEAR SUB ROUTINE IS CALLED HERE
0002.05 C EXSR CLEAR
0002.06 *READ FILE
0015.00 C READ EMP1 83
0002.06 *LOAD SUB ROUTINE IS CALLED HERE
0002.07 C EXSR LOAD
0018.00 *
0019.00 C *IN03 DOWEQ*OFF
0020.00 C WRITEFOOT
0021.00 C EXFMTC1
0022.00 C L1 TAG
0023.00 C
03 LEAVE
0024.00 *
0025.00 C *IN20 IFEQ *ON
0026.00 C EXSR PGDN
0027.00 C ENDIF
0028.00 *
0029.00 C *IN10 IFEQ *ON
0030.00 C EXSR PGUP
0031.00 C ENDIF
0032.00
*----------------------------------------------------------------
0033.00 C ENDDO
0034.00 C SETON LR
0035.00
*----------------------------------------------------------------
0036.00 *
0037.00 C LOAD BEGSR
0038.00
C MOVELEMPNO FID
0039.00 C DO 4
0040.00 C ADD 1
RRN 40
0041.00 C
WRITES1
0042.00 C READ EMP1 83
0043.00 C MOVELEMPNO LID
0044.00 C *IN40 DOWEQ*ON
0045.00 C EXFMTC1
0046.00 C GOTO L1
0047.00 C ENDDO
0048.00 C ENDDO
0049.00 *
0050.00 C RRN IFGT 0
0051.00 C SETON 80
0052.00 C ENDIF
0053.00 C ENDSR
0054.00
*----------------------------------------------------------------
0055.00 C CLR BEGSR
0056.00 C SETON 82
0057.00
C WRITEC1
0058.00 C SETOF 82
0059.00 C Z-ADD0 RRN
0060.00 C ENDSR
0061.00
*----------------------------------------------------------------
0062.00 *
0063.00 C PGDN BEGSR
0064.00 C MOVEL*BLANK WMSG
0065.00 *
0066.00 C *IN40 IFEQ *ON
0067.00 C MOVELMSG2 WMSG
0068.00 C ELSE
0069.00 *
0070.00 C LID SETLLEMP1
0071.00 C EXSR CLR
0072.00 C READ EMP1 83
0073.00 C EXSR LOAD
0074.00 C ENDIF
0075.00 C ENDSR
0076.00
*----------------------------------------------------------------
0077.00 *
0078.00 C PGUP BEGSR
0079.00 C MOVEL*BLANK WMSG
0079.00 C MOVEL*BLANK WMSG
0080.00 *
0081.00 C FID SETLLEMP1
0082.00 *
0083.00 C DO 4
0084.00 C READPEMP1 83
0085.00 C ENDDO
0086.00 *
0087.00 C *IN40 IFEQ *ON
0088.00 C *LOVALSETLLEMP1
0089.00 C READ EMP1 83
0090.00 C MOVELMSG1 WMSG
0091.00 C ELSE
0092.00 C EXSR CLR
0093.00 C* READEEMP1 83
0094.00 C EXSR LOAD
0095.00 C ENDIF
0096.00 *
0097.00 C ENDSR
****************** End of data ****************************************
F3=Exit
F4=Prompt F5=Refresh F9=Retrieve
F10=Cursor F11=Toggle
F16=Repeat find F17=Repeat change F24=More
Assignment:
Q. Write an RPG for addition, updation and
deletion of multiple record.
No comments:
Post a Comment