问题标签 [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 投票
2 回答
82 浏览

java - SaveObject Job Fails on RPG Program Call From Java

I am trying to call an RPG program from Java. I can get the program to run correctly using the DriverManager as follows:

However...this is not the way that I want to do it. I want to use the JNDI to connect to the 400 and run the program call, as that is the way I do it to run SELECT, UPDATES, DELETES, etc...

Here is the pseudocode that I have so far, and I am having the RPG fail on the SaveObject.

Is this a problem with the JNDI connection or a problem with the RPG?

Update: It appears that when the SaveObject job goes to work, it says that the table is locked. I am doing inserts and deletes against this table before running the RPG call...any ideas? What would cause a table to still be locked even if I am closing all connections to the database after processing.

0 投票
3 回答
107 浏览

eval - 为什么未使用的文件字段具有空白值?

我有一张名为

EQRECORDS

如下-

和程序如下 -

第一次执行 READE 时,如果我想使用 Eval 查看 Fname 的值。为什么显示为空白?

表中数据如下——

0 投票
1 回答
440 浏览

ibm-midrange - 需要初学者 RPG IV 帮助

所以我学习 RPG IV 只是因为我想……而且我很难找到真正有意义的代码示例。现在我在书中的一个练习中,我不知道如何完成.. 任何人都可以看看并给我一些关于如何做到这一点的步骤或建议吗?

这是书中的练习:


任务


下一个是需要在练习中使用的外部描述文件:


在此处输入图像描述


有人能帮忙吗?

0 投票
2 回答
562 浏览

rpg - “成员类型 RPGLE 不允许运行过程选项”是什么意思?

“成员类型 RPGLE 不允许运行过程选项”是什么意思?

0 投票
2 回答
556 浏览

ibm-midrange - RPG 限制特殊字符“|”的用户输入 在任何名称字段或任何数据输入字段中

我想限制用户输入特殊字符'|' (管道)在任何名称字段或数据输入字段中。

检查应该从屏幕本身而不是通过 RPG/RPGLE 程序进行(如此处所述

如何防止用户在文本字段(字符类型)中输入特殊字符(如键盘中不可见的符号)?)

我试过在显示文件中使用VALUES()函数,它只允许函数中提到的那些字符;例如。

VALUES('A' 'B'...)

而不是保留'|' 禁止它,但它变得非常受限制,因为人们可能会禁止他不应该允许的事情。

0 投票
2 回答
1267 浏览

ibm-midrange - iSeries - 同一作业/会话的记录锁定

我在以下情况下遇到问题。

来自程序 A 的文件 MYFILE 上有一个记录锁。稍后 Session 突然断开连接,并在 MYFILE 上设置一个记录锁,并执行取消处理程序例程。在取消处理程序例程(程序 B)中,它尝试删除锁定在 MYFILE 中的记录,并且会话挂起,因为文件 MYFILE 是用 NOMAX 的 WAITRCD 时间编译的。现在没有人可以访问该帐户以执行其他会话的任何更新操作。

程序流程如下:

.... .... 程序 A(记录锁定) .... 程序 X(取消处理程序)->OVRDBF WAITRCD(3) 添加 .... 程序 B(会话冻结)->在上面添加 OVRDBF 后,会话没有冻结程序 C(发生会话冻结)-> 我仍然看到覆盖在那里,它是相同的默认激活组,没有承诺控制,也没有触发器

这里的场景是:由同一个作业/会话记录锁定。

我尝试了以下解决方案来解决此问题:

在取消处理程序(程序 B)中,我做了一个 OVRDBF,WAITRCD 为 3 到 5 秒。后来执行了上面的步骤,到了取消处理程序的时候,累死了删除锁定的记录,3到5秒后,它继续处理下一步,并写了锁定记录的错误消息。没有屏幕冻结。后来它继续执行另一个程序 C,它试图删除 MYFILE 中的锁定记录。但是现在会话再次挂起。

我检查了调用堆栈,所有程序都在默认激活组下,没有提交控制,也没有触发器。任何想法,为什么它克服了程序 B 而不是程序 C 的记录锁定情况。请告诉我。

问候, 苏瑞

0 投票
2 回答
1454 浏览

php - 如何从 PHP 调用 IBM 外部存储过程

我终于明白了 SQL 存储过程和基于 RPG 或任何其他 AS400 对象的外部存储过程之间的区别。现在我尝试添加调用语句来执行外部存储过程,它只有一个 out 参数,由 RPG 程序生成,如下所示。

PHP:

RPG Programmer 给了我代码,她说她用Surveyor/400 转换成外部存储过程。

角色扮演游戏:

测量员/400 的 DDL:

连接成功,$result 返回为“1”,但 $RTRNFLD 没有返回任何内容。

谢谢您的帮助,

0 投票
0 回答
73 浏览

php - IBMi 错误/通知报告上的 php-cli

我们开发了一个 PHP 脚本来构建 PDF 并发送电子邮件,然后使用QP2SHELL. 对于我们的开发人员用户,错误转到标准的 PHP 错误日志,但对于我们客户的用户,它在他们的默认打印机上打印。我们的开发人员配置文件*WRKSTN用作打印机,当然用户拥有实际的打印机设备。有没有办法防止通过 RPG 或 PHP 打印?我们很乐意抑制所有日志,因为我们有自己的日志记录方法。我尝试过error_reporting(0);似乎没有效果的 PHP 设置。

0 投票
1 回答
231 浏览

ibm-midrange - 将过程(长名称)调用到变量中(不是免费的)

我正在尝试调用一个过程并为输出分配一个变量。

我的问题是我的过程名称对于允许的空间来说太长了:

这是我的工作来源,是否可以使用movemovel做同样的事情?

...

0 投票
3 回答
907 浏览

ibm-midrange - 如何知道程序是用 ALWNULL(*USRCTL) 编译的

我需要知道如何找到一个程序是用 ALWNULL(*USRCTL) (或任何一个)编译的。

命令 DSPPGM 似乎没有提供该信息。

我们正在运行 V7r1。

谢谢你。