在CICS中浏览KSDS时无法读取下一条记录

时间:2018-07-07 11:47:24

标签: cobol mainframe cics vsam

我正在尝试使用STARTBR和READNEXT顺序读取VSAM KSDS文件。我能够读取第一条记录。处理完第一条记录后,我期望执行READNEXT时会从VSAM中读取第二条记录,但只再次读取第一条记录。您能在这里帮忙吗?我在2行中使用相同的行:在STARTBR之后执行1次,在第一次执行之后读取下一条记录时进行1次。

MOVE LENGTH OF WS-INPUT-DATA TO X01-KEY1-LENGTH
EXEC CICS READNEXT DATASET(X01-INPUT-NAME)     
               INTO(WS-INPUT-DATA)         
               RIDFLD(X01-KEY1)            
               LENGTH(X01-KEY1-LENGTH)     
               RESP(X-RESP)                 
END-EXEC                                   

1 个答案:

答案 0 :(得分:2)

从描述中看,RIDFLD在第一个请求和第二个请求之间已更改,可能已清除,这将导致浏览器重新定位,以在RIDFLD中传递新值后查找下一条记录。

确保在第二个READNEXT上RIDFLD具有第一个READNEXT返回的值。