Difference between RPG/400 and RPGLE?

时间:2015-10-08 ┊ 阅读:3,653 次 ┊ 标签: 开发 , 编程 , 经验 , 分享

This has been covered many times in these fora. In a nutshell RPGLE is synonymous with RPG IV. Nearly all RPG/400 programs may be converted to RPG IV by using the CVTRPGSRC command, so all your RPG/400 knowledge is still germaine. The colums are different. For one thing they are wider to accomodate longer field names. There are more opcodes (many with the same functionality as previous opcodes), and there are free form IF WHEN DO and EVAL opcodes. The ability to use date data types and date math is one major difference. RPG IV code may be compiled into modules which is an intermediate stage before all the modules are bound into a program. RPG IV code may also be compiled into a program using the CRTBNDRPG command. I suggest you check out the IBM manuals for ILE concepts and RPG IV reference and user guides before going any further.

There are a lot of differences between the 2 versions of RPG, here are a few examples :
RPGILE runs in the ILE (Integrated Language Environment) instead of the OPM (Original Program Model) environment.
RPGILE supports longer file/field names, also prefixes for field names.
RPGILE supports BIFs (Built In Functions).
RPGILE allows use of service programs and modules.
RPGILE allows free format RPG code.
RPGILE has enhanced support for use of other languages such as ILE/C.

The list goes on and on, maybe someone has some nice links to an overview of the differences.

RPG400 is based on RPG III and RPGLE relies on RPG IV wich offers those features metioned above.

RPG IV and ILE is not exactly the same. You can be programming in RPG IV by using all those features like Built-in Functions, free format, longer names, prefix for field names, qualified data structures, and still the environment is OPM not ILE.

ILE Means static call, the programs get all information about the called program at compile time. It’s the binding process. Then, at run time the call is more efficient than the old method of dynamic call used by OPM. OPM runs in the Default Activation Group and ILE programs in a different one that could be *New, QILE (generic Activation Group for ILE), or whatever the name you want.

Activation Groups are sub-environment within a job.

As usual we don’t know enough about why the question was asked.

RPG/400 is a mature product.
All RPG/400 programs will run on a current 400, they can be edited an maintained as RPG/400, edited, and compiled. The language works and will continue to work.

RPG/400 code can be converted to RPG IV code with a single command.
Today, RPG IV code can be written in two formats, fixed column based format which is like RPG/400 and a free format layout. Since it’s inception RPG IV has had the addition of a lot of new features. Some RPG/400 code cannot be translated into Free format but free and fixed format code can exist in a single file.

As described above, RPG IV provides ILE capabilities which allow it to use prototyped calls, objects built from multiple modules and service programs.

文章评论

添加新评论

温馨提醒:如果您是第一次在本站留言,需要审核后才能显示哦!

相关文章

Whatsapp只能查看最近三天的聊天记录了怎么办?

Whatsapp只能查看最近三天的聊天记录了怎么办?

今天突然发现电脑上的WhatsApp只能查看最近3天的聊天记录了,显示要查看3天前的记录请到手机上查看。很是吃惊,以前一直是所有记录都自动同步到电脑版的啊,不论换电脑了还是换手机了,聊天记录从来没丢过。 查询一翻也没有找出来原因,怎么也同步不过去。 电脑版app重新安装了,也不行。 有个方法说...
阅读全文>>
ValueError: Error getting directory

ValueError: Error getting directory

ssl证书过期了 明明自动renew的 然后看log已经好久没更新成功了 查半天是当前server不信任远程连接 只能自己改代码 报错: 21-12-17 13:01:11 Generate CSR...amkevin.csr amkevin.csr generated. /home/www...
阅读全文>>
网页路径中的'.'和'..'还有'./'和'../'区别

网页路径中的'.'和'..'还有'./'和'../'区别

. 表示当前目录 .. 表示当前目录的上一级目录。 ./表示当前目录下的某个文件或文件夹,视后面跟着的名字而定 ../表示当前目录上一级目录的文件或文件夹,视后面跟着的名字而定。 例如: 文件夹 a 下面有 文件夹b c 和文件 d。 文件夹b下面有e.php 和文件f。 则e中的 . 表示...
阅读全文>>
Introduction to ILE RPG Activation Groups

Introduction to ILE RPG Activation Groups

Learn how activation groups can help your ILE RPG programs run more efficiently, how to specify the type of group to use, and closing and reclaimin...
阅读全文>>
popup.js怎么和content.js通信?[JQuery]

popup.js怎么和content.js通信?[JQuery]

这两天为了实现一个谷歌浏览器插件功能,研究了半天怎么让插件来改特定网页里的特定字段的值,而这个值又来自popup的网页预先设定,下一步实现动态加载,可以让更多组实现便利。 目的很简单,我们有一个list,需要填到网页的某个字段,当然是好几个,这些值是设定好的,网页系统我们没法改,input想...
阅读全文>>