我正在寻找在CICS中浏览VSAM记录和DB2表的更好的方法。我目前正在练习的方法是使用readnext/prev浏览VSAM文件,使用游标浏览DB2表。在浏览文件/表时,我如何利用TSQ?我的示例应用程序都具有写入VSAM文件/插入DB2表以及浏览它们的特性。
bpsygsoo1#
比如,如果我浏览vsam文件/db2表,而其他人正在写入vsam/插入db2表,那么新添加的记录会在我浏览的同时出现吗?这要看情况,从VSAM的Angular 来看,您的CICS任务将在VSAM文件中占有一个位置。您可能无法看到新插入的记录,直到它们被它们的起始任务提交。您是否能够看到插入的记录取决于您的任务和其他任务访问VSAM文件的方式。只要所有CICS访问发生在单个CICS区域中,则可以选择一个标准的单独区域或在文件所属区域(也称为FOR)中,则访问该文件的任何CICS任务都将能够看到提交的新记录。如果任务在多个CICS区域中运行,而没有使用FOR,则需要在所有区域中以RLS模式打开文件,以保持文件内容的完整性。批量更新/插入非RLS文件可能会导致与尝试从两个CICS区域更新非RLS文件类似的问题。
kgqe7b3p2#
在你的问题中,你有关于使用TSQ,但我相信你问的是如何查看临时存储队列的内容。CICS提供了一个事务CEBR,用于浏览临时存储队列(TSQ)。CEBR的文档可在here中找到
CEBR
2条答案
按热度按时间bpsygsoo1#
比如,如果我浏览vsam文件/db2表,而其他人正在写入vsam/插入db2表,那么新添加的记录会在我浏览的同时出现吗?
这要看情况,从VSAM的Angular 来看,您的CICS任务将在VSAM文件中占有一个位置。您可能无法看到新插入的记录,直到它们被它们的起始任务提交。您是否能够看到插入的记录取决于您的任务和其他任务访问VSAM文件的方式。只要所有CICS访问发生在单个CICS区域中,则可以选择一个标准的单独区域或在文件所属区域(也称为FOR)中,则访问该文件的任何CICS任务都将能够看到提交的新记录。
如果任务在多个CICS区域中运行,而没有使用FOR,则需要在所有区域中以RLS模式打开文件,以保持文件内容的完整性。
批量更新/插入非RLS文件可能会导致与尝试从两个CICS区域更新非RLS文件类似的问题。
kgqe7b3p2#
在你的问题中,你有关于使用TSQ,但我相信你问的是如何查看临时存储队列的内容。
CICS提供了一个事务
CEBR
,用于浏览临时存储队列(TSQ)。CEBR的文档可在here中找到