1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

watsonx.aiの生成AIを使ってIBM i アプリの保守が可能か(ほんの少し)検証してみる ⑦命令、試行の入力文を業務記述を目指してみる

Last updated at Posted at 2024-05-01

検証⑥の続きです。
これまで①~⑥では、下記のように修正する変数名を明示指定して修正をさせていたました。この意味でストリングサーチして置換する、という作業をさせていたと理解しています。

image.png

今回は、RPG(ILE RPG、RPGⅢ)の修正条件をより業務寄りで記述して試してみたいと思います。

テスト1 : '消費税率を修正する' のように指定してみる

今回は以下のように指定してみました。
命令:RPGのソースを読み込んで指示通りにプログラムを修正する。
例:以下のRPGから消費税計算を探し出し、消費税を1.05に修正する。
消費税は変数=KEISUで与えられている。

image.png

テスト結果

下記のように消費税率の変数として指定したKEISUを探し出し正しく修正されました。
image.png

テスト2 : 消費税の変数名を2つ指定してみる。

下記のように変更したい変数を2つ指定してみました。うち1つ(ZEI)は実際にはプログラムソース上で使われていないものです。(棚卸ツールなどで消費税の計算フィールド名が全てわかっている、という状況を想定したケース)
例に以下を指定
消費税は変数=KEISU、または変数=ZEI で与えられている。
image.png

結果は省略しますが、テスト1と同様に正しく修正されました。

テスト3 : テスト2の例を変更してみる。

下記のように例で指示した変数名2つの順番を入れ替えてみました。
image.png

すると、、変数名もKEISUからZEIに置換されてしまいました・・
image.png
指示文が適切でないようです・・

テスト4 : テスト3の変数名2つの例への入力値を修正

guriguriさんコメントのリンクと下記の記事を参考に修正してみました。
https://qiita.com/yanagih/items/3d1b081f46799072df80

下記のように入力と出力の例に入力してみました。
image.png
※ZEIとKEISUを1行目・2行目逆にしても同じ結果になりました。
結果、正常にKEISUが修正されました!
image.png

他のパターンもいろいろ試してみたいと思います。

使用したRPGソース(RPGⅢ)当シリーズ⑤で使用したソースと同一です。

 H            Y
 F* IPH110 *
 FIPH110S CF  E                    WORKSTN
 FTOKMSL01IF  E           K        DISK
 C                     DO   *HIVAL
 C*PANEL01の表示
 C                     EXFMTPANEL01
 C           *IN03     IFEQ '1'
 C                     SETON                     LR
 C                     RETRN
 C                     END
 C*得意先マスターの読み取り
 C           S1TOKB    CHAINTOKMSL01             30
 C           *IN30     IFEQ '0'
 C*画面フィールドセット
 C                     MOVELTKNAKJ    S2NAKJ
 C                     MOVELTKADR1    S2ADR1
 C                     MOVELTKADR2    S2ADR2
 C                     MOVELTKTIKU    S2TIKU
 C                     MOVELTKPOST    S2POST
 C                     MOVELTKGEND    S2GEND
 C                     MOVELTKUZAN    S2UZAN
 C*係数計算
 C           KEISU     MULT 1.10      KEISU
 C           TKGEND    MULT KEISU     TKGEND
 C*
 C*差額計算
 C           TKGEND    SUB  TKUZAN    S2GAKU
 C*
 C*PANEL02の表示
 C                     SETOF                     30
 C                     WRITEPANEL01
 C                     EXFMTPANEL02
 C           *IN03     IFEQ '1'
 C                     SETON                     LR
 C                     RETRN
 C                     ENDIF
 C*
 C                     ENDIF
 C                     ENDDO                        
1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?