ここでのユーザアプリケーションは、以下の条件を想定した例となっています。
複数の帳票を使用し、マルチフォーム出力する
Web手元印刷型でPDFファイルを帳票管理サーバに出力する
帳票定義情報は、帳票管理サーバに配置してあるものを使用する
●使用する入力データ
以下のように記述した入力データ(データファイル)を使用します。
uriage | ナカハラ電気 | 20040521 | 03101 | 005 | 0020 | カラーテレビ | 3 | 120000 uriage | ナカハラ電気 | 20040521 | 03101 | 005 | 0022 | カラオケセット | 1 | 82000 uriage | ナカハラ電気 | 20040521 | 03101 | 005 | 0100 | 電気掃除機 | 2 | 23000 syuttai | XXX事業部 syuttai | 385945 | 富士 花子 | 1 | 6 | 830 | 1715 | 8 | 0 | 遠地出張 syuttai | 385945 | 富士 花子 | 1 | 7 | 830 | 1715 | 8 | 0 | 遠地出張 syuttai | 385945 | 富士 花子 | 1 | 11 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 1 | 17 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 1 | 20 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 1 | 25 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 1 | 28 | 830 | 1715 | 8 | 0 | 遠地出張 syuttai | 385945 | 富士 花子 | 1 | 29 | 830 | 1715 | 8 | 0 | 遠地出張 syuttai | 385945 | 富士 花子 | 1 | 30 | 830 | 1715 | 8 | 0 | 遠地出張 syuttai | 385945 | 富士 花子 | 2 | 2 | 930 | 1715 | 7 | 0 | syuttai | 385945 | 富士 花子 | 2 | 7 | 830 | 1715 | 8 | 0 | syuttai | 385945 | 富士 花子 | 2 | 10 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 2 | 15 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 2 | 20 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 2 | 23 | 830 | 2130 | 8 | 3.5 | syuttai | 385945 | 富士 花子 | 2 | 28 | 830 | 1715 | 0 | 0 |
●指定値
ユーザアプリケーションで指定する値は以下のとおりです。
条件 | 使用するクラス/ | 指定する値 |
|---|---|---|
論理あて先 | PrintPropertiesクラス/ | 「ld1」 |
帳票格納ディレクトリ | FormsFileクラスのコンストラクタ | 帳票管理サーバの |
帳票名 | FormsFileクラス/ | 「uriage」、「syuttai」 |
データファイル名 | FormsFileクラス/ | 帳票管理サーバの |
入力データの文字コード系 | 入力データの文字コード系を示すフィールド定数 | |
実行環境の文字コード系 | FormsFileクラス/ | 実行環境の文字コード系を示すフィールド定数 |
マルチフォーム出力指定 | FormsFileクラス/ | GRPOUT_GRP(マルチフォーム出力する) |
マルチフォーム用帳票名データ区切り文字種別 | FormsFileクラス/ | 「DELIMIT_ANY」 |
マルチフォーム用帳票名データ区切り文字 | FormsFileクラス/ | 「 | 」(バーティカルバー) |
出力するPDFファイル名 | PrintPropertiesクラス/ | 帳票管理サーバの |
以下に、上記の条件を満たすユーザアプリケーションの記述例について示します。
import com.fujitsu.systemwalker.outputassist.connector.*;
:
:
// FormsFileオブジェクトを設定します
FormsFile formfile = new FormsFile( "帳票管理サーバの帳票格納ディレクトリ" );
formfile.setDataFile( "入力データのデータファイル名のフルパス" ,
FormBase.入力データの文字コード系を示すフィールド定数 );
(*1)
formfile.setFileType( FormBase.実行環境の文字コード系を示すフィールド定数 );
(*2)
formfile.setGrpOut( FormsFile.GRPOUT_GRP );
formfile.setLcForm( "uriage;syuttai" );
formfile.setGrpDelimitMode( FormsFile.DELIMIT_ANY );
formfile.setGrpDelimit( "|" );
// PrintProperties の設定をします
PrintProperties prop = new PrintProperties();
prop.setProperty( PrintProperties.ID_KEEPPDF,
"帳票管理サーバのPDFファイル名のフルパス" );
// List Managerで帳票配信・出力する場合、論理あて先を指定します
prop.setProperty( PrintProperties.ID_LM_LOGICALDESTINATION, "ld1" );
// 帳票を出力します
PrintForm pform = new PrintForm();
pform.PrintOut( formfile, prop );
// 資源を解放します
formfile.cleanup();
*1:
入力データの文字コード系を示すフィールド定数に指定できる値については、以下を参照してください。
⇒“4.7.3 FormsFileクラス”
*2:
実行環境の文字コード系を示すフィールド定数に指定できる値については、以下を参照してください。
⇒“4.7.3 FormsFileクラス”
ポイント
マルチフォーム出力する場合、setLcFormメソッドで指定した帳票名のうち、先頭に指定した帳票名の帳票で指定された帳票出力に関する情報が有効になります。