画面・帳票サポートシステム XMAP3 プログラミングガイド


8.6.2 出力フィールドの表示を変更する

ここでは,APで出力フィールドを表示する場合のコーディング例について説明します。

出力フィールドでは,動的変更を利用して,APで文字色や書式などを指定できます。

ドローで出力フィールドのダイアログの「動的変更(APから表示属性を変更する)」を選択すると,動的変更を利用して,文字色,文字の書体,文字の強調,網掛けなどをAPで指定できます。APで指定しない場合,出力フィールドボックスダイアログで指定した属性が表示されます。

文字色と文字の書体を変更する場合の出力フィールドの表示例を次の図に示します。

図8‒10 出力フィールドの表示(Java)

[図データ]

出力フィールドのデータとして,「伝票番号」,「顧客名」,「住所」,「注文数」をAPで代入します。「伝票番号」の値である「D0012345」の制御項目に太字を表示する修飾名「BL」を,「注文数」の値である「300」の制御項目に赤字を表示する修飾名「RE」を代入します。APを実行すると,「伝票番号」の文字の書体を「太字」で,「注文数」の文字色を赤で出力されます。

定義した論理マップと動的変更テーブルをJava言語用ツールで変換すると,出力データ用XML文書と動的変更用XML文書が生成されます。XML文書に文字配列と表示色を設定するAPのコーディング例を次に示します。

XML文書に文字配列と表示色を設定するAPのコーディング例
ModTbl modTbl;
LogicalMap logicalMapO;
 : //動的変更用クラスのインスタンスをmodTblに代入する
 : //出力データ用クラスのインスタンスをlogicalMapOに代入する
 
logicalMapO.setDataString("MAP001_FIELD0001_O", "D0012345");
logicalMapO.setDataString("MAP001_FIELD0002_O", "○×港南電器");
logicalMapO.setDataString("MAP001_FIELD0003_O", "□△区1-1");
logicalMapO.setDataString("MAP001_FIELD0004_O", "300");
byte[] inBl = modTbl.getDataByteArray("xmap_in_bl");
logicalMapO.setDataByteArray("MAP001_FIELD0001_A", inBl);
byte[] inAttr1 = modTbl.getDataByteArray("xmap_in_attr1");
logicalMapO.setDataByteArray("MAP001_FIELD0004_A", inAttr1);