はじめに
前回は、プログラム内でサービスプログラムが呼び出されるまでの流れについてご紹介しました。
今回は、サービスプログラムの作成方法についてご紹介します。
この記事は、プログラム開発をする上で欠かせないサービスプログラムの、一から学習した記録をシリーズに分けてご紹介しています。
サブプロシージャーの定義
まず、サブプロシージャーの定義のため、主に以下を記述します。
- プロトタイプ
- プロシージャーの開始
- プロシージャー・インターフェース
- 処理に必要な変数等
- 演算仕様書(実行したい処理)
- プロシージャーの終了
1.プロトタイプ
D BLG0006R_GET_HNM...
D PR 62
D IN_HNC 9S 0 VALUE 品名コード
2.プロシージャーの開始
P BLG0006R_GET_HNM...
P B EXPORT
3.プロシージャー・インターフェース
D BLG0006R_GET_HNM...
D PI 62
D IN_HNC 9S 0 VALUE 品名コード
4.処理に必要な変数等
D OUT_HNM S 62 品名
5.演算仕様書
C B6KEY1 KLIST
C KFLD K@6HNC
C *LIKE DEFINE BG06HNC K@6HNC
C*
C Z-ADD IN_HNC K@6HNC 品名コード
C B6KEY1 CHAIN(N) BLG0006R1
C IF %FOUND
C MOVEL(P) BG06HNM OUT_HNM
C ELSE
C MOVEL(P) *BLANK OUT_HNM
C ENDIF
C*
C RETURN OUT_HNM 品名
6.プロシージャーの終了
P E
エクスポートリストの作成
次に、エクスポートリストに前項で作成したプロシージャーを記述します。
STRPGMEXP
EXPORT SYMBOL('BLG0006R_GET_HNM')
ENDPGMEXP
モジュール&サービスプログラムの作成
最後に「サブプロシージャーの定義」の際に作成した RPGLE のモジュールの作成CRTRPGMOD
とサービスプログラムの作成CRTSRVPGM
を実行します。
おわりに
今回はサービスプログラムの作成方法についてご紹介しました。
最後までお読み頂きありがとうございます。
関連した投稿
サービスプログラムを作成できるようになるまで(1)_サービスプログラムの前提
サービスプログラムを作成できるようになるまで(2)_サービスプログラムが実行される流れ
サービスプログラムを作成できるようになるまで(4)_サービスプログラムの実行