为什么我不能使用长度超过 65535 RPGIV 的字符
Why cant I use a Character length more than 65535 RPGIV
我修改了下面的文章,似乎我应该能够定义一个类型可变的变量,其大小限制为 16mb 而不是 65535 个字符。
http://www.mcpressonline.com/programming/rpg/v6r1-rpg-enhancements.html
这个论坛 post 建议在 V6.1 中可以做到这一点。
D BigVarying S a Len(25000000) Varying(4)
当我尝试执行此操作时出现以下错误,似乎我无法使用 Len(25000000) Varying(4)
也许我不明白 V6.1 的确切含义,但我使用命令 DSPSFWRSC
在绿屏上查看并获得以下版本 V6R1..
我还使用系统导航器进行了检查,并检查了服务器属性,它是:i5/OS version Version 6 Release 1 Modification 0.
我用来编译的IDE是IBM Websphere development studio
Version: 7.0.0
Build id: 20070202_0030
正在尝试编译 RPGLE 函数。
我检查的是正确的版本还是有RPG版本,你是怎么检查的。
你能帮我解惑吗
V6.1是你的操作系统版本,你可以参考V6.1 ILE RPG Language Reference here看看是否可以。我想你要找的是第 185 页。
我刚刚在 7.2 中对此进行了测试,但没有出现相同的错误。
D BigVarying S a Len(25000000) Varying(4)
RNF0501E Length of character item exceeds 16773104; length defaults to 16773104.
RNF0231E Length of varying length character item exceeds 16773100; length defaults to 16773100.
//Dcl-S BigVarying Varchar(25000000);
BigVarying = 'Hello world';
Return;
所以,正如(重复)错误提到的那样
Length of character item exceeds 16773104; length defaults to 16773104.
如果您想要更大的长度,则需要更新到更新版本的 IBM i - 但最大长度也是 16773104,这意味着 25000000 无效。
虽然 RPGLE 从 6.1 开始支持 16MB 变量,而您使用的是 6.1..
你有两个问题:
- 25000000 (23.8MB) 大于 16773104 (~16MB)
- Websphere Development Studio v7 (WDSc) 早于 IBM i 6.1(您的构建日期是 2007 年,您引用的文章发表于 2008 年)。因此,您的 IDE 无法识别新关键字和新的最大尺寸。
问题 #2 不是问题,您可以简单地忽略 IDE 中的错误并在服务器上成功编译。如果您使用的是绿屏编辑器 SEU,则必须执行与 IBM 在 6.1 停止增强 SEU 相同的操作。
我修改了下面的文章,似乎我应该能够定义一个类型可变的变量,其大小限制为 16mb 而不是 65535 个字符。
http://www.mcpressonline.com/programming/rpg/v6r1-rpg-enhancements.html
这个论坛 post 建议在 V6.1 中可以做到这一点。
D BigVarying S a Len(25000000) Varying(4)
当我尝试执行此操作时出现以下错误,似乎我无法使用 Len(25000000) Varying(4)
也许我不明白 V6.1 的确切含义,但我使用命令 DSPSFWRSC
在绿屏上查看并获得以下版本 V6R1..
我还使用系统导航器进行了检查,并检查了服务器属性,它是:i5/OS version Version 6 Release 1 Modification 0.
我用来编译的IDE是IBM Websphere development studio
Version: 7.0.0
Build id: 20070202_0030
正在尝试编译 RPGLE 函数。
我检查的是正确的版本还是有RPG版本,你是怎么检查的。
你能帮我解惑吗
V6.1是你的操作系统版本,你可以参考V6.1 ILE RPG Language Reference here看看是否可以。我想你要找的是第 185 页。
我刚刚在 7.2 中对此进行了测试,但没有出现相同的错误。
D BigVarying S a Len(25000000) Varying(4)
RNF0501E Length of character item exceeds 16773104; length defaults to 16773104.
RNF0231E Length of varying length character item exceeds 16773100; length defaults to 16773100.
//Dcl-S BigVarying Varchar(25000000);
BigVarying = 'Hello world';
Return;
所以,正如(重复)错误提到的那样
Length of character item exceeds 16773104; length defaults to 16773104.
如果您想要更大的长度,则需要更新到更新版本的 IBM i - 但最大长度也是 16773104,这意味着 25000000 无效。
虽然 RPGLE 从 6.1 开始支持 16MB 变量,而您使用的是 6.1..
你有两个问题:
- 25000000 (23.8MB) 大于 16773104 (~16MB)
- Websphere Development Studio v7 (WDSc) 早于 IBM i 6.1(您的构建日期是 2007 年,您引用的文章发表于 2008 年)。因此,您的 IDE 无法识别新关键字和新的最大尺寸。
问题 #2 不是问题,您可以简单地忽略 IDE 中的错误并在服务器上成功编译。如果您使用的是绿屏编辑器 SEU,则必须执行与 IBM 在 6.1 停止增强 SEU 相同的操作。