IBM大型机论坛索引
 
 登录
 
IBM大型机论坛索引  大型机:搜索 IBM Mainframe论坛:常见问题解答  寄存器
 

定义变量文件的数据记录


IBM大型机论坛 -> COBOL程式设计
 发表新话题     回复主题
查看上一个主题 :: 查看下一个主题  
作者 信息
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一10:20上午
 引用回复

嗨,
对于cobol模块,输出文件仅是VB文件。因此,在“文件”部分中,我定义了以下文件。
FD输出主文件
阻止包含0个记录
标签记录是标准的
录制模式为V,
记录的大小从1到18000个字符不等
数据记录是MAST-REC。
现在我也给数​​据记录描述。
所以我定义如下。
01 MAST-REC PIC X(18000)随尺寸变化。
但是在编译时却报错。
错误信息如下。
“ VARYING”无效。在下一个区域“ A”项,级别编号或下一个子句的开头继续扫描。

有人可以帮我解决这个错误。
回到顶部
查看用户资料 发送私信
威廉·汤普森

全球主持人


已加入:2006年11月18日
帖子:3156
所在地:亚利桑那州图森

 发布 发表:2007年5月28日星期一12:26 pm
 引用回复

引用:
01 MAST-REC PIC X(18000)随尺寸变化。
无效,您需要改用OCCURS DEPENDONG ON。
回到顶部
查看用户资料 发送私信
平特

活跃用户


已加入:2005年12月3日
帖子:120
地点:印度

 发布 发表:2007年5月28日星期一2:51 pm
 引用回复

[/码]
01 MAST-REC。
05 WS-X依赖于WS-LENGTH的时间为1到999次。

[/码]

希望这种结构适合变长文件。
将记录长度移至WS-LENGTH变量b4并写入文件。
(可以使用INSPECT计算长度)
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一2:55 pm
 引用回复

感谢您的答复。
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一4:26 pm
 引用回复

FD输出主文件
阻止包含0个记录
标签记录是标准的
录制模式为V,
记录的大小从1到27990个字符不等
数据记录是MAST-REC。

01 MAST-REC。
05 WS-X在WS-STRT上的使用时间为1至18000次
.

但这也带来了错误。
请找到错误消息。
找不到基本项目“ WS-X”的“ PICTURE”子句。假定为“图X(1)”。
回到顶部
查看用户资料 发送私信
威廉·汤普森

全球主持人


已加入:2006年11月18日
帖子:3156
所在地:亚利桑那州图森

 发布 发表:2007年5月28日星期一5:07 pm
 引用回复

然后将图片X(1)放在WS-X之后和OCCURS之前。
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一5:16 pm
 引用回复

但是WS-X不是X(1)。 MAST-REC的范围是从1到18000。因此,我认为,我不应该将X(1)用作WS-X的图片子句。
请提出建议。
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


已加入:2006年11月23日
帖子:19245
位置:矩阵内部

 发布 发表:2007年5月28日星期一5:18 pm
 引用回复

你好,

您从哪儿得到的信息说您的文件从1到18000?

记录中的哪个字段确定记录多长时间?

您怎么知道文件是可变长度的?

我相信您的信息不完整或不正确。
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一5:26 pm
 引用回复

仅在我的第一篇文章中,我提到输出文件是可变长度文件。记录的范围从1到18000。我认为您尚未阅读我的第一篇文章。
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


已加入:2006年11月23日
帖子:19245
位置:矩阵内部

 发布 发表:2007年5月28日星期一5:37 pm
 引用回复

你好,

是的,我已经读过您的文章-是的,您“提到”这是一个可变长度的文件-是的,您的信息不完整或有误。

我再说一遍,您给出了什么方向来告诉您创建可变长度文件?您尚未发布该信息。如果您尝试使用WS字段作为发生次数,那么另一个读取文件的程序将如何知道每个特定记录的持续时间?

如果您发布了描述文件内容的说明,我们将能够为COBOL定义提供帮助。
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一5:48 pm
 引用回复

请不要混淆。
1.我必须创建一个输出文件
2.没有程序会读取该文件。

我正在编写一个将在其中生成输出文件的模块。

在文件控制部分中,我定义了以下文件。

FD输出主文件
阻止包含0个记录
标签记录是标准的
录制模式为V,
记录的大小从1到18000个字符不等
数据记录是MAST-REC。


现在,我必须定义数据记录MAST-REC。

我也想将数据记录定义为可变长度意味着18000个变化。

仅出于这个原因,我问我如何定义带有可变子句的数据记录。

现在我希望,您的要求很明确。
回到顶部
查看用户资料 发送私信
睡眠

新的用户


已加入:2005年3月21日
帖子:18
地点:印度

 发布 发表:2007年5月28日星期一5:57 pm
 引用回复

尝试这个。

FD输出主文件
记录模式为V
标签记录是标准的
块包含0个记录。
01数据记录。
05数据记录区域。
10个数据记录字符
发生0至18000次
取决于数据记录长度
图X(01)。

将DATA-RECORD-LENGTH定义为
01数据记录长度PIC S9(04)COMP。
回到顶部
查看用户资料 发送私信
阿姆里塔·沙特吉

新的用户


已加入:2006年4月27日
帖子:48
地点:印度班加罗尔

 发布 发表:2007年5月28日星期一6:14 pm
 引用回复

嗨,Somnath,

一切正常。谢谢乐透。
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


已加入:2006年11月23日
帖子:19245
位置:矩阵内部

 发布 发表:2007年5月28日星期一9:25 pm
 引用回复

你好,

我对创建一个其他程序无法读取的文件感到好奇吗?

什么样的数据将被放入该文件中,如果什么也不想读取,为什么要创建它?

如果以后需要读取文件,它将如何知道每条记录有多长时间,而依赖字段不在记录中?

奇怪的要求。 。 。 icon_confused.gif
回到顶部
查看用户资料 发送私信
平特

活跃用户


已加入:2005年12月3日
帖子:120
地点:印度

 发布 发表:2007年5月29日,星期二,上午11:26
 引用回复

仅供参考...
通常,将创建一个可变长度的文件,以便您可以将其作为i / p提供给下流应用程序。该长度将存储在文件的RDW中,该长度为前4个字节。可以由下一个应用程序读取。

RDW:-
对于具有可变长度记录的大型机文件,每个记录之前都有一个四字节的记录描述符字(RDW)和一个可能的四字节的块描述符字(BDW)。 RDW(以及可能的BDW)的前两个字节包含一个二进制值,该值是记录(或可能的块)的长度。 RDW(以及可能的BDW)的后两个字节通常包含二进制零(或x'00')。
回到顶部
查看用户资料 发送私信
SREELAKSHMINARAYANAN

新的用户


已加入:2006年7月27日
帖子:7

 发布 发表:2007年5月29日,星期二,上午11:41
 引用回复

如何在Cobol PGM中获取该四字节记录描述符字(RDW)
回到顶部
查看用户资料 发送私信
平特

活跃用户


已加入:2005年12月3日
帖子:120
地点:印度

 发布 发表:2007年5月29日,星期二,12:31 pm
 引用回复

假设I / P文件名是IN-FILE
码:

文件部分。
FD文件
记录取决于记录长度。

工作存储部分。
01 记录长度 PIC 9(5) COMP.
** 200个文件的最大长度**
01保存记录PIC X(200).

程序部门。
***使用记录长度来访问数据的正确长度***
读入文件
移动文件(1:REC-LENGTH) TO SAVED-RECORD

希望这可以帮助。
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


已加入:2006年11月23日
帖子:19245
位置:矩阵内部

 发布 发表:2007年5月29日,星期二,7:58 pm
 引用回复

你好,

引用:
通常,将创建一个可变长度的文件,以便您可以将其作为i / p提供给下流应用程序。该长度将存储在文件的RDW中,该长度为前4个字节。可以由下一个应用程序读取。


相当大 没有 !

当实际上会有不同长度的记录时,文件应定义为vb。另外,当普通的COBOL程序读取可变长度的文件时, 使用RDW。
回到顶部
查看用户资料 发送私信
平特

活跃用户


已加入:2005年12月3日
帖子:120
地点:印度

 发布 发表:2007年5月30日星期三上午7:53
 引用回复

在我们的应用程序中,我们确实将VB文件作为i / p提供给下游应用程序。当我的意思是VB文件..这意味着记录将具有可变长度,否则可能会使用固定长度的文件。

我希望这一点很清楚。

N普通的cobol程序在读取VB文件时如何知道记录的长度?
主持人先生,您能请Xplain吗?
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


已加入:2006年11月23日
帖子:19245
位置:矩阵内部

 发布 发表:2007年5月30日星期三上午8:33
 引用回复

你好,

一个“正常的cobol程序”通常会 知道或使用长度的字节数(RDW)。 I / O例程“知道”文件,并在COBOL代码之外进行处理。

通常,VB文件定义为具有不同长度的多个记录布局(通常由“记录类型”标识)或包含ODO(取决于)的记录定义,ODO的长度由“取决于”字段知道-名称。实际上,某些复杂的VB文件包含多个记录布局以及一个或多个ODO阵列。

在所有这些情况下,都不需要在COBOL代码中使用RDW。

如果要使用某些实用程序(例如sort),则必须允许RDW,但不允许在COBOL代码中使用。

如果您不理解,我们将尽力提供帮助。
回到顶部
查看用户资料 发送私信
平特

活跃用户


已加入:2005年12月3日
帖子:120
地点:印度

 发布 发表:2007年5月30日星期三上午8:41
 引用回复

谢谢你的意思..
我希望上面发布的代码是正确的...

当我们将VB文件转换为FB文件时,RDW是否起作用?
回到顶部
查看用户资料 发送私信
getpiyoosh

新的用户


已加入:2006年3月27日
帖子:1
地点:浦那

 发布 发表:2007年6月1日,星期五,下午4:16
 引用回复

你好
你能告诉我,read子句是什么?
如果能得到确切的语法,我将不胜感激。
回到顶部
查看用户资料 发送私信
查看上一个主题 :: :: 查看下一个主题  
 发表新话题     回复主题 查看书签
所有时间均为格林尼治标准时间+ 6小时
论坛索引 -> COBOL程式设计

 


类似主题
话题 论坛 回覆
 没有新帖 将匹配的记录写入输出文件 DFSORT / ICETOOL 9
 没有新帖 比较文件记录计数百分比... DFSORT / ICETOOL 4
 没有新帖 比较两个文件以查找位置/日期... 同步排序 2
 没有新帖 加载D ...时二级索引错误 IMS数据库/ DC 2
 没有新帖 将文件从PD转换为显示... 同步排序 4
搜索我们的论坛:

 回到顶部