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

如何将DCB参数从输入DSN传递到输出DSN


IBM大型机论坛 -> CA产品
发表新话题   回复主题
查看上一个主题 :: 查看下一个主题  
作者 信息
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月26日,星期五,下午7:53
引用回复

是否可以创建与输入dsn相同的dcb参数的输出dsn,就像DMSsort中发生的情况一样。

我尝试使用以下方法,但是有些方法无法解决。
// Indsn dd dsn = input,DCB =(LRECL = 560,BLKSIZE = 0,RECFM = FB)....
// outdsn dd dsn = ouput,dcb = *。indsn,.......

如果上述方法有问题或上述问题的替代解决方案,请告诉我。

谢谢
回到顶部
查看用户资料 发送私信
超级

全球主持人


已加入:2004年4月26日
帖子:4650
地点:美国北卡罗来纳州罗利

发布发表:2009年6月26日,星期五7:56 pm
引用回复

是的,请使用DFSORT或SYNCSORT。
回到顶部
查看用户资料 发送私信
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月26日,星期五8:33 pm
引用回复

超级写道:
是的,请使用DFSORT或SYNCSORT。


感谢您答复凯文。但是,我想执行此任务而不使用sort as,因为我没有在PROC中调用DFSORT或SYNCSORT。
回到顶部
查看用户资料 发送私信
Craq Giegerich

高级会员


加入时间:2007年5月19日
帖子:1512
地点:美国弗吉尼亚

发布发表:2009年6月26日,星期五,晚上8:35
引用回复

吉米班达里写道:
是否可以创建与输入dsn相同的dcb参数的输出dsn,就像DMSsort中发生的情况一样。

我尝试使用以下方法,但是有些方法无法解决。
// Indsn dd dsn = input,DCB =(LRECL = 560,BLKSIZE = 0,RECFM = FB)....
// outdsn dd dsn = ouput,dcb = *。indsn,.......

如果上述方法有问题或上述问题的替代解决方案,请告诉我。

谢谢


您在jcl中显示的引荐将满足您的要求。
回到顶部
查看用户资料 发送私信
阿努·达万(Anuj Dhawan)

高级会员


已加入:2006年4月22日
帖子:6250
地点:印度孟买

发布发表:2009年6月26日,星期五,晚上8:59
引用回复

PS。我相信,如果“ indsn”和“ outdsn”未启用,则使用引用返回不是一个好主意 类似 储存设备。尽管我对磁带和录像带都在磁带上是否会有所怀疑表示怀疑? (现在办公室大约是晚上9点,现在不想做实验...)
回到顶部
查看用户资料 发送私信
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月26日,星期五,9:22 pm
引用回复

阿努·达万写道:
PS。我相信,如果“ indsn”和“ outdsn”未启用,则使用引用返回不是一个好主意 类似 储存设备。尽管我对磁带和录像带都在磁带上是否会有所怀疑表示怀疑? (现在办公室大约是晚上9点,现在不想做实验...)


我在上面的jcl中指定的内容似乎是正确的解决方案,但我现在暂时中止。

系统完成码= 013原因码= 00000034

虽然到目前为止我还没有检查过不同的存储设备。

谢谢大家的帮助.....
回到顶部
查看用户资料 发送私信
阿努·达万(Anuj Dhawan)

高级会员


已加入:2006年4月22日
帖子:6250
地点:印度孟买

发布发表:2009年6月26日,星期五,9:41 pm
引用回复

那只是一个预防措施,这就是为什么要用Post Script编写... icon_smile.gif
引用:
系统完成码= 013原因码= 00000034
如果要以任何方式更改记录的长度,缩短或延长行长,或写出不同的格式(例如,从FB到VB,或从VB到FB),则不能对输出文件使用相同的属性作为输入文件。

那么,您的PROC(您在其中一步中的程序)正在做什么?
回到顶部
查看用户资料 发送私信
罗伯特·桑普

全球主持人


已加入:2008年6月6日
帖子:8569
地点:美国爱荷华州迪比克

发布发表:2009年6月26日,星期五,晚上10:49
引用回复

您提供的信息越多,您越早可以获得解决方案。 013-34在手册中具有以下含义:
引用:
34
系统检测到以下情况之一:

*指定了以下组合:QSAM,MACRF = GD或PD,并且RECFM值不是VS,VBS,DS或DBS。

*对于BLKSIZE和BUFL等于0的数据集,发出了OPEN宏指令。系统确定它必须获取缓冲区,但不能这样做。

* RECFM同时具有A和M属性。

*指定了以下组合:QSAM,LRECL = 0,并且RECFM值不是V或VB。

*指定了以下组合:RECFM = V或VB且LRECL大于BLKSIZE减去4。

*指定了以下组合:QSAM和BLKSIZE = 0。任何来源都没有非零的BLKSIZE值,并且系统无法确定一个。 JCL中的BLKSIZE = 0编码永远不会起作用,除非覆盖已编入目录的过程变量。

*指定了以下组合:RECFM不变或未定义,并且LRECL大于BLKSIZE。

*指定了以下组合:BFTEK = A,RECFM = VBS和LRECL = 0。
回到顶部
查看用户资料 发送私信
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月26日,星期五
引用回复

罗伯特·萨普(Robert Sample)写道:
您提供的信息越多,您越早可以获得解决方案。 013-34在手册中具有以下含义:
引用:
34
系统检测到以下情况之一:

*指定了以下组合:QSAM,MACRF = GD或PD,并且RECFM值不是VS,VBS,DS或DBS。

*对于BLKSIZE和BUFL等于0的数据集,发出了OPEN宏指令。系统确定它必须获取缓冲区,但不能这样做。

* RECFM同时具有A和M属性。

*指定了以下组合:QSAM,LRECL = 0,并且RECFM值不是V或VB。

*指定了以下组合:RECFM = V或VB且LRECL大于BLKSIZE减去4。

*指定了以下组合:QSAM和BLKSIZE = 0。任何来源都没有非零的BLKSIZE值,并且系统无法确定一个。 JCL中的BLKSIZE = 0编码永远不会起作用,除非覆盖已编入目录的过程变量。

*指定了以下组合:RECFM不变或未定义,并且LRECL大于BLKSIZE。

*指定了以下组合:BFTEK = A,RECFM = VBS和LRECL = 0。


感谢Rob,

我正在尝试在流内EZTtieve代码中实现这一点。
读写文件如下

FILE INFILE FB(0 0)
........

文件输出FB(0 0)
........

因此,这应该从JCL本身获取LRECL并采取SMS设置的Blocksize,并且Blocksize可能是这种原因的原因,因为输入DSN可能无法通过SMS进行管理。

我不确定如何也可以通过EEASTRIEVE代码从JCL复制小块代码。

请查看是否可以帮助。
回到顶部
查看用户资料 发送私信
罗伯特·桑普

全球主持人


已加入:2008年6月6日
帖子:8569
地点:美国爱荷华州迪比克

发布发表:2009年6月26日,星期五,下午11:56
引用回复

您曾经成功完成此操作吗? JCL 语言参考 手册说
引用:
12.16.3完成数据控制块


系统以覆盖顺序从以下来源获取数据控制块信息:

*处理程序,即汇编语言程序或文件定义语句中的DCB宏指令,或其他语言程序中的语言定义的默认值。

* DD语句的DCB子参数。

*数据集标签。

因此,如果您在处理程序中和DD语句中为同一DCB字段提供信息,则系统将忽略DD DCB子参数。如果DD语句和数据集标签为同一DCB字段提供信息,则系统将忽略数据集标签信息。
因此,通过在程序中指定DCB,可以明确告诉系统不要将JCL或文件用作DCB源。我怀疑在您的代码中将LRECL设置为0不是明智的选择。
回到顶部
查看用户资料 发送私信
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月27日,星期六12:07 am
引用回复

罗伯特·萨普(Robert Sample)写道:
您曾经成功完成此操作吗? JCL 语言参考 手册说
引用:
12.16.3完成数据控制块


系统以覆盖顺序从以下来源获取数据控制块信息:

*处理程序,即汇编语言程序或文件定义语句中的DCB宏指令,或其他语言程序中的语言定义的默认值。

* DD语句的DCB子参数。

*数据集标签。

因此,如果您在处理程序中和DD语句中为同一DCB字段提供信息,则系统将忽略DD DCB子参数。如果DD语句和数据集标签为同一DCB字段提供信息,则系统将忽略数据集标签信息。
因此,通过在程序中指定DCB,可以明确告诉系统不要将JCL或文件用作DCB源。我怀疑在您的代码中将LRECL设置为0不是明智的选择。


抢,

指定文件名称FB(0 0)
未将lelrecl设置为0,而是引用程序从JCL参数中获取相同的值。

我也试着给
文件名。

那也放弃了。
回到顶部
查看用户资料 发送私信
迪克·谢勒

主持人荣誉


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

发布发表:2009年6月27日,星期六12:49 am
引用回复

您好,

您可以在Easytrieve中成功读取输入文件吗?
回到顶部
查看用户资料 发送私信
罗伯特·桑普

全球主持人


已加入:2008年6月6日
帖子:8569
地点:美国爱荷华州迪比克

发布发表:2009年6月27日星期六上午1:19
引用回复

我(显然)不了解Easytrieve,所以我认为我不会有太大帮助。最初显示的引用将起作用,并将DCB属性从输入文件复制到输出文件-只要它们符合您显示的顺序即可。因此,您的问题将与应用程序相关,因为JCL会执行您想要的操作。

您可能需要发布完整的JCL和程序(除非它们太长了)。
回到顶部
查看用户资料 发送私信
道格拉斯·怀尔德(Douglas Wilder)

活跃用户


已加入:2006年11月28日
帖子:305
所在地:伊利诺伊州迪尔菲尔德

发布发表:2009年6月27日星期六星期六2:04 am
引用回复

对于我的easytrieve文件,我将输入和输出文件都保留为“ FB(0 0)”。我想我没有尝试使用引用返回输入,因为如果没有将输入文件的DCB放在我的计算机中,我现在得到的结果是没有“ FB(0 0)”的结果JCL(让系统将其从文件中删除)是我的常规做法。但是,如果我将DCB放在输入文件的JCL中,并在输出文件中进行引用,则它是有效的。
回到顶部
查看用户资料 发送私信
道格拉斯·怀尔德(Douglas Wilder)

活跃用户


已加入:2006年11月28日
帖子:305
所在地:伊利诺伊州迪尔菲尔德

发布发表于:2009年6月27日星期六,上午2:20
引用回复

在没有“ FB(0 0)”的情况下进行进一步测试时,得出blksize = lrecl。 (我以为我发现过去不是这样)。因此,我现在将其保留在输入而不是输出文件之外。

同样,在输入中的JCL中仅需要LRECL,而在输出中返回引用。或者输入上没有DCB,而输出上只有LRECL。

奇怪,这不是我所期望的。
回到顶部
查看用户资料 发送私信
阿努·达万(Anuj Dhawan)

高级会员


已加入:2006年4月22日
帖子:6250
地点:印度孟买

发布发表:2009年6月27日星期六8:25 pm
引用回复

看一看 这个非常相似的早期线程,它没有提供解决方案,但是可以,告诉您与程序逻辑有关。为了进行实验,请尝试编码DCB = LRECL = ??为您的输出DSN,并告诉我们是否可行。
回到顶部
查看用户资料 发送私信
吉米班达里

新的用户


已加入:2009年6月4日
帖子:13
地点:班加罗尔

发布发表:2009年6月29日星期一6:05 pm
引用回复

阿努·达万写道:
看一看 这个非常相似的早期线程,它没有提供解决方案,但是可以,告诉您与程序逻辑有关。为了进行实验,请尝试编码DCB = LRECL = ??为您的输出DSN,并告诉我们是否可行。


逻辑DCB = LRECL =无法计算出Anuj。这给出了以下错误
--- CAY6049E对于“ DCB”的“ LRECL”参数无效

Douglous,我浏览了您的帖子...是的,这很奇怪,我们至少需要为输入/输出文件之一指定DCB,才能使用EZT进行回引用。但是,那我不认为这真的有用,因为我想减少PROC的用户输入。由于这还不能解决,我将从用户的输入中获取输入文件的DCB参数,并将其作为输出。

我编码的逻辑未对blksize,lrecl等进行任何更改。这是一个很大的代码,因此不能将其粘贴到此处。

但是,我认为异常终止不是由于EZT编码中的逻辑,而是因为可能是在从输入文件读取或写入输出文件时,EZT更改了这些参数。

现在,我将手动控制此事物........如果我找到任何解决方案,将在此处更新...

谢谢大家的帮助
回到顶部
查看用户资料 发送私信
阿努·达万(Anuj Dhawan)

高级会员


已加入:2006年4月22日
帖子:6250
地点:印度孟买

发布发表:2009年6月29日星期一6:52 pm
引用回复

引用:
我将从用户的输入中获取输入文件的DCB参数
这是什么意思? icon_confused.gif 。文件位于大型机上,因此DCB与您同在... icon_confused.gif
回到顶部
查看用户资料 发送私信
CaptBill

新的用户


加入时间:2009年5月28日
帖子:20
地点:美国俄克拉荷马州俄克拉何马城

发布发表:2009年6月30日,星期二,凌晨3:09
引用回复

我相信,解决您问题的最佳方法就是尝试您所遇到的问题。如果那不起作用,则发布结果并提出问题。
回到顶部
查看用户资料 发送私信
查看上一个主题 :: :: 查看下一个主题  
发表新话题   回复主题 查看书签
所有时间均为格林尼治标准时间+ 6小时
论坛索引 -> CA产品

 


类似主题
话题 论坛 回覆
该主题已锁定:您无法编辑帖子或回复。 将匹配的记录写入输出文件 DFSORT / ICETOOL 11
没有新帖 使用基于关闭的VB记录排序... DFSORT / ICETOOL 6
没有新帖 JOINKEYS匹配两个输入文件... DFSORT / ICETOOL 3
没有新帖 如何在ISPSTART中传递参数... 清单和REXX 6
没有新帖 使用CO创建单记录文件... DFSORT / ICETOOL 8
搜索我们的论坛:


回到顶部