编译COBOL模块时出现错误-'没有为MQ82122A-DATA的PREFERENCE的PREFER-VALUE指定足够的下标或索引。对于每个丢失的下标或索引,假定下标或索引值为1。'
代码
01 MQ82122A-DATA.
03 UPDATE-PREFRENCES.
05 UPDATE-AGREEMENT-PREF.
07 PREFRENCES.
10 PREFRENCE OCCURS 10.
13 CATEGORY PIC X(10).
13 PREFRENCE-TYPE OCCURS 5.
15 PREFER-VALUE PIC X(100).
MOVE DOCPREF1 TO PREFER-VALUE IN PREFERENCE IN MQ82122A-DATA(1).
MOVE DOCPREF2 TO PREFER-VALUE IN PREFERENCE IN MQ82122A-DATA(2).
PREFERENCE
作为限定词的使用令人困惑,可能是不必要的。
如果DOCPREF1
和DOCPREF2
定义为PIC X(100)
,则不需要PREFERENCE
作为限定符,必须使用两个下标,第一个下标用于PREFERENCE
,第二个下标用于PREFRENCE-TYPE
。
如果DOCPREF1
和DOCPREF2
的定义与单次出现的PREFERENCE
相同,则应从PREFER-VALUE IN
语句中删除MOVE
,并且应使用PREFERENCE
的单个下标。