PEXA Supportについて

PEXAプロパティ

トランスレータ

印刷フレームワーク

AETフレームワーク

ワークフロー

動的フォーム

変換フレームワーク

テンプレートエンジン

カレンダー

タスクスケジューラー

このドキュメントについて

このドキュメントは、PEXAプリントサービスのインターフェース仕様ガイドです。


プリントサービスとのインターフェース

プリントサービスに対しては、2種類のアクセスのインターフェースが準備されています。

  1. 直接プリントファサードを呼び出す
  2. サービスプロセスのPrint機能を利用して呼び出す


直接プリントファサードを呼び出す

PEXAPrintServiceは基本的に以下のように呼び出します。

ServiceSession ss = new ServiceSessionBase();
ss.setSessionValue(new Key("PrintData"),list);
Object o = initc.lookup("PrintServiceFacadeSession");
PrintServiceFacadeSessionHome home = (PrintServiceFacadeSessionHome) 
				narrow(o, PrintServiceFacadeSessionHome.class);
PrintServiceFacadeSession service = (PrintServiceFacadeSession) narrow(home.create(), PrintServiceFacadeSession.class);
Map ctlMap = new HashMap();
ctlMap.put(PrintControlInfo.LOCAL_PRINTER_KEY,Boolean.TRUE);
Map retMap = service.doPrint(new Key(printFormID),ss,ctlMap);
例:test.pexa.share.util.print. TestFinderToPrint.java
IMEGクライアントでは、PrintServiceを呼び出し、ローカルプリンタに印刷するためのActiveXを起動するブラウザ用のクラスを実装しています。
ServiceSession ss = new ServiceSessionBase();
ss.setSessionValue(new Key("PrintData"),list);
Map ctlMap = new HashMap();
ctlMap.put(SVFPrintServiceConstans.KEY_OutputType,
				SVFPrintServiceConstans.OutputType_PreviewPrint); 
ctlMap.put(PrintControlInfo.LOCAL_PRINTER_KEY,Boolean.TRUE);
Print prn = new imeg.client.print.Print.Print();
Context ctx = JNDIFactory.getInstance().getInitialContext();
Map retMap = prn.print(applet.getAppletContext(),ctx,new Key("testsub"),ss, ctlMap);
例:test.imeg.client.print. TestPrintClientTestbed2.java


PrintServiceからの戻り値

PEXAPrintServiceは完了時、Map形式で完了状態を戻します。

Map retMap = service.doPrint(new Key(printFormID),ss,ctlMap);
Mapの内容は、pexa.share.util.printパッケージのPrintControlInfoインターフェースで規定した情報を持ちます。
ocalPrinter使用時の例
th>th>th>tr>
Key名値の例(文字列) 意味
PrintControlInfo.PRINTER_NAME_KEYPDFプリンタ名(ローカルプリンタ時はファイルタイプ)
PrintControlInfo.PRINT_NAME_KEYPR_ACPY_XXXPrintフォームID
PrintControlInfo.PRINT_SERVLET_KEYprintDirectローカル直接プリントサブレット名
PrintControlInfo.PRINT_OUTPUT_TYPE_KEYPDFプリント出力形式名
PrintControlInfo.LOCAL_PRINTER_KEYtrueローカルプリント指定
PrintControlInfo.FORM_FILE_PATHPR_SLSP_203_3.frm帳票フォームファイル名
PrintControlInfo.HTTP_PRINT_SERVLET_KEY http://192.168.100.136:8088プリントファイル格納サーバー・ポート名
PrintControlInfo.HTTP_PRINT_SPOOL_KEYprint/svf_spool/プリントファイル格納ディレクトリ
PrintControlInfo.SPOOL_FILE_KEYPR_ACPY_XXX.1145587944265.PDFプリントファイル名
PrintControlInfo.PRINT_OPTION_KEYreportWriteオプションパラメータ
PrintControlInfo.OUTPUT_FILE_SIZE1234プリントファイルデータ長(整数)
PrintControlInfo.DOWNLOAD_URLhttp://192.168.100.136:8088/print/
svf_spool/PR_ACPY_XXX.1145587944265.PDF
ダウンロード用のURL


ServiceプロセスからのPrintServiceの呼び出し

サービス内のプロセスでPrintコマンドを用いると、以下のサービススクリプトで可能となります。

(service
	service_name PR_TEST01
	return_keys	プリント結果
	{process
		(帳票データ取得
			format_type	search
			(search
				source		予定原価申請_横型明細データ
				session_value	予定原価申請_横型明細
				zero_is_null	true
			)
		)
		(印刷実行
			format_type print
			(print
				sheet		PR_ACPY_XXX
				print_type	PDF
				session_value	印刷日時,予定原価申請_横型明細,販売会社
				)
			)
		)
	}
)
印刷実行後に結果は、サービスセッションキー“printReturn”にセットされてきます。
内容は、直接呼出しと同じで、Map形式で、結果が返ってきます。


printプロセスのパラメータ

Printプロセスは以下のパラメータを持ちます。

  1. provier宣言(0|1)
  2. sheet宣言(1)
  3. request_host宣言(0|1)
  4. printer宣言(0|1)
  5. print_type属性(1)
  6. session_value宣言(0|1)

provier宣言

印刷サブシステムを指定します。
デフォルトはプリントサービス定義ファイルのprintTypenの内容が使用されます。
キー:「provider」固定
形式:Key・値
記述例:SVFを指定する(IMEGではsvf,test,test_localをサポート)
provider svf
svf:翼システムのSVF帳票システム
test:翼システムのSVFのエミュレータ(印刷フィールドと印刷内容をServerログに表示する)
test_local:翼システムのSVFのエミュレータ(ローカルJBOSSで実行)


sheet宣言

帳票名または帳票キー名を設定します。
キー:「sheet」固定
形式:Key・値
記述例 申請書一覧のフォーマットで印刷を行います。
sheet 申請書一覧


request_host宣言

印刷を要求しているホスト名またはIPアドレスを設定します。(IMEGでは未使用)
キー:「request_host」(固定|オプション)
記述例:
request_host 192.168.100.1
request_host @ログイン情報/ホストアドレス


printer宣言

出力先のプリンタを指定します。(IMEGでは未使用)


print_type属性

印刷の形態を指定します。
キー:「print_type」固定
区分値:
local/remote/PDF(ローカルプリンタ出力、リモートプリンタ出力、PDFダウンロード用ファイル出力)
記述例:
print_type PDF


session_value宣言

印刷対象データを保持するServiceSessionキー名を指定します。
キー:「session_value」(固定|オプション)
記述例:
session_value 印刷対象サービスセッションキー名,…
印刷データは、Listで指定されたUpdatableで構成されているものとするが、
それ以外のString等の単一項目を示すサービスセッションを指定した場合は、
全ページにその値がセットされるものとして扱います。



更新情報

  • 最終更新者 : $Author: morishita $
  • 最終更新日時 : $Date:: 2008-10-30 12:05:11 #$
  • バージョン : $Revision: 2589 $



Copyright © 2006, Atrris Corporation