3

我目前正在学习 AS400 (IBM I) 的大学课程,直到第 11 章处理 RDP 8.0 之前我都做得很好。无论哪种方式,我都设法完成了任务,直到我需要在“INTROCLASS”库下复制一个先前制作的名为“EMPPFLP”的物理文件。

我将文件复制到“QDDSSRC”源下的我的个人库中,然后右键单击它(EMPPFLP)并选择编译,然后选择 CRTPRTF,我得到了这个。

作业 942098/DDELAP01/QDFTJOBD 已提交到库 QGPL 中的作业队列 QBATCH。

CRTPRTF SRCFILE(DDELAP01/QDDSSRC) SRCMBR(EMPPFLP) REPLACE(*YES) OPTION(*EVENTF) FILE(DDELAP01/EMPPFLP) DDS 中的错误不允许使用指定的 GENLVL。原因 。. . . . : 在 DDS 中发现的错误的严重级别大于或等于错误生成级别(GENLVL 参数),或者指定了 GENLVL(0)。恢复 。. . :有关 GENLVL 值和错误消息,请参阅 DDS 源列表。更正错误或更改命令上的 GENLVL 值,然后重试请求。文件 EMPPFLP 未在库 DDELAP01 中创建。原因 。. . . . : 由于错误,未创建文件。恢复 。. . :请参阅前面列出的错误消息。更正错误,然后重试请求。

在此处输入图像描述

我将感谢任何帮助,不知道这里发生了什么,我已经向教授发布了问题,但我没有收到任何回复,我需要在上午 12 点之前提交此作业。

4

3 回答 3

3

CPD5248:未找到在 REF 或 REFFLD 关键字上指定的文件。

包含REFFLDEMPPFL语句中使用的文件的库不在您的库列表中

替换*LIBL为包含该文件的实际库名称,或使用ADDLIBLE命令(或适合您的开发环境的其他方法)将其添加到您的库列表中。

CPD7528:小数替换位置的数量无效

这是因为之前的错误导致找不到字段定义。


REFFLD关键字允许您从文件(表)中提取字段属性,而不是对每个属性进行硬编码。

该错误表明在您的库列表中找不到被引用的文件 EMPPFL。库列表类似于 Windows/Linux/etc 中的 PATH。

为了解决错误,您必须帮助系统找到 EMPPFL 文件。这可以通过显式指向包含文件的库或将文件包含在库列表中的库中来完成。


如果您可以提供以下命令的输出,将有助于解决问题:

DSPLIBL OUTPUT(*PRINT)

DSPOBJD *LIBL/EMPPFL *FILE OUTPUT(*PRINT)

DSPOBJD *ALLUSR/EMPPFL *FILE OUTPUT(*PRINT)

请注意,第二个命令应返回消息“未找到 *LIBL 类型 *FILE 中的对象 EMPPFL”。

于 2012-06-14T01:19:08.337 回答
0

我对 AS400 几乎一无所知,但确实找到了一篇描述您图片中显示的错误消息的文章:

消息 小数替换位置无效。

原因 EDTWRD 或 EDTCDE 关键字的小数替换位置数必须等于字段长度。小数替换位置的数量是空格数和第一个停止零抑制字符的总和。如果 EDTWRD 中的第一个字符是停止零抑制字符,则可以指定一个额外的空格。

恢复 更改字段长度或 EDTWRD 或 EDTCDE 关键字上的值,以使字段长度与小数替换位置的数量相同。然后再次尝试请求。

http://www.iseriesworld.net/?messages=cl&prefix=cpd&code=7528

我希望这会有所帮助。祝你的课好运,欢迎来到 Stack Overflow!

于 2012-06-14T00:19:14.037 回答
0

这似乎是一个 GENLVL 错误。您应该在编译后查看 SPLF 哪个产品。那里应该有一些有用的信息

于 2012-06-14T00:25:46.093 回答