ibm-midrange - 在 RPGLE 显示文件中按 Enter 键移动到下一个输入字段

标签 ibm-midrange rpgle

我是 rpgle 编程新手。我想通过按 Enter 键(不按 Tab 键)将光标从一个整数输入字段移动到下一个整数输入字段,而不清除 rpgle display file。 请帮忙。提前致谢。

最佳答案

你真的不能这么做。

5250 协议(protocol)是面向 block /屏幕的协议(protocol)。这意味着一旦屏幕被发送到设备,服务器就会脱离画面,直到设备返回控制权。 Enter 是一个特殊的键,它的唯一作用是将控制权返回给服务器。

早在 5250 模拟器首次问世时,PC Enter 默认映射到 Field-Exit 键和右下角的 Ctrl键映射到 Enter,因为这就是物理 5250 键盘上相应键的位置。现在,IBM 的 ACS 模拟器使用 Enter 来表示 Enter,使用 Ctrl+Enter 来表示 Field-exit

Field-exit 是您正在寻找的行为。

您可以像 @nfgl 在评论中提到的那样,模拟您希望用户实现的行为。您可以使用RTNCSRLOC这样您的程序就知道按下 Enter 键时用户光标所在的位置,然后您的程序使用 DSPATR(PC) 或 CSRLOC 将光标放在下一个字段上,然后再将屏幕发送回设备。您的程序还需要保留先前输入的数据。例如,您的字段需要是输入输出,而不是仅输入字段。并且您需要确保在将其发送回之前没有清除显示记录。

关于ibm-midrange - 在 RPGLE 显示文件中按 Enter 键移动到下一个输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71552749/

相关文章:

linux - 在 Linux 服务器上通过 Informatica Power Center 读取 DB2 数据时出现问题

python - pyodbc rowcount 返回负数

ibm-midrange - AS400.validateSignon() 不会将失败的登录尝试重置为 0

ibm-midrange - RPG编译错误

RPGLE 打印到命令窗口

sql - 插入带有字母字符串和压缩小数的混合 db2 字段

java - JT400 - 显示 SpooledFile 的内容

ibm-midrange - 在非循环程序中设置*inlr有什么影响吗?

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

java - 使用 JTOpen 连接到 AS/400 时存在 SQL 注入(inject)风险