我正在使用三个具有不同记录格式的逻辑文件,在第一个子文件上我使用 LF1 和 LF2,在第一个子文件上我不能使用 *LOVAL SETLL 它会给我运行时错误。不知道为什么?
然后程序将引导我进入第二个子文件,我正在使用 LF3 看起来不错。
但是如果我回到第一个子文件,子文件就会变成空白。????为什么?
这是我构建子文件的子程序:
C CLRSR BEGSR
C EVAL *IN55='0'
C WRITE USQLSCTL
C EVAL *IN55='1'
C ENDSR
C*
C*BUILDING SUBFILE
C BLDSR BEGSR
C *LOVAL SETLL USRLGX
C EVAL RECNO=0
C EXSR TMISR1
C EXSR REDSR1
C DOW NOT %EOF
C IF USRID<>IDD
C EXSR MVESR
C EXSR DIMSR
C MOVE USRID IDD
C EVAL RECNO=RECNO+1
C WRITE USQLS
C ENDIF
C EXSR TMISR1
C EXSR REDSR1
C ENDDO
C ENDSR
和相关的子程序
C TMISR1 BEGSR
C READ USRLGX
C MOVE USRTI MINTI
C ENDSR
C REDSR1 BEGSR
C READ USRLG
C MOVE USRTO MAXTO
C ENDSR 6
n 我使用的 LF 是 USRLG 和 USRLGX。其中两个 LF 指的是相同的记录格式。但每个 LF 都有不同的排序顺序。*记录格式已在 F-Spec 上重命名
- 我有这两个问题是:
- 我只能使用一次 *LOVAL setll 逻辑文件。
- n上面的编码结果有时会给出UserTime的结果在某些时候它等于空白。(000000)