- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试获得 RPGLE 和 IBM i 方面的经验并不断学习。由于野外的大多数代码似乎都是经典的位置代码,我会坚持使用它来适应它。所以我宁愿不使用/free —/end-free 的东西。顺便说一句,我在只有 V4R5 的旧 9401-150 上执行此操作。
TL;DR:如何从外部调用 ILE 程序(具有自己的 MAIN 部分,即它本身是独立的)在其自己的激活组( *NEW
)中将返回值返回给被调用者?
我已经准备好一个子文件程序并且运行良好。我想调用一个外部程序来处理子文件中 OPT 值的请求。所以我在被调用者的 D-Specs 中定义了一个 PR:
DROEDETPG PR EXTPGM('ROEDETPG')
DC_MODE LIKE(MODE)
DC_TYP LIKE(TYP)
C SELECT
C OPT WHENEQ '2'
C MOVE 'CHG' MODE
C CALLP ROEDETPG(MODE:TYP)
C ENDSL
C *ENTRY PLIST
C PARM C_MODE 3
C PARM C_TYP 16
CHAIN(E)
在外部程序中获取
%STATUS
来自
CHAIN
之后的 PF .其状态值为 1218,我想将此值返回给调用程序,因此它可能会使用消息行告诉用户,该记录目前已锁定且不可用。
mktemp()
等效,但我可以在 QTEMP 中创建具有相同名称的文件。这适用于文件类型
*DTAARA
.不幸的是(意料之中?)这个文件只对调用程序可见。也许可以用
SENDERID(*YES)
创建一个全局键控 *DTAQ但也许这是矫枉过正?
CALLP
?嗯,我还在学习。我决定将子程序中的内容移出主源,以结束子程序执行操作时涉及的状态更改的持续麻烦。当 SR 执行 READ 时,数据库指针指向另一条记录,这在继续子文件内容时会带来大量不稳定的行为。
SETLL
回到我之前的状态。我希望这会更容易,但也许我在 ile rpg 方面还是个新手。
最佳答案
因为 ILE 中的参数是通过引用传递的,所以从外部程序获取一个或多个返回值的一种简单方法是在原型(prototype)和调用的程序参数中定义它们。来自其他编程环境,这对我来说有点奇怪,因为我被洗脑成 BYVAL
不是 BYREF
这么多年了,但实际上这只是一个函数的返回值,一个堆栈上的值,它被传递回调用者。某些语言会将这些定义为 out
参数,但它们实际上是 inout
你像对待 out
一样对待.
DROEDETPG PR EXTPGM('ROEDETPG')
DC_MODE LIKE(MODE)
DC_TYP LIKE(TYP)
DC_ERR 7
C *ENTRY PLIST
C PARM C_MODE 3
C PARM C_TYP 16
C PARM C_ERR 7
关于ibm-midrange - 从被调用程序获取返回值返回到 rpgle 中的主程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51383788/
我希望我可以使用 RPGLe 做一些反射(reflection)。 通过反射(reflection),我的意思是: “在运行时确定对象能力的过程或机制。” 想象一下你有这个数据结构: D DS_Fo
希望可以有人帮帮我。我在命令窗口中看不到我的 RPGLE 程序的 DSPLY 'some text' 输出。我正在使用 IBM Websphere development studio client
我一直在阅读 LIKEDS , TEMPLATE , 和 BASED试图确定是否有一种方法可以创建具有继承的数据结构模板(原型(prototype))。我有: D costs DS
我有这个相对简单的 rpg 程序,其中行 exec sql workKeySocWorkCodesCur for 500 rows into :childWorkKeyArray; 执行非常缓慢。每次
我正在生产一些使用 %alloc 的 RPGLE 代码和 dealloc来分配内存。程序员应该能够确保不会导致内存泄漏,但我担心如果他们不这样做会发生什么。 我的问题是:如果程序员搞砸了并且存在内存泄
当我想在 RPGLE 程序中使用整数时,我应该选择什么数据类型?我说的是一个不对应于数据库中任何字段的整数,只是一个普通的通用整数 - 相当于 int在 java 。 最佳答案 这是 ILE RPG
在标准 RPGLE 中,我的代码如下所示。此语句将逗号在 Data 中的位置存储在 ComArr 数组中。 C ',' Scan Data Co
我对RPGLE了解不多。我正在尝试解决给我的这个小练习。我从来没有做过或见过使用小数的练习。我想获得 7 个值的百分比。所以,我想做如下计算。 例如在 RPGLE 中。 DTotal
我的程序,PKGDAYMONR 有控制选项: ctl-opt Main( CheckDailyPackages ) CheckDailyPackages 程序具有以下 PI: dcl-pi *n Ex
假设您有以下代码: FOR I = 1 to 10; // some code here ENDFOR; 你会如何跳过一个元素?目前使用 GOTO 可行,但我不喜欢该解决方案。例如: FOR
我在 RPG 中编写了一个监控程序,用于检查 fax/400 是否正常运行。 现在我希望这个程序每 15 分钟检查一次。 我没有在作业调度程序中每 15 分钟放置一个作业(这很难管理),而是使用 DL
我有一个变量定义为: D content 1280A CONST 我需要找到 " , & , ' , 字符并将它们替换为: " , & ,
我知道如何用 JAVA 和 RPGLE 编写代码。我遇到的问题是将两者联系起来。我希望能够使用 JAVA GUI 作为输入并将参数作为值传递给 RPGLE 模块,然后将这些模块保存到文件中。就像我说过
当我从Java运行存储过程并调用简单的RPGLE程序时出现错误 如果我从DB2(系统I导航器)运行SP成功,或者如果我运行rpgle程序为as400,则返回ok,但是当从Java运行SP时,第一次执行
我正在尝试想出一个好的方法来处理带有多个子过程的 RPGLE 程序中的错误。 dcl-proc getWorkKeyString; dcl-pi *n ind ; workKeyArra
谁能提供这些有趣的用法示例? 最佳答案 举个实际的例子,这个可以在实现回调的时候用到。常见的回调可以在 C 语言的 qsort() 函数中找到。是的,您可以从 ILERPG 中调用它。 qsort()
我正在尝试获得 RPGLE 和 IBM i 方面的经验并不断学习。由于野外的大多数代码似乎都是经典的位置代码,我会坚持使用它来适应它。所以我宁愿不使用/free —/end-free 的东西。顺便说一
我有一个 iSeries 到 .Net 紧凑型框架项目。它包括公开为 Web 服务的 rgple 程序和使用 Web 服务的 Windows 移动应用程序。每个 iSeries 程序都有一个特定的 W
我开始使用 RPGLE,我正在尝试确定是否有任何方法可以只为我的服务程序中的过程定义一次参数。我知道我可以将原型(prototype)放在一个副本成员中(我已经这样做了),但是我仍然必须将基本相同的代
我想将 RPGLE 与 String.format 接口(interface),它接受可变长度参数或数组,我还想传递数字和字符串,所以我将使用像 "hello %s, you are %d 岁”。有人
我是一名优秀的程序员,十分优秀!