- 论坛徽章:
- 0
|
日常作业中,有时候需要修改原代码(如修改LF的条件等) ,但由于权限\作业模式等原因 不能直接在SEU中进行手工修改,则可以通过程序来作业
本例以修改 一个 LF -DDS 条件 为例:
修改前 的DDS
*************** Beginning of data *************************************
0001.00 A R RLF PILE(PF)
0002.00 A K NO
0003.00 A K DATE
0004.00 A S DATE COMP(GE 20061101)
0005.00 A DATE COMP(LE 20061131)
CLP
*************** Beginning of data *************************************
PGM
OVRDBF FILE(PF) TOFILE(SOURCEH/QDDSSRC) +
MBR(PF) SHARE(*YES)
CALL PGM(RPGNAM)
DLTF FILE(LIB/LF)
CRTLF FILE(LIB/LF) SRCFILE(SOURCEH/QDDSSRC)
DLTOVR FILE(*ALL)
ENDPGM
RPGLE 程序
****************************************************************************
H DFTNAME(SX050) DATEDIT(*YMD)
FLF UF F 92 DISK
ILF NS 01
C MOVEL 04 BB 2 0
C MOVEL 05 CC 2 0
C*BB /CC 为要修改的 行号 .可以根据需要做成参数 传入
C MOVEL *DATE YYMM 6 0
C SETON 9093
C BB IFNE 0
C BB CHAIN LF 90
C N90 EXCEPT
C SETON 90
C ENDIF
C CC IFNE 0
C CC CHAIN LF 93
C N93 EXCEPT
C SETON 93
C ENDIF
C SETON LR
OLF E N90
O N90 YYMM 70
OLF E N93
O N93 YYMM 70
O* 70 = LF里要修改的字段 最右边字符位置 + 4 = 要修改的列号
*************** Beginning of data *************************************
修改后的DDS
*************** Beginning of data *************************************
0001.00 A R RLF PILE(PF)
0002.00 A K NO
0003.00 A K DATE
0004.00 A S DATE COMP(GE 20071201)
0005.00 A DATE COMP(LE 20071231)
[ 本帖最后由 caomangyu 于 2007-12-26 23:26 编辑 ] |
|