掲示板

スレッド一覧 > 記事閲覧
[7] ILERPGで便利になったことを教えて!
日時: 2011/08/06 22:21
名前: 管理人 ID:rS6oMbPQ メールを送信する

最近は、RPGと言えばILERPGですね。
たしかに便利になったと思います。
どの辺が便利になったか考えてみたい。

あなたの考えを教えてください。
メンテ

Page: 1 | 全部表示 スレッド一覧 新規スレッド作成

SUBST ( No.1 )
日時: 2011/08/06 22:26
名前: 管理人 ID:rS6oMbPQ メールを送信する

AS/400への道の管理人です。

配列の使い方がとても便利になったのではないでしょうか?

たとえば、「W@MOJI  A(10)」と言う項目があったとします。

その時、W@MOJIの2桁目から3桁を利用したい時、RPGVではDSで再定義しなければなりませんでした。
それが、ILERPGではSUBSTという命令文で簡単に処理できます。



RPGVの時

I   DS
I       1 10 W@MOJI
I       2  4 W@MOJIX


C  W@MOJIX  IFEQ  ’123’
C           MOVEL W@MOJIX   WKCODE
C           ENDIF



ILERPGの時

C      IF    %SUBST(W@MOJI:2:3)=’123’
C 3    SUBST W@MOJI:2  WKCODE
C      ENDIF


メンテ
EVAL ( No.2 )
日時: 2011/08/06 22:28
名前: 管理人 ID:rS6oMbPQ メールを送信する

EVALが使えるのも便利ですね!

Z-ADD   *ZERO    W@LEN1   5 0
Z-ADD   *ZERO    W@LEN2   5 0
Z-ADD   *ZERO    W@LEN3   5 0
MOVEL(P) 'ABCD'    W@WORK1  30
MOVEL(P) 'EFGH'    W@WORK2  30
MOVEL(P) *BLANK    W@WORK3  30
EVAL   W@WORK3 = %TRIM(W@WORK1) + W@WORK2
EVAL   W@LEN1  = %LEN(%TRIM(W@WORK1))
EVAL   W@LEN2  = %LEN(%TRIM(W@WORK2))
EVAL   W@LEN3  = %LEN(%TRIM(W@WORK3))

以上の計算式が実行されると、
@W@WORK3には'ABCDEFGH   'と言う文字列が代入されています。
AW@LEN1には4という数値が代入されています。
BW@LEN2には4という数値が代入されています。
CW@LEN3には8という数値が代入されています。

メンテ
SUBST ( No.3 )
日時: 2011/08/06 22:31
名前: 管理人 ID:rS6oMbPQ メールを送信する

このSUBST命令を使えるのは大変便利ですね。

EVAL命令と併用することでC言語のような、文字列処理が可能です。


EVAL W@MOJI = %SUBST(AAA:1:3) + %SUBST(BBB:1:2)


メンテ
SUBDUR ( No.4 )
日時: 2011/08/06 22:32
名前: 管理人 ID:rS6oMbPQ メールを送信する

SUBDURの命令も便利です。

これは期間の減算を行います。


任意の日付(W@DATE1)の前日を求める方法。


D  W@DATE1  S  D
D  W@DATE2  S  D
(内部データのタイプはDを指定)

C  W@DATE1  SUBDUR  1:*D  W@DATE2


上記の場合、W@DATE1に20060301が入力されていたとき、W@DATE2には20060228がセットされる。

メンテ
いろいろ ( No.5 )
日時: 2013/01/11 18:58
名前: コウ ID:.nuThAD2

それは、いろいろありますよ。
メンテ

Page: 1 | 全部表示 スレッド一覧 新規スレッド作成
題名 タイトルは次の画面で設定してください
名前
E-Mail 入力時 メールを送信する からメールを受け取れます
URL
パスワード (記事メンテ時に使用)
投稿キー (投稿時 投稿キー を入力してください)
コメント

   クッキー保存






















- designed by s-hoshino.com -
Copyright © kobe-ssc.com All rights reserved