8.6.2 出力フィールドの表示を変更する
ここでは,APで出力フィールドを表示する場合のコーディング例について説明します。
出力フィールドでは,動的変更を利用して,APで文字色や書式などを指定できます。
ドローで出力フィールドのダイアログの「動的変更(APから表示属性を変更する)」を選択すると,動的変更を利用して,文字色,文字の書体,文字の強調,網掛けなどをAPで指定できます。APで指定しない場合,出力フィールドボックスダイアログで指定した属性が表示されます。
文字色と文字の書体を変更する場合の出力フィールドの表示例を次の図に示します。
出力フィールドのデータとして,「伝票番号」,「顧客名」,「住所」,「注文数」を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);