SmartPad4i(Cobos4i)アプリケーションでは、HTMLのimgタグに設定されたsrc属性のファイル名をRPG側から指定して置換表示することができます。
SmartPad4i(Cobos4i)アプリケーションでは動的に画像を変更して表示することが可能です。
SmartPad4i(Cobos4i)でのIMGタグの設定
SmartPad4i(Cobos4i)で画像を使用する場合には、HTML側でimgタグを使用します。
imgタグにid属性を設定後、DesignerでHTMLを読込んで属性の設定を行います。
例えば、以下の画像のように、HTML上にレコード毎に異なる画像を表示する方法を例として説明します。
HTMLのタグ定義
「間取り」で表示している画像は、HTMLでは以下のように定義しています。
例) HTMLタグ
<img src="images/jacitr/SAMPLE.JPG" style="width: 465px;" id="JMLN1">
src属性には、画像が配置されているディレクトリのパスを定義しておきます。
/images/jacitr/****
Designerの設定
Designerの設定では、id属性 JMLN1 の定義で「IBMi Type」をAlpha 、「Usage」をOutputに設定します。
「Usage」をOutputに設定すると、IBMi側にはOUTPUT用のフィールド OJMLN1 が定義されます。
IBMiプログラム(RPG)側の設定
IBMiプログラムでは、OUTPUT用のフィールド OJMLN1に画像ファイル名を設定します。
例) RPG
0392.00 C HOMLN1 IFEQ *BLANK
0393.00 C MOVEL'NO2.JPG' OJMLN1
0394.00 C ELSE
0395.00 C MOVELHOMLN1 OJMLN1
0396.00 C ENDIF
ファイルのLHOMLN1フィールドには、画像ファイル名が格納されており、OUTPUT用のフィールド OJMLN1に画像ファイル名が設定されます。
出力結果
OUTPUT用のフィールド OJMLN1に「BK0017A.JPG」が設定された場合、HTMLタグは以下のようにファイル名のみが書き換わります。
例) テンプレートのHTML
<img src="images/jacitr/SAMPLE.JPG" style="width: 465px;" id="JMLN1">
例) RPGプログラムからの指定後
<img src="images/jacitr/BK0017A.JPG" style="width: 465px;" id="JMLN1">
ファイル名のみが書き換わりますので、別サーバーの画像ファイルを表示するようなことも可能です。
*****.JPGの箇所のみがIBMiプログラムから置換されます。
<img src="https://www.migaro.co.jp/img/*****.JPG" style="width: 465px;" id="JMLN1">
以上で、今回のTipsは終了です。