问题标签 [rpg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1286 浏览

sql - 调试 DB2 会话

我只是调试 iSeries/RPG/SQL 问题的唯一不幸者……(我不是 RPG 专家)

我有一个程序,它包含在 iSeries 上的 DB2 上声明的临时表。临时表是在会话中声明的,因此当我通过 iSeries 上的终端运行应用程序并调试 RPG 时(我认为这是正确的术语?)无论如何,我实际上处于两个不同的会话中。

我正在查看的 SQL 做了这样的事情......

虽然我可以很好地查询“真实表”,但我看不到 SESSION 表的内容......那么我将如何在不同的会话中查询表?大概 SESSION/#temp_table 是我可以通过执行 select * from 123123/#temp_table 之类的操作来查询的东西,但是我怎么知道其他会话 id/name/variable/access token 的样子?

0 投票
1 回答
1156 浏览

java - 从 RPG 调用 Java,找不到我的 Java 类

尝试从 RPG 调用 Java 方法时,我一直在遵循手册Introduction to Java and RPGCalling Java Methods from ILE RPG

但是当我调用调用我的 java 函数的 RPG 函数时,我收到以下错误:

调用 Java 方法 (CGDF) 时收到 Java 异常。

按 F1 显示以下消息:

信息 。. . . : 调用 Java 方法 (CGDF) 时收到 Java 异常。
原因 。. . . .
: 程序 DEVLYNLIB/HELLO 中的 RPG 过程 HELLO 在类“JavaCallClass”中调用带有签名“(II)I”的方法“test.CallStaticMethod”时收到 Java 异常“java.lang.NoClassDefFoundError: JavaCallClass (wrong name: test/JavaCallClass) ” .

这是我的Java类:

角色扮演游戏功能:

我认为它可能与我的 CLASSPATH 变量有关,我相信我已经设置正确了。我的 Java 类文件位于/home/WAL60326/TutorialProject/test

这是我的完整 CLASSPATH 变量值:

'/Plex/Objava/lib/obrun.jar:/Plex/WsydXml11.jar:/PLEX/JT400.JAR:/PLEX/WSYDUTIL.JAR:/Plex/xercesImpl.jar:/Plex/xalan.jar:/PLEX/ XML-APIS.JAR:/PLEX/WSYDDWA21.JAR:/PLEX/COMMONS-HTTPCLIENT-3.1.JAR:/PLEX/COMMONS-LOGGING-1.1.JAR:/PLEX/COMMONS-CODEC-1.3.JAR:/PLEX/ADDRESSBOOK .JAR:/PLEX/NEXTNUM.JAR:/PLEX/UDC.JAR:/PLEX/P6SERVICES.JAR:/PLEX/MASTERVOCAB.JAR:/home/WAL60326/TutorialProject/test'

0 投票
3 回答
849 浏览

ibm-midrange - 基于 IBM AS400 的 rpg/iseries

我们需要从基于 IBM AS400 的 rpg/iseries 程序访问 https api。

为了尝试这个,我们安装了“Mocha W32 TN5250”,但无法连接到会话。

是否可以从基于 IBM AS400 的 rpg/iseries 程序进行 https 调用?

0 投票
3 回答
5413 浏览

java - RPG调用Java,java.lang.NoClassDefFoundError

我的目标是从 Java 调用 Web 服务,从 RPG 函数启动。(我知道,它还有很长的路要走,但这是我们需要的)

/JavaLib在 AS400 上创建了一个文件夹,并复制了我们需要的所有外部罐子。

使用静态方法创建一个 Java 类WebServiceCaller.Call()来调用 Web 服务。当我运行我的 RPG 程序时,一切都很好,RPG 调用这个方法。

我得到一个 Java 异常:

信息 。. . . : 调用 Java 方法 (CGD F) 时收到 Java 异常。
原因 。. . . . : 程序 WAL60326/WEBSERCALR 中的 RPG 过程 WEBSERCALR 在
调用带有签名“(LwebService.Input;)LwebService.Output;”的方法“Call”时收到 Java 异常“java.lang.NoClassDefFoundError: javax.xml.rpc.ServiceException” 在
“webService.WebServiceCaller”类中。

类路径变量:

/JavaLib:/home/WAL60326/WebServiceCaller

所以我相信我的 RPG 和 Java 类很好,我相信我已经正确设置了我的 CLASSPATH 变量。不知道还有什么要检查的。


更新

所以我需要的jar文件jaxrpc.jar我已经检查过了;它确实存在于我的/JavaLib. 能够在 AS400 上检查我的 Java 版本java version "1.5.0"。并按照这些说明检查我的操作系统是否为 V6R1。

会不会是我的 Java 版本过时了,才能加载/工作这个 Jar 文件?这还有可能吗?


编辑

这是我的源代码:

Java:WebServiceCaller.Java

请注意,Eclipse 生成的 GetBidsProxy 类。Java 端在我的 Windows 机器上运行良好。只是不在 AS400 机器上。

角色扮演游戏:WEBSERCALR.RPGLE

0 投票
2 回答
1142 浏览

sql - RPG 编程中不允许使用空值吗?

我们的 RPG 程序员告诉我,我们基于 AS400 的 DB2 数据库表都不允许空值,因为空值在 RPG 中“真的很难编程”。我想知道这是否真的是真的,如果是的话,是什么让这个基本的数据库功能在 RPG 中如此难以使用?

我意识到这可能稍微超出了 Stack Overflow 的范围,但这是我所知道的此类信息的最佳来源。

0 投票
2 回答
959 浏览

java - 从 RPG 调用 Java,除我之外的所有用户的 ClassNotFoundError

我非常感谢您ClassNotFoundError在从 RPG 调用 Java 方法时提供的帮助。当除我之外的任何其他用户尝试运行我的程序时,就会发生这种情况。从字面上看,CLASSPATH 或对 jar 文件的访问似乎存在问题,但我也从这方面尝试过。

说明:我有一个 RPG 程序,它在 jar 文件中调用 java 方法。我的 CLASSPATH 包含正确的 jar(JtOpen jar 文件)。当我从绿屏和黑屏(Iseries 会话管理器)运行 RPG 程序时,它可以完美运行。每当另一个用户尝试以相同的方式运行它时,它都会抛出以下错误消息:

RPG Procedure received Java Exception java.lang.NoClassDefFoundError: com.ibm.as400.access.AS400 when calling method "invokeApiPgm" with signature "([Ljava.lang.String;Ljava.lang.String;I[Ljava.lang.String;)Z" in class "callIceApi.CallIceApiPgm".

上面的签名也和我调用的方法一样。Java 抱怨的类似乎是 AS400 的类还是我的类?我可以看到 AS400 类是公开的。我的类的构造函数成功创建了类对象。它只是在调用 main 方法时失败invokeApiPgm

伙计们,你认为我错过了什么或搞砸了什么?

谢谢你的帮助!

特韦勒

0 投票
2 回答
1578 浏览

rpgle - 扩展模板化数据结构(继承)

我一直在阅读LIKEDS, TEMPLATE, 并BASED试图确定是否有一种方法可以创建具有继承的数据结构模板(原型)。我有:

我希望 boxCosts 看起来像:

有没有办法实现这种类型的数据结构模板?我知道我可以这样做:

但是当我想要一个平面结构时,这会创建一个层次结构。

我也许可以用抄写本来做到这一点,但我不知道是否只有我想要在自己的文件中的数据结构部分有一本抄写本,或者为整个应用程序有潜在复杂的条件抄写本会更糟复制这些信息的区域很小......?模板与我想要的非常接近,我怀疑我一定是遗漏了一些东西。

如果您想知道,我在尝试创建像我展示的那样的继承数据结构时得到的编译错误位于关键字RNF3703: The subfield or parameter definition is not specified within a group.下方的第一个 D 规范中。LIKEDS

谢谢阅读。

0 投票
1 回答
323 浏览

java - 如何声明和调用从 RPG 获取二维再见数组参数的 java 方法?

我有一个 java 方法,其中一个参数是二维字节数组 ( byte[][])。我想从 RPG 中调用该方法。我知道它适用于一维字节数组,例如通过在 RPG 中将该参数声明为 nA,其中 n 是数组的长度,A 是字母。即 RPG 中的 nA 与 java 中的相同byte[]。但是,当我将 DIM(k) 添加到参数声明 RPG 时,它说关键字在方法的原型中是不允许的。我可以使用 String 数据类型来做到这一点,但我想避免从字节到 java String 的数据类型转换,反之亦然。(效率问题)

任何人都可以帮我让它工作吗?

0 投票
2 回答
3317 浏览

arrays - 在 RPG 过程中接受未知大小的数组

我正在尝试创建一个过程,该过程将采用一个数组并返回已使用元素的计数(为什么这不是 BIF??)。我正在努力寻找一种将未知大小的数组传递给我的程序的方法。

就像是...

显然我是新手,所以我有几个问题:

  1. 有没有办法将 size 和 max 元素作为参数传递(或者可能是传递一种带有数据详细信息的标头数据包的方法)?
  2. 有没有办法确定数据是什么类型?(所以我知道是要查找 *ZEROS 还是 *BLANKS)
  3. 我是否错过了解决此问题的其他更好的方法?

我知道我可以保留一个单独的计数器变量,每当我在数组中设置一个元素时它就会递增,但我真的很想找到一个更好的解决方案……谢谢你的阅读。

0 投票
1 回答
1304 浏览

db2 - DB2 AS400 & RPG 请说明关系

DB2 AS400 & 角色扮演游戏

请用简单的方式解释关系,因为我做了一些研究后很困惑

到目前为止,我了解 DB2 是一种用 RPG 编程语言编写的 AS400 系统数据库。

这个对吗?