レコード形式が異なる 3 つの論理ファイルを使用しています。最初のサブファイルでは LF1 と LF2 を使用していますが、最初のサブファイルでは *LOVAL SETLL を使用できません。実行時エラーが発生します。なぜかわからない?
次に、プログラムは2番目のサブファイルに誘導し、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でRENAMEされました
- 私はこの2つの問題を抱えています:
- *LOVAL setll logical-file は 1 回しか使用できません。
- n 上記のコーディングの結果は、UserTimeIn の結果が得られる場合があります。