问题标签 [rpgle]

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 回答
660 浏览

ibm-midrange - 使用 DSPATR(&ATTR) 在支持 RED 输入的字段中显示 CS(列分隔符)

我正在显示来自 RPG 的 DSPF 格式,不使用指示符,但 P-field 属性可以改变颜色和输入能力。Turquoise 和 Yellow 字段默认具有 CS(列分隔符)。如果我使用带有指标的格式,则在记录级别带有 CHGINPDFT(CS) 的可输入红色字段会显示点。我没有成功获得带有属性的点,也没有在字段级别使用另一个 CHGINPDFT(CS)。DSPF 中是否有一个选项(关键字)允许我使用 RED 和 CS,具有 P 字段属性?

我添加了我的客户端访问会话的屏幕图像,所有默认值 在此处输入图像描述

字段alter“Titolo”是红色的,没有CS,不可能吗?

0 投票
3 回答
2334 浏览

ibm-midrange - 如何为给定条件的字段选择最大值?

我正在做考勤系统,其中我的物理文件(PF)具有以下字段:

问题是,我尝试选择特定的用户 ID 和日期以及当天的最高超时值。并将超时值移动到我程序中的变量中。

RPGLE 源代码会是什么样子?

0 投票
4 回答
2209 浏览

ibm-midrange - 如何从 ILE 程序中读取 liblist?(最好是RPG或CL)

我们通过使用不同的库列表运行它们来控制我们在 as400 上的程序工作的对象。但是有些操作不能直接控制。因此,我的程序需要读取 liblist 并决定其中的一些库,如何操作。

我找不到任何 api 来从程序中读取 liblist 条目。我期望的是某种 api,它可以让我按优先级遍历 liblist 条目,或者按照 liblist 给出的顺序给我一个数组。如果可能,我更喜欢 RPG 或 CL,但也可以使用其他 ILE 语言。

(如果您想知道为什么我要这样做,我问了另一个问题,它解释了我面临的封闭问题:如何在由作业库列表控制的两个不同库之一中创建 DTAQ? 但是liblist 解析是一种解决该问题的方法,并且是一个单独的问题)。

0 投票
3 回答
5244 浏览

ibm-midrange - 如何为 RPG 或 CL 程序中的激活组设置编译器选项?

有没有办法为程序源指定,在编译期间应该使用哪些激活组选项?

在我们在 as/400 上的大多数程序中,我们需要更改激活组的处理方式(因为默认行为根本没有用......)。每次编译其中一个程序时,我都必须记住设置编译器选项(在 PDM 中: enter 14、 hit F4、 change DFTACTGRPfrom *YESto *NO、 hit enter、 change ACTGRPto *NEWor *CALLER,具体取决于程序)。所以我们有很多程序开头都有注释,有大量的感叹号,提醒程序员这样做。是的,有时你会忘记。

有什么诀窍,让你不必记住自己吗?

0 投票
2 回答
92 浏览

ibm-midrange - 只能读取一个值

我编写了一个程序来读取物理文件:

我允许用户输入日期、时间和超时。

当然它会复制 USRID

在我的程序中,我检查以前的最大值,如下所示:

我有以下用户:

但是当我尝试与以前的值进行比较时。我的程序只能检查 user A000000001,而不是其他用户。

如何修改程序以便检查所有用户?

0 投票
1 回答
683 浏览

ibm-midrange - 具有不同的记录格式与具有单独的显示文件

对于在 AS400 上开发的应用程序的每个类别有不同的显示文件是否更好,或者创建不同的记录格式(或同一 DSPF 中的多个文件的 RECORD 格式类型)是合适的。

我有 4 个屏幕要显示。我应该在 1 个 DSPF 中创建 4 个不同的 DSPF 文件或 4 种不同的格式类型,请指导。

0 投票
2 回答
1950 浏览

database - 将日期字段值保存到物理文件中

我有一个日期字段,它接受 AS400 中的系统日期

显示文件包含 *DATE 的日期字段

我有一个包含日期列的物理文件。当我尝试将屏幕的其他字段保存到此物理文件时,我还想保存此系统日期。

但是我无法向这个内置的 Date 函数添加字段名称。

我怎么能在我的显示屏幕上有一个日期字段,它会自动接受系统日期并具有 DD/mm/yy 格式的输入格式,但在数据库内部它必须将其保存为 yy/mm/dd。

为了在我的日期格式数据库中进行这种内部转换,我初始化了一个名为“日期”的日期字段,长度为 6,压缩十进制,0 小数位。

请指导如何以这种格式将屏幕上的系统日期保存到物理文件中。

重新编辑:我有一个等级的 PF 接收日期定义如下。(其 DDS)

我避免使用“L”数据类型作为日期,因为我想执行上面解释的日期转换。

0 投票
3 回答
1514 浏览

drop-down-menu - AS400 显示文件中的下拉菜单

在 AS400 中,是否可以在显示文件“RECORD”类型的记录格式中有一个下拉菜单。

但是对于其中一个选项,我还想打开一个菜单,一个子菜单,而不是在同一个屏幕上(如下拉菜单)。我知道显示下拉菜单的记录类型......但我该怎么做通过 CL 调用它我不确定。

请帮助人们。

0 投票
2 回答
2016 浏览

rpgle - 在 RPG 中使用 MOVEL 函数对文本进行子串化

问题:

使用 MOVEL 函数从 RPG 中的文本中获取子字符串 n 个字符是否可以保存,该函数获取长度为 x 的文本并将其存储到容量为 n 的变量中?

或者获取第一个 n 字符的唯一保存方法是使用 SUBST?

问题的背景是我的一位同事从长度为 30 个字符的数据库中获取前 3 个字符是使用 MOVEL 到一个长度仅为 3 个字符的变量(比如截断其余部分)。奇怪的方式,有时接收变量显示减号('-'),有时不显示。所以我认为使用 MOVEL 不是一种安全的方法。我在想 C 中的字符串总是以 '\0' 终止,你需要使用 strcpy 函数来获取副本保存,而不是使用 = 运算符分配。

任何了解 RPG 的人都熟悉这个问题?

0 投票
3 回答
581 浏览

db2 - 验证用户、密码并打开 rpgs 菜单

我的 AS400(rpg400) 应用程序中有一个登录模块。这里验证了用户名和密码,并且只有当密码匹配时,用户才能访问菜单屏幕,该屏幕进一步包含 rpg 程序以导航到后续模块。

我现在想要实现的是当用户被验证时,登录的用户名必须出现在每个屏幕上,或者更确切地说是每个被调用的 rpg 屏幕上。(即必须维护用户会话)请不要指导管理属性。这是来自低水平的工作点。

以下是关于用户的 PF:

键入用户类型。如何允许所有 pgms 访问已登录人员的变量?