rde utility developers kit - wingarc-support.comrde utility developers...
TRANSCRIPT
はじめに
RDE Uti l ity Developers KIT をご購入いただき、まことにありがとうございます。
RDE Uti l ity Developers KIT は 、 Report Director Enterprise サ ー バ の 「 Report
Director Enterprise ユーティリティ」の機能をユーザアプリケーションに組み込むための
ライブラリ製品です。Report Director Enterprise サーバへのログイン・ログアウト、スプ
ール文書情報の取得、サーバプリンタ情報の取得、印刷の実行・中断などの処理機
能を備えたアプリケーションの開発が可能となります。
本マニュアルでは、RDE Uti l ity Developers KIT を使用する上で必要な Java クラスラ
イブラリの設定方法、使用方法について掲載しています。
* 本マニュアルに記載されている会社名、商品名は各社の商標または登録商標です。
ii
1 製品概要 1
Ver.8.0 からの新機能 .................................................. ........................................... 5
動的コメントの出力... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
スプール済みのページ数の取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Ver.8.0 で仕様変更されたメソッド... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
ファイル構成 ......................................................... .................................................... 7
動作環境 ............................................................... ................................................... 7
2 セットアップ 8
クラスライブラリのセットアップ ................................................ ................................ 8
クラスライブラリ側オプション................................................. .................................. 8
データベースへの最大接続数について.............................................. .................. 11
バージョンの確認....................................................... ............................................. 11
3 サンプルプログラムの実行 12
準備 ............................................................. ........................................................... 13
グループとユーザの登録 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
文書のスプール ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
サンプルファイルのセット ................................................... .................................... 15
コンパイルの実行 ....................................................... ............................................ 16
プログラムの実行 ....................................................... ............................................ 16
サンプルプログラム ...................................................... .......................................... 19
ユーザ情報取得と、ユーザ情報の変更と更新 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
スプール文書情報の取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
ごみ箱からの文書の削除 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
サーバプリンタ情報の取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
スプール文書のサーバプリンタからの出力 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
動的コメント出力 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
プリンタキュー情報の取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
プリンタキュー優先順位の変更 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
サーバプリンタプロパティの変更... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
テスト印刷 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
プリンタの停止/再開 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
複数の接続先 RDE サーバの切り替え ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
サーバプリンタのステータス手動取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
停止文書の印刷先変更 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
ユーザパスワード有 効期限 の取得・ユーザパスワードの有 効期限 の警 告 状態を取得 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
ユーザパスワードの変更... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
データベース接続プーリングの解放 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
4 クラスライブラリの内容 41
階層ツリーとクラスの概要 ................................................... .................................. 41
iii
5 Web サービス版の使用 42
システム要件 ......................................................... ................................................. 42
Web サービス版 RDE UDK のセットアップ ......................................... ................. 43
API 利用の準備 ....................................................... .............................................. 44
セッションの利用 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
日付型フィールドの特殊フィールド... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
同期と非同期呼び出し ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
タイムアウト設定について ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
サンプルプログラム ...................................................... .......................................... 46
C#の場合 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
VisualBasic.Net の場合 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
API 関数 .......................................................... ....................................................... 49
ログイン関連 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
ログインする.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
ユーザ追加情報を指定してログインする .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
DB を指定する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
ログアウトする .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
ログイン状態を取得する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
ユーザ情報関連... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54
ユーザ情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
現在ログイン中のユーザ名を取得する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
ユーザパスワードを変更する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
ユーザ情報を更新する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
ユーザ定義カラム情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
プリンタ関連 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
プリンタ機種名一覧を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
ダウンロード可能なプリンタ機種名の一覧を取得する... . . . . . . . . . . . . . . . . . . . . . . 57
プリンタ機種のデフォルトプロパティを取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
サーバプリンタ名一覧を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
サーバプリンタ情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
サーバプリンタ情報一覧を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
サーバプリンタのステータスを取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
サーバプリンタのステータスを取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
サーバプリンタを停止する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
サーバプリンタを再開する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
サーバプリンタのプロパティを変更する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
文書関連 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
文書情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
文書情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
文書情報を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
文書管理番号を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
印刷を実行する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
コメントを指定して印刷を実行する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
印刷を実行する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
テスト印刷を実行する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
コメントを指定してテスト印刷を実行する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
テスト印刷を実行する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
印刷を停止する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
iv
印刷を停止する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
印刷を中断する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
印刷を中断する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
印刷を再開する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
印刷を再開する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
文書を削除する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
プリンタキュー文書情報一覧を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
プリンタキュー文書の優先順位を変更する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
プリンタキューの優先順位を変更する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
停止文書の印刷先を変更する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
印刷データを取得する... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
プリンタプロパティを指定して印刷データを取得する... . . . . . . . . . . . . . . . . . . . . . . . . 75
プリンタプロパティとコメントを指定して印刷データを取得する ... . . . . . . . 75
印刷データを生成し、ダウンロードするための PATH(URL)を取得する .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
指定プリンタプロパティで作成した印刷データを生成し、ダウンロードのための PATH(URL)を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
指定プリンタプロパティとコメントで作成した印刷データを生成し、ダウンロードのための PATH(URL)を取得する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
ゴミ箱関連 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
文書をゴミ箱へ移動する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
ゴミ箱から文書を復帰する ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
ゴミ箱を空にする .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
インタフェースクラス仕様 ................................................... ................................... 80
ユーザ情報クラス(userInfo)プロパティ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
文書抽出条件クラス(documentFilter)プロパティ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
サーバプリンタクラス(serverPrinter)プロパティ ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
印刷属性(printAttributes)プロパティ ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
文書クラス(document)プロパティ ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
プリンタキュー文書クラス(queueDocument)プロパティ ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83
ユーザ定義カラム情報(defineColumnInfo)プロパティ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
nameAndValue クラスプロパティ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85
文書項目番号 ......................................................... .............................................. 86
メソッド対応表 ........................................................ ................................................ 87
6 エラーコード 90
7 注意事項・制限事項 95
注意事項 ............................................................... ................................................. 95
制限事項 ............................................................... ................................................. 97
索引 索引-1
1 製品概要
1
1 製品概要
RDE Uti l ity Developers KIT(以下、「RDE UDK」)は、Report Director Enterprise(以下
「RDE」)サーバの「RDユーティリティ」の機能をユーザアプリケーションに組み込むためのライ
ブラリ製品です。RDEサーバへのログイン・ログアウト、スプール文書情報の取得、サーバプリ
ンタ情報の取得、印刷の実行・中断などの処理機能を備えたアプリケーションの開発が可
能となります。
RDE UDKには、Javaアプリケーションから利用するJava版とMicrosoft .Net Frameworkを
用いて開発されたアプリケーションより、Webサービス(SOAP1.2)経由で使用するWebサー
ビス版が用意されています。
<RDE UDK Java版の構成>
RDE Util ity Developers KIT ユーザーズ・マニュアル
2
<RDE UDK Webサービス版の構成>
RDE UDKを利用することにより、「RDユーティリティ」のつぎの処理機能を実装することがで
きます。
ログイン機能 RDEサーバへのログイン・ログアウト
ログインしているユーザの操作の確認
ユーザ情報の取得
ユーザ情報の更新
文書情報取得 スプール文書情報の取得
スプール文書の削除
ゴミ箱内文書に対する操作
印刷機能 印刷属性の設定
印刷
印刷の中断
印刷の停止・再開
サーバプリンタ関連機能
サーバプリンタ情報の取得
印刷可能なプリンタ機種の一覧取得
ファイルダウンロード機能
スプール文書をファイルとしてダウンロード
1 製品概要
3
また、RDE UDKを利用することにより、1つのユーザアプリケーション上から複数のRDEサーバ
に接続することが可能になります。それにより、複数のRDEサーバ上のスプール文書に対し
て処理を実行することが可能となります。
RDE Util ity Developers KIT ユーザーズ・マニュアル
4
RDE UDKを利用したユーザアプリケーションを実行するためには、RdDbWrapper.jarが
必 要となります。接続 しているRDEと同じバージョンのRdDbWrapper.jarを使用 してくだ
さい。
複 数 のRDEサーバを使 用 する場 合 、同 時 に異 なるバージョンのRDEには接 続 できませ
ん。かならず同じバージョンのRDEを使用してください。
RDE内 のデータベースに、別 サーバ上 から接 続 する場 合 は、別 途 設 定 が必 要 となりま
す。詳 細 については、「複 数 の接 続 先 RDEサーバの切 り替 え」(p.34)を参 照 してくださ
い。
「RD環境設定」でRDServerのアドレスとして「localhost」や「127.0.0.1」といった、ローカル
ループバックアドレスを指定している場合は、RDE UDKをRDServerと別筐体で使用する
ことはできません。
Ver.8.0 では、Microsoft .Net Frameworkを用いて開発されたアプリケーションより、Web
サービス(SOAP1.2)経由でRDユーティリティ関連の操作メソッドを使用する場合のため
に、Webサービス版RDE UDKが用意されています。
Webサービス版RDE UDKの使用については、「5 Webサービス版の使用」を参照してくだ
さい。
1 製品概要
5
Ver.8.0では、つぎの機能が追加されています。各機能の利用方法については、「3 サンプ
ルプログラム実行」の「サンプルプログラム」を参照にしてください。
動的コメントの出力 ······························································· ························
スプール文書を取り出す際に、文書内の指定のフィールドに任意の文字列を出力すること
ができるようになりました。これにより、出力者の詳細情報やコメントなどの自動出力が可能
になります。
・最大10フィールドのコメントデータを動的に出力することができます。
・フィールド名は、次の予約されたフィールド名を使用して、あらかじめ様式に設計されている
ことが前提となります。
rd_comment0
rd_comment1
:
rd_comment9
「rd_comment」という文字列に0から始まる連番(配列のインデックス)を付加した形式にな
ります(以下「rdコメント配列」とします)。連番は9まで指定可能です。
例えば、「印刷時刻(YYYY/MM/DD HH:MM:SS)」と「社員番号」(3桁)を出力する場合、
SVFX-Designer、またはSuper Visual Formade設計部で帳票デザインをおこなう場合、次
のように設定します。
・印刷時刻用フィールド: フィールド名「rd_comment0」
・社員番号用フィールド: フィールド名「rd_comment1」
次の3つのメソッドで本機能の利用が可能です。
・PrintToServerPrinter
・TestPrintToServerPrinter
・CreatePrintData
動的コメント出力されたデータはRDEの監査ログにも出力されます。
監査ログ項目名 RD_COMMENT
値がカンマ区切りで出力されます。
例 RD_COMMENT="2006/03/27 17:37:33 ",null,"318 ","",null,null,null,null,null,null
Ver.8.0 からの新機能
RDE Util ity Developers KIT ユーザーズ・マニュアル
6
スプール済みのページ数の取得 ······························································· ···
文書状態が「スプール中」の文書について、スプール済みのページ数を取得することができ
るようになりました。これにより、スプールの途中経過がわかるようになります。
Ver.8.0 で仕様変更されたメソッド ·····························································
PrintToStreamメソッドは非推奨です。またEMFでの利用はおこなえません。機能強化がお
こなわれているCreatePrintDataメソッドを利用してください。
フィールドの「編集式」、「計算式」、「リンクフィールド」は利用できません。
コメントデータ出力フィールドは、サブフォーム内では利用できません。
RDEへスプールする時 に出 力したデータは、印刷データ作成時 に、rdコメント配 列の要
素に値があれば上書きされます。
上書きしたくない場合は、rdコメント配列の要素にnull値を指定します。
動的コメント指定されたデータは保存されません。
RDE、RDE UDKともにVer3.2 以降の組み合わせの場合にのみ動作します。
SVFのAPIのVrSetFormの出力のモードが 0、1、4 で利用可能です。
またSUM関数などで集計をおこなっている帳票の場合は、集計対象のフィールドより後
に集計結果が出力される場合に本機能の利用が可能です。
スプール中ページ数を取得する文書の特定方法
文書管理番号以外、例えばユーザ定義カラムなどで確認する文書を特定して、該当
の文書に対するページ数を取得することになります。
1 製品概要
7
提供されるソフトウェアは次のファイル構成となっています。
RDESDK.jar コアモジュール
rdsdk.properties 設定ファイル
RDE設定手順.txt Webサービス版をRDEと同じサーブレットコンテナ上で動作
させる場合の設定手順ファイル
doc JavaDoc(API)のHTML
rdjava Webサービス版モジュール
Samples Webサービス版サンプルプログラム
Java Java用サンプルプログラム
dotNet.NET用サンプルプログラム
ASPNET ASP.NET用サンプルプログラム
CSharpNET C#.NET用サンプルプログラム
VBNET VB.NET用サンプル(非同期呼び出し)
RDE UDKの動作環境は、つぎの通りです。
OS 利用するRDEのバージョンに準拠
Java実行環境 利用するRDEのバージョンに準拠 ※Webサービス版は、JRE1.5 上で動作するTomcat5.5
Report Director Enterprise 3.0a, 3.1, 3.2, 8.0 ※Webサービス版は 8.0
ファイル構成
動作環境
RDE Util ity Developers KIT ユーザーズ・マニュアル
8
2 セットアップ
Javaアプリケーションが稼動するアプリケーションサーバで、RDE UDKのセットアップをおこな
います。例として、RDEがセットアップされている環境にセットアップをおこなう場合の手順を
記します。
クラスライブラリのセットアップは、つぎの手順でおこないます。
1 「RDESDK.jar」と、「rdsdk.properties」を同一ディレクトリに配置します。
2 ファイルの配置先をCLASSPATHに追加します。
Windowsで使用している場合は、以下のjarファイルをCLASSPATHに追加します。
・ %FIT_PRODUCTS_BASE%\rdjava\lib 以 下 の postgresql-8.1-404.jdbc2.jar 、
RdDbWrapper.jar
・%FIT_PRODUCTS_BASE%\logging以下のlogging.jar、log4j.jar
UNIX、Linuxで使用している場合は、以下のjarファイルをCLASSPATHに追加します。
・$FIT_PRODUCTS_BASE/rdjava/l ib以下のpgjdbc1.jar postgresql-8.1-404.jdbc2.jar、
RdDbWrapper.jar
・$FIT_PRODUCTS_BASE/logging 以下の logging.jar、log4j.jar
CLASSPATH に追加後 Java プログラムから使用する事が可能となります。
「rdsdk.properties」ファイル内の設定について記述します。
「rdsdk.properties」
# this file's encoding
encoding=SJIS
# DebugLog
Log.Mode=OFF
Log.FileOut=true
Log.Level=1823
Log.FileEncoding=MS932
クラスライブラリのセットアップ
クラスライブラリ側オプション
2 セットアップ
9
Log.LogDir=.
Log.OutputFileName=rdsdk.log
Log.SystemOut=false
Log.SystemOutLevel=1823
# DB
Db.Url=jdbc:postgresql://127.0.0.1:44100/rddb
Db.UseDriver=org.postgresql.Driver
Db.User=svf
Db.Password=svf
#Db.MaxConnection=15
#Db.ConnectionTimeout=600
Db.ConnectionMode=Fixed
#Db.ConnectionMode=Variable
DefaultLanguage=ja
Session.MaxInactiveInterval=1440
encoding= rdsdk.propertiesファイル自体のエンコーディングを指定します。
この設定は変更しないでください。
Log.Mode= デバッグログの出力モードを指定します。
ON 出力します。
OFF 出力しません。
Log.FileOut= デバッグログをファイルに出力するか、しないかを指定します。
True=デバッグログをファイルに出力します。
False=デバッグログをファイルに出力しません。
Log.Level= デバッグログのファイル出力する際のレベルを指定します。デフォルトでは、
「1823」が指定されています。
Log.FileEncoding=
デバッグログファイルのエンコーディングを指 定 します。デフォルトでは、
「MS932」が指定されています。
Log.LogDir= デバッグログの出力先ディレクトリを指定します。
Log.OutputFileName=
出 力 するデバッグログファイルの名 称 を指 定 します。デフォルトでは、
「rdsdk.log」が指定されています。
Log.SystemOut=
デバッグログを標準出力するか、しないかを指定します。
True=デバッグログを標準出力します。
False=デバッグログを標準出力しません。
Log.SystemOutLevel=
デバッグログの出力レベルを指定します。基本的にデフォルト値「1823」
は変更しないでください。
RDE Util ity Developers KIT ユーザーズ・マニュアル
10
Db.Url= デ ー タ ベ ー ス へ の 接 続 URL を 指 定 し ま す 。 デ フ ォ ル ト で は 、
「jdbc:postgresql://127.0.0.1:44100/rddb」が指定されています。
Db.UseDriver= データベースに接続する際に使用する接続ドライバを指定します。デフォ
ルトでは、「org.postgresql.Driver」が指定されています。
Db.User= 接続ユーザ名を指定します。デフォルトでは、「svf」が指定されています。
Db.Password= 接続ユーザのパスワードを指定します。デフォルトでは、「svf」が指定され
ています。
Db.MaxConnection=
データベースへの最大接続数を指定します。
Db.ConnectionTimeout=
タイムアウトとする待ち時間(ms)を指定します。
Db.ConnectionMode=
接続モードを指定します。
Fixed 固定接続先モードを指定します。
Variable
可変接続先モードを指定します。
Session.MaxInactiveInterval=
RDEサーバとRDE UDK間 の接続セッションのタイムアウト時間(分)を設
定します。デフォルトは 1440 分です。
2 セットアップ
11
データベース接続数の詳細については、「RDEユーザーズ・マニュアル Ver.8.0」の「6章運
用管理」の「16 データベース接続数の管理」を参照してください。
RDE UDKのバージョンを確認する場合は、つぎのコマンドを実行します。
> java -jar RDESDK.jar
<コマンドプロンプトで実行した例>
データベースへの最大接続数について
バージョンの確認
RDE Util ity Developers KIT ユーザーズ・マニュアル
12
3 サンプルプログラムの実行
RDE UDKには、サンプルプログラム「Sample.java」がついています。ここではこのサンプルプ
ログラムを利用し、実際にRDEサーバ上にスプールされた文書に対して、つぎの処理を実行
し、正常に動作するかを確認します。
ここでは、Windows環境で使用している例を用いて説明します。
サンプルプログラムでおこなう処理
・ユーザ情報取得と、ユーザ情報の変更と更新
・スプール文書情報の取得
・ごみ箱からの文書の削除
・サーバプリンタ情報の取得
・スプール文書のサーバプリンタからの出力
・スプール文書をPDFファイルとしてダウンロード
・データベース接続プーリングの解放
・複数の接続先RDEサーバの切り替え
・サーバプリンタプロパティの変更
・プリンタキュー情報の取得
・プリンタキュー優先順位の変更
・テスト印刷
・用紙変更メッセージの取得
次の機能は、RDE Ver.3.1 以降のみで対応しているものとなります。
・サーバプリンタのステータス取得
次の機能は、RDE Ver.3.2 以降で対応しているものとなります。
・ユーザパスワード有効期限の取得
・ユーザパスワードの有効期限が警告状態であるか取得
・ユーザパスワードの変更
・停止文書の印刷先変更
・印刷先が変更可能か判定
・動的コメントの出力
・スプール済みのページ数の取得
スプール文 書をPDFファイルとしてダウンロードする処理 を確 認するためには、PDFオプ
ションが導入されている必要があります。
複数の接続先RDEサーバの切り替え処理を確認するためには、複数のRDEサーバが導
入されている必要があります。
3 サンプルプログラムの実行
13
RD環境設定で、サンプルプログラムを実行するために、グループ「test」とユーザ「test」をあ
らかじめ登録しておきます。また、文書をRDEサーバにスプールしておきます。
グループとユーザの登録 ······························································· ················
まず、グループ「test」とユーザ「test」をあらかじめ登録しておきます。
1 RD環境設定で、グループ「test」を作成します。
[グループの作成]ダイアログボックスの[権限]タブで、すべての権限を有効に設定します。
デフォルトでは、すべての権限が有効になっています。
2 ユーザ「test」を以下の内容で作成します。
ユーザ名 test
説明 入力しません。
パスワード test
所属するグループ
test
準備
RDE Util ity Developers KIT ユーザーズ・マニュアル
14
文書のスプール ······························································· ······························
文書の出力を実行するために、あらかじめ文書をスプールしておきます。
ここでは、RDEのサンプルファイル「Sample.bat」(UNIX、Linux版は「sample.sh」)を実行して、
文書のスプールをおこないます。
<RDユーティリティでスプール文書を確認>
3 サンプルプログラムの実行
15
サンプルファイルをセットします。
1 「RDESDK.jar」と、「rdsdk.properties」が存在するディレクトリに「Sample.java」をコピー
します。
2 「Sample.Java」をテキストエディタで開き、つぎの個所について、実行環境にあわせて修
正します。
「Sample.java」
import java.io.*;
import jp.co.fit.rd.api.*;
class Sample {
private String CLIENTID = "RdSdk800"; // 任意の文字列を指定してください
private String LANG = "ja"; // 言語
private String USERNAME = "test"; // テスト用のアカウント
先ほど設定したユーザ名「test」を指定します。
private String PASSWORD = ""; // パスワード
ユーザ「test」のパスワード「test」を指定します。
private String PRINTER_NAME = "TestServerPrinter"; //印刷可能なサーバプリンタを指定してください
実際に印刷可能なサーバプリンタ名を指定します。
private String FILENAME = "test.pdf"; // ダウンロード系印刷時のファイル名
PDFファイルとしてダウンロードする際のファイル名を指定します。
private String DRIVERNAME = "org.postgresql.Driver" // DB DriverName
private String DB_URL1 = "jdbc:postgresql://127.0.0.1:44100/rddb"; // DB接続先URL1
可変接続先モードでデータベースに接続する場合に、1 つ目の接続先データベースのURLを指定します。
private String DB_URL2 = "jdbc:postgresql://localhost:44100/rddb"; // DB接続先URL2
可変接続先モードでデータベースに接続する場合に、2 つ目の接続先データベースのURLを指定します。
private PrintWriter console;
:
3 上書き保存します。
サンプルファイルのセット
サンプルプログラムでは、ファイルのダウンロード、およびデータベースの切り替えをおこな
うように設定されています。RDEオプション製品を導入していない場合や、複数のデータ
ベースで運用していない場合は、設定はしなくても問題ありません。
RDE Util ity Developers KIT ユーザーズ・マニュアル
16
編集した「Sample.java」をコンパイルします。
1 コマンドプロンプトを起動し、Sample.javaのあるディレクトリに移動します。
2 次のコマンドを入力し、「Sample.java」をコピーしたディレクトリ上で、「Sample.java」をコ
ンパイルします。
> javac -classpath ".¥RDESDK.jar" Sample.java
※上記は、Windowsの場合の例となります。UNIX/Linuxの場合は、適宜パス区切りを変更してください。
同じディレクトリにコンパイルされたファイル「Sample.class」が作成されます。
先ほど作成したプログラムを実際に実行してみます。まず、RDEサーバ上に文書をスプール
させます。
1 RDEのサンプルファイル「Sample.bat」を利用して、RDEサーバに文書をスプールします。
3 文書ほどスプールしてください。
2 つぎのコマンドを入力し、先ほどコンパイルしたプログラム「Sample.class」を実行します。
実行にはRDESDK.jar、RdDbWrapper.jar、pgjdbc1.jarが必要となります。環境にあわせて
適切にclasspathを指定してください。
※pgjdbc1.jarは、Ver3.2以降JDBCドライバは「postgresql-8.1-404.jdbc2.jar」となります。
> java -classpath
".¥;.¥RDESDK.jar;%FIT_PRODUCTS_BASE%¥rdjava¥lib¥RdDbWrapper.jar;%FIT_PR
ODUCTS_BASE%¥rdjava¥lib¥pgjdbc1.jar;%FIT_PRODUCTS_BASE%¥logging¥logging
.jar;%FIT_PRODUCTS_BASE%¥logging¥log4j.jar" Sample
※上記は、Windowsの場合の例となります。UNIX/Linuxの場合は、適宜パス区切りを変更してください。
コンパイルの実行
プログラムの実行
3 サンプルプログラムの実行
17
正常に実行されると、画面につぎのような実行状況が表示されます。
サーバプリンタの設定が正常におこなわれていれば、サーバプリンタから帳票が出力されま
す。また、「Sample.class」と同じディレクトリ上に「test.pdf」が出力されます。
RDEオプション(PDF)が導入されていない場合は、PDFは出力されません。
RDE Util ity Developers KIT ユーザーズ・マニュアル
18
RD環境設定で、ユーザ「test」の設定内容を確認してみましょう。
ユーザ「test」のユーザ情報「説明」部に、ユーザ作成時には設定していなかったコメントが
入力されています。
<RD環境設定>
3 サンプルプログラムの実行
19
実際に実行されたサンプルプログラム「Sample.java」の内容は、つぎの通りです。
「Sample.java」 import java.util.*;
import java.io.*;
import jp.co.fit.rd.api.*;
class Sample {
private String CLIENTID = "RdSdk800"; // 任意の文字列を指定してください
private String LANG = "ja"; // 言語
private String USERNAME = "test"; // テスト用のアカウント
private String PASSWORD = ""; // パスワード
private String PRINTER_NAME = "TestServerPrinter"; //印刷可能なサーバプリンタを指定してください
private String FILENAME = "test.pdf"; // ダウンロード系印刷時のファイル名
private String DRIVERNAME = "org.postgresql.Driver" // DB DriverName
private String DB_URL1 = "jdbc:postgresql://127.0.0.1:44100/rddb"; // DB接続先URL1
private String DB_URL2 = "jdbc:postgresql://localhost:44100/rddb"; // DB接続先URL2
private PrintWriter console;
public Sample() {
console = new PrintWriter(System.out, true);
}
public static void main(String[] args) {
Sample sample1 = new Sample();
// ユーザ情報取得・更新の例
sample1.UserInfo();
// 文書情報取得の例
sample1.GetDocuments();
// ごみ箱関連・削除の例
sample1.DeleteDocument();
// サーバプリンタの列挙の例
sample1.EnumServerPrinter();
// サーバプリンタ印刷の例
sample1.PrintToServerPrint();
// ファイル系印刷の例
sample1.FileDownloadPrint();
// 複数の接続先を使い分ける例
// このサンプルコードを動かす前に、rdsdk.properties中、Db.ConnectionMode=Fixedの指定を
// Db.ConnectionMode=Variableに変更してください。
// sample1.SwitchingDb();
// プリンタキュー情報取得の例
sample1.GetPrinterQueueDocuments();
// プリンタキュー優先順位変更の例
サンプルプログラム
RDE Util ity Developers KIT ユーザーズ・マニュアル
20
sample1.UpdatePrinterQueueDocuments();
// サーバープリンタプロパティ変更の例
sample1.UpdateServerPrinterProperties();
// サーバプリンタへのテスト印刷の例
sample1.TestPrintToServerPrint();
// プリンタの停止/再開の例
sample1.StopRestartPrinter();
// DB接続プーリングの解放
sample1.CloseDbConnectionPooling();
}
:
ユーザ情報取得と、ユーザ情報の変更と更新 ···········································
:
//
// ユーザ情報取得・更新の例
public void UserInfo()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します。
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// ユーザ情報の取得
ログインしたユーザの情報を取得します。
UserInfo ui = rd.GetUserInfo();
console.println("ユーザ名:" + ui.getName());
console.println("説明:" + ui.getExplanation());
console.println("ユーザグループ名:");
String[] groups = ui.getUserGroupNames();
for (int i = 0; i < groups.length; i++) {
console.println(" " + (i+1) + ") " + groups[i]);
}
ユーザの新しいパスワードを指定します。
String NEWPASS = "hoge";
3 サンプルプログラムの実行
21
// パスワードの変更
ユーザのパスワードを先ほど設定したあたらしいパスワードに変更します。
ui.setPassword(PASSWORD, NEWPASS);
// ユーザの説明の変更
ユーザの説明を変更します。
ui.setExplanation("hoge-hoge");
//ユーザ情報の更新
現在ログインしているユーザ情報を更新します。
rd.UpdateUserInfo(ui);
console.println("パスワードを変更しました。");
// パスワードを元に戻しておく
先ほど変更したログインユーザのパスワードを元の内容に戻します。
ui = rd.GetUserInfo();
ui.setPassword(NEWPASS, PASSWORD);
rd.UpdateUserInfo(ui);
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
:
スプール文書情報の取得 ······························································· ·············
:
//
// 文書情報取得の例
public void GetDocuments()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します。
rd = creator.create(CLIENTID, LANG);
// ログインの実行
RDE Util ity Developers KIT ユーザーズ・マニュアル
22
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// フィルターの作成
文書情報取得のために新しく抽出条件を指定します。
DocumentFilter filter = new DocumentFilter();
// 未印刷文書を取得する
取得区分として未印刷文書を指定します。
filter.subdivision = DocumentFilter.SUB_DOC_NOT_PRINTED;
// スプール開始時刻が昨日と今日の文書を取得する
文書情報を取得します。
Calendar startCal = Calendar.getInstance();
startCal.set(startCal.get(Calendar.YEAR), startCal.get(Calendar.MONTH),
startCal.get(Calendar.DATE) - 5, 0, 0, 0);
filter.spoolFrom = startCal.getTime().getTime();
Calendar endCal = Calendar.getInstance();
endCal.set(endCal.get(Calendar.YEAR), endCal.get(Calendar.MONTH),
endCal.get(Calendar.DATE), 23, 59, 59);
filter.spoolTo = endCal.getTime().getTime();
// ユーザ定義カラムに'hide'が設定されている文書を除外する条件を指定する例
// filter.condition = "NOT usercolumn1='hide'";
console.println("スプール開始時刻が、" + startCal.getTime().toString() + "から、");
console.println(endCal.getTime().toString() + "までの未印刷文書を取得します");
Document[] updocs = rd.GetDocuments(filter);
// 一覧を表示する
if (updocs.length > 0) {
console.println("文書名 : 管理番号 : ステータス : ユーザ名 : スプール開始日:用紙方向 : ユーザ
定義カラム1");
console.println(
"======================================================");
for (int i = 0; i < updocs.length; i++) {
console.print(updocs[i].getDocName());
console.print(" : " + updocs[i].getDocNum());
console.print(" : " + updocs[i].getStatusString());
console.print(" : " + updocs[i].getUserName());
console.print(" : " + String.valueOf(updocs[i].getSpoolPageCount()));//スプール中のページ
数取得
Date dt = new Date(updocs[i].getSpoolStartTime());
console.print(" : " + dt.toString());
console.print(" : " + updocs[i].getFormPaperOrientationName));
console.println(" : " + (String)updocs[i].getFieldValue(Document.IDX_USER_DEFINE));
}
}
3 サンプルプログラムの実行
23
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
ごみ箱からの文書の削除 ······························································· ··············
:
//
// ごみ箱関連・文書の削除の例
public void DeleteDocument()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// 文書情報の取得条件を作成(印刷済み文書)
DocumentFilter filter = new DocumentFilter();
// filter.subdivision = DocumentFilter.SUB_DOC_PRINTED;
filter.subdivision = DocumentFilter.SUB_DOC_NOT_PRINTED;
// 文書情報の取得
Document[] pdocs = rd.GetDocuments(filter);
if (pdocs.length >= 3) {
// 文書削除
// rd.DeleteDocument(pdocs[2].getDocNum());
// console.println("文書情報を削除しました->文書管理番号(" + pdocs[2].getDocNum() + ")");
}
if (pdocs.length >= 2) {
RDE Util ity Developers KIT ユーザーズ・マニュアル
24
// ごみ箱へ移動
文書をごみ箱に移動します。
rd.MoveDocumentToTrash(pdocs[1].getDocNum());
console.println("ごみ箱へ移動しました->文書管理番号(" + pdocs[1].getDocNum() + ")");
// ごみ箱から戻す
文書をごみ箱から移動します。
rd.RestoreDocumentFromTrash(pdocs[1].getDocNum());
console.println("ごみ箱から戻しました->文書管理番号(" + pdocs[1].getDocNum() + ")");
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
:
サーバプリンタ情報の取得 ······························································· ············
:
//
// サーバプリンタ列挙の例
public void EnumServerPrinter()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
サーバプリンタ情報を取得します。
ServerPrinter[] printers = rd.GetServerPrinters();
if (printers.length > 0) {
console.println("プリンタ名 : コメント : 機種 : サーバ名 : 出力区分 : 言語:ステータス");
console.println("==================================================
======");
3 サンプルプログラムの実行
25
for (int i = 0; i < printers.length; i++) {
console.print(printers[i].getName() + " : ");
console.print(printers[i].getComment() + " : ");
console.print(printers[i].getPrinterKind() + " : ");
console.print(printers[i].getServerName() + " : ");
console.print(printers[i].getSpoolMethodName() + " : ");
console.print(printers[i].getLanguage() + " : ");
console.println(printers[i].getStatusName());
}
console.println();
}
else {
console.println("サーバプリンタが見つかりませんでした。");
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if (rd.getLoginStatus() == RdConnect.STATUS_LOGIN) {
rd.Logout();
}
}
}
:
スプール文書のサーバプリンタからの出力 ················································
:
//
// サーバプリンタ印刷の例
public void PrintToServerPrint()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// 文書情報の取得条件を作成(未印刷文書)
文書情報取得のために新しく抽出条件を指定します。
DocumentFilter filter = new DocumentFilter();
RDE Util ity Developers KIT ユーザーズ・マニュアル
26
取得区分として未印刷文書を指定します。
filter.subdivision = DocumentFilter.SUB_DOC_NOT_PRINTED;
// 文書情報の取得
文書情報を取得します。
Document[] updocs = rd.GetDocuments(filter);
if (updocs.length < 1) {
console.println("未印刷文書がひとつも存在しなかったので印刷を実行しませんでした。");
return;
}
// サーバプリンタの取得
サーバプリンタ情報を取得します。
ServerPrinter printer;
printer = rd.GetServerPrinter(PRINTER_NAME);
// 印刷属性を作成する
印刷時の属性を指定します。
PrintAttributes pas = new PrintAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = PrintAttributes.COPY_TYPE_COLLATED_COPIES; // 部単位で印刷
pas.pageRange = "*"; // すべて印刷
pas.tray = 1; // 給紙トレイの指定
pas.outputBin = 2; // 排紙ビンの指定
// サーバプリンタへの印刷を実行
スプール文書を指定したサーバプリンタに出力します。
rd.PrintToServerPrinter(printer, updocs[0].getDocNum(), pas);
console.println(printer.getName() + "へ、文書管理番号(" + updocs[0].getDocNum() + ")の文書
を印刷しました");
// 文書情報を再取得
出力を実行したスプール文書のステータスを取得します。
updocs[0] = rd.GetDocument(updocs[0].getDocNum());
// 文書ステータスを表示
console.println("文書ステータス->" + updocs[0].getStatusString());
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
:
3 サンプルプログラムの実行
27
動的コメント出力 ······························································· ····························
:
// コメントデータを作成する
// 予約されたフィールド名(rd_comment0~rd_comment9)を使用して帳票が設計されているものとする
String[] comments = new String[10]; // 指定できるコメントの最大数は 10 フィールドまで
DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
comments[0] = "コメントデータ"; // rd_comment0 フィールドに任意の文字列を上書き
comments[1] = null; // rd_comment1 フィールドはスプール時のまま
comments[2] = df.format(new java.util.Date()); // rd_comment2 フィールドに現在時刻を上書き
// 印刷データを生成する
String fileName = "sample.pdf";
try {
OutputStream out = new FileOutputStream(fileName);
rd.CreatePrintData(prnProp, docNum, pas, out, comments);
out.close();
:
RDE Util ity Developers KIT ユーザーズ・マニュアル
28
}
プリンタキュー情報の取得 ······························································· ·············
:
//
// プリンタキュー情報取得の例
public void GetPrinterQueueDocuments()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// プリンタキュー情報を取得する
プリンタキュー情報を取得します。
QueueDocument[] docs = rd.GetPrinterQueueDocuments(PRINTER_NAME);
// 一覧を表示する
console.println("文書名 : 管理番号 : プライオリティ : キュー投入時間 : 印刷ページ数 : 文書に対する
権限");
console.println("==================================================
===================================");
for (int i = 0; i < docs.length; i++) {
console.print(docs[i].getDocName());
console.print(" : " + docs[i].getDocNum());
console.print(" : " + docs[i].getQuePriority());
console.print(" : " + (new Date(docs[i].getQuePrinterTime())).toString());
console.print(" : " + docs[i].getQueParameter());
console.println(" : " + docs[i].hasQueAuthority());
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
3 サンプルプログラムの実行
29
プリンタキュー優先順位の変更 ······························································· ····
:
//
// プリンタキュー優先順位変更の例
public void UpdatePrinterQueueDocuments()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// 優先順位を変更する
優先順位を変更します。この例では、優先順位を上げています。
QueueDocument[] docs = rd.GetPrinterQueueDocuments(PRINTER_NAME);
rd.UpdatePrinterQueueDocuments(docs, RdConnect.QUE_PRIORITY_UP);
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
30
s
サーバプリンタプロパティの変更 ······························································· ···
:
//
// サーバープリンタプロパティ更新の例
public void UpdateServerPrinterProperties()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
// サーバプリンタ情報の取得
サーバプリンタ情報を取得します。
ServerPrinter printer = rd.GetServerPrinter(PRINTER_NAME);
// プロパティインスタンス取得
プロパティ情報を格納するオブジェクトのインスタンスを生成します。
Properties prop = printer.getPrinterProperties();
// 接続タイムアウト時間の取得
実際のプロパティ値を取得します。ここでは、接続タイムアウトを取得しています。
String key = "Spooler.ConnectionTimeoutSec";
int timeOutSec = new Integer(prop.getProperty(key, "")).intValue();
// プロパティ編集例
プロパティ情報を変更します。
prop.setProperty(key, String.valueOf(timeOutSec + 20));
// プロパティのインスタンスへのセット
プリンタのプロパティ情報へ反映します。
printer.setPrinterProperties(prop);
// プロパティ変更の実行
RDEに対して、プロパティ情報の変更を通知します。
rd.UpdateServerPrinterProperties(printer);
console.println(printer.getName() + " の接続タイムアウト時間を" + "[ " + timeOutSec + " ]" + "
から" + "[ " + (timeOutSec + 20) + " ]" + "に変更しました");
3 サンプルプログラムの実行
31
// 接続タイムアウト時間を元に戻しておく
prop.setProperty(key, String.valueOf(timeOutSec)); printer.setPrinterProperties(prop); rd.UpdateServerPrinterProperties(printer); console.println("接続タイムアウト時間を元に戻しました"); } catch (RdConnectException e) { console.println("ErrorCode = " + e.errorCode); console.println(e.getMessage()); e.printStackTrace(); } finally { if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) { rd.Logout(); } }
}
テスト印刷 ······························································· ·······································
:
//
// サーバプリンタへのテスト印刷の例
public void TestPrintToServerPrint()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD, "additionalUserInfo");
// 文書情報の取得条件を作成(未印刷文書)
文書情報取得のために新しく抽出条件を指定します。
DocumentFilter filter = new DocumentFilter();
filter.subdivision = DocumentFilter.SUB_DOC_NOT_PRINTED;
// 文書情報の取得
文書情報を取得します。
Document[] updocs = rd.GetDocuments(filter);
if (updocs.length < 1) {
RDE Util ity Developers KIT ユーザーズ・マニュアル
32
console.println("未印刷文書がひとつも存在しなかったのでテスト印刷を実行しませんでした。");
return;
}
// サーバプリンタの取得
サーバプリンタ情報を取得します。
ServerPrinter printer;
printer = rd.GetServerPrinter(PRINTER_NAME);
// 印刷属性を作成する
印刷時の属性を指定します。
PrintAttributes pas = new PrintAttributes();
pas.pageRange = "*"; // すべて印刷
pas.tray = 1; // 給紙トレイの指定
pas.outputBin = 2; // 排紙ビンの指定
// サーバプリンタへのテスト印刷を実行
指定した文書をテスト印刷します。
rd.TestPrintToServerPrinter(printer, updocs[0].getDocNum(), pas);
console.println(printer.getName() + "へ、文書管理番号(" + updocs[0].getDocNum() + ")の文書
をテスト印刷しました");
// 文書情報を再取得
出力を実行したスプール文書のステータスを取得します。
updocs[0] = rd.GetDocument(updocs[0].getDocNum());
// 文書ステータスを表示
console.println("文書ステータス->" + updocs[0].getStatusString());
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
3 サンプルプログラムの実行
33
プリンタの停止/再開 ······························································· ···················
:
//
// プリンタの停止/再開の例
public void StopRestartPrinter()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD);
ServerPrinter printer = rd.GetServerPrinter(PRINTER_NAME);
// 停止する
if (!printer.isStopping()) {
rd.StopPrinter(PRINTER_NAME);
}
// 再開する
else {
rd.RestartPrinter(PRINTER_NAME);
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
34
複数の接続先RDEサーバの切り替え ·························································
: //
// 複数の接続先を切り替える例
public void SwitchingDb()
{
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator1 = new RdConnectCreator();
RdConnectCreator creator2 = new RdConnectCreator(); RdConnect rd1 = null;
RdConnect rd2 = null;
try {
// changeDbPropertiesメソッドは、接続先固定モードの時に呼び出すと
// RdConnectExceptionをthrowします。
creator1.changeDbProperties(DB_URL1, null, null, null);
creator2.changeDbProperties(DB_URL2, null, null, null);
新しいRdConnectオブジェクトを生成します。
rd1 = creator1.create(CLIENTID, LANG);
rd2 = creator2.create(CLIENTID, LANG);
// 接続先 1、接続先 2、両方に同じ名前とパスワードをもつアカウントが存在することを前提にしています。
指定したユーザ名、パスワードでRDEサーバにログインします。
rd1.Login(USERNAME, PASSWORD);
rd2.Login(USERNAME, PASSWORD);
// 文書情報の取得条件を作成(未印刷文書)
文書情報取得のために新しく抽出条件を指定します。
DocumentFilter filter = new DocumentFilter();
取得区分として未印刷文書を指定します。
filter.subdivision = DocumentFilter.SUB_DOC_NOT_PRINTED;
// 文書情報の取得
文書情報を取得します。
int[] docNums = rd1.GetDocNums(filter);
console.println("接続先1に、未印刷文書が " + docNums.length + "文書あります");
docNums = rd2.GetDocNums(filter);
console.println("接続先2に、未印刷文書が " + docNums.length + "文書あります");
} catch (RdConnectException e) { console.println("ErrorCode = " + e.errorCode); e.printStackTrace(); } finally { if ((rd1 != null ) && (rd1.getLoginStatus() == RdConnect.STATUS_LOGIN)) { rd1.Logout(); } if ((rd2 != null ) && (rd2.getLoginStatus() == RdConnect.STATUS_LOGIN)) { rd2.Logout(); } } } :
3 サンプルプログラムの実行
35
サーバプリンタのステータス手動取得 ························································
:
//
// サーバプリンタのステータス手動取得の例
public void GetServerPrinterStatus() {
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD, "additionalUserInfo");
サーバプリンタ情報を手動取得します。
ServerPrinter printer = rd.GetServerPrinter(PRINTER_NAME);
// ステータス手動取得可能か判定します
サーバプリンタのステータスが手動取得可能か判断します。
if (printer.canGetStatus()) {
// サーバプリンタのステータス手動取得
サーバプリンタのステータスを手動取得します。
printer = rd.GetServerPrinterStatus(PRINTER_NAME);
if (printer != null) {
サーバプリンタのステータスを表示します。
console.println(printer.getName() + "のステータス-> " + printer.getStatusName());
}
}
else {
console.println("プリンタステータスを取得できない設定です ");
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
36
停止文書の印刷先変更 ······························································· ···············
:
//
// 停止文書の印刷先変更の例
public void ChangePrinter() {
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD, "additionalUserInfo");
Document doc = null;
DocumentFilter filter = new DocumentFilter();
filter.subdivision = DocumentFilter.SUB_DOC_PRINTED;
// 文書情報の取得
Document[] docs = rd.GetDocuments(filter);
for (int i = 0; i < docs.length; i++) {
// 印刷先の変更が可能な文書を取得
// 印刷先の変更ができる文書ステータス:「印刷データ作成完了」「印刷待ち」
印刷先が変更可能か判定。
if (docs[i].canChangePrinter()) {
doc = docs[i];
break;
}
}
if (doc == null) {
console.println("印刷先の変更が可能な文書はありませんでした。");
return;
}
// 変更前プリンタの取得
ServerPrinter oldPrinter = rd.GetServerPrinter(doc.getPrinterName());
// 変更先プリンタの取得
// 変更前プリンタと同一サーバ上にあり、同一プリンタ機種のもの
ServerPrinter newPrinter = rd.GetServerPrinter(PRINTER_NAME2);
// 停止文書の印刷先変更
停止文書の印刷先変更。
rd.ChangePrinter(oldPrinter, newPrinter, doc.getDocNum());
3 サンプルプログラムの実行
37
console.println("文書管理番号(" + doc.getDocNum() + ")の文書の印刷先を、" +
oldPrinter.getName() + "から" + newPrinter.getName() + "へ変更しました。");
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
ユーザパスワード有効期限の取得・ユーザパスワードの有効期限の警告状態を取得·····
:
//
// ユーザパスワード有効期限取得・ユーザパスワードの有効期限が警告状態であるか取得の例
public void UserInfo() {
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD, "additionalUserInfo");
ユーザ情報を取得します。
UserInfo ui = rd.GetUserInfo();
console.println("ユーザ名:" + ui.getName());
console.println("説明:" + ui.getExplanation());
console.println("ユーザグループ名:");
String[] groups = ui.getUserGroupNames();
for (int i = 0; i < groups.length; i++) {
console.println(" " + (i+1) + ") " + groups[i]);
}
ユーザ情報を取得します。
long date = ui.getPasswordValidDate();
SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
RDE Util ity Developers KIT ユーザーズ・マニュアル
38
if (date != -1) {
console.println("パスワード有効期限:" + format.format(new Date(date)));
}
パスワード有効期限が警告状態であるか判定します。
if (ui.isPasswordAlertState()) {
console.println("*********** message *************");
console.println("パスワードの有効期限が近づいています");
console.println("パスワードを変更してください");
console.println("*********************************");
}
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
ユーザパスワードの変更 ······························································· ·················
この機能は、ログイン時にパスワード変更を要求されている時、つまりログイン状態が「パス
ワード変更待ち状態」の時のみ呼び出せます。ユーザパスワードの変更をおこなっているとき
は、パスワード変更が正常に終了するまで他の処理をおこなうことはできません。
:
//
// ユーザパスワード変更の例
public void ChangeUserPassword() {
// RdConnectCreatorのインスタンス作成
RdConnectCreator creator = new RdConnectCreator();
RdConnect rd = null;
try {
// RdConnectのインスタンス作成
新しいRdConnectオブジェクトを生成します
rd = creator.create(CLIENTID, LANG);
// ログインの実行
// ログイン時パスワード変更が要求されている場合、RdConnectException が発生し、
// ログイン状態が「パスワード変更待ち(RdConnect.STATUS_CHANGE_PASS_WAITING)」
// になります
// 発生するRdConnectException のエラーコードは「-9109(パスワード変更を要求されています)」
// です
3 サンプルプログラムの実行
39
指定したユーザ名、パスワードでRDEサーバにログインします。
rd.Login(USERNAME, PASSWORD, "additionalUserInfo");
// ログイン状態が「パスワード変更待ち」状態の時
「パスワード変更待ち」かを確認します。
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_CHANGE_PASS_WAITING)) {
try {
// ユーザパスワードの変更
String NEWPASS = "hoge";
// パスワードの変更が正常に終了した場合、ログイン状態が「ログイン(STATUS_LOGIN)」
// になります
パスワードを変更します。
rd.ChangeUserPassword(PASSWORD, NEWPASS);
console.println("ユーザパスワードの変更に成功しました");
}
catch (RdConnectException e) {
console.println("ErrorCode = " + e.errorCode);
console.println(e.getMessage());
e.printStackTrace();
}
finally {
if ((rd != null ) && (rd.getLoginStatus() == RdConnect.STATUS_LOGIN)) {
rd.Logout();
}
}
}
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
40
データベース接続プーリングの解放 ····························································
:
//
// 接続先固定モード時、DB接続プーリングを終了する
public void CloseDbConnectionPooling()
{
// 接続先固定モード時はアプリケーション終了時にこのメソッドを呼び出して、
// プーリングしているDB接続を解放するようにしてください。
RdConnectCreator.finalizeDbConnectionPooling();
}
}
:
4 クラスライブラリの内容
41
4 クラスライブラリの内容
ここでは、RDE UDKが提供するパッケージ「jp.co.fit.rd.api」の階層ツリーおよびクラスの概
要について説明します。なお、APIの詳細については、JavaDoc(API)のHTMLから参照する
ことができます。JavaDocは製品CD-ROMに含まれています。
以下は、RDE UDKのパッケージ「jp.co.f it.rd.api」の階層ツリーになります。
階層ツリーとクラスの概要
RDE Util ity Developers KIT ユーザーズ・マニュアル
42
5 Webサービス版の使用
Webサービス版RDE UDKで使用するAPI関数について記載します。
Webサービス版RDE UDKを使用する際の、システム要件は次の通りです。
クライアント Microsoft .NetFramework2.0 以降がインストールされている環境
サーバ Report Director Enterprise Ver.8.0 が動作する環境
JRE1.5 上で動作しているTomcat5.5
Report Director Enterprise Ver.8.0 がJRE1.5 で動作している環境では、
本サービスが提供するモジュールのセットアップのみで利用可能となりま
す。
クライアントの開発言語
VisualBasic.Net、C#
システム要件
5 Web サービス版の使用
43
セットアップは次の手順でおこないます。
1 「UdkWS」フォルダを%FIT_PRODUCTS_BASE%/rdjava/apache-tomcat-5.5.25/
webapps/配下にコピーします。
以 降 は FIT_PRODUCTS_BASE の 環 境 変 数 を Windows 版 に 例 え
て、%FIT_PRODUCTS_BASE%として記載します。
2 「RDESDK.jar」「rdsdk.properties」および「DBWrapper.jar」を以 下 のディレクトリに配
置します。
Windows 版・UNIX 版共通
%FIT_PRODUCTS_BASE%/rdjava/apache-tomcat-5.5.25/webapps/UdkWS/
WEB-INF/l ib 配下
3 Webブラウザを開き、次のURLを指定して、WebServiceが動作するかどうかを確認しま
す。
URL : http://servername:44090/UdkWS/
バージョン情報がWebブラウザ画面に表示されれば、セットアップ完了です。
Webサービス版RDE UDKのセットアップ
本製品を使用する場合は、JRE1.5 以上を利用する必要があります。
RDE と同じ Tomcat 上で使用する為には、RDE 側の設定の変更が必要になります。同
梱されている「RDE 設定手順.txt」を参照して、下記手順の前にあらかじめ RDE 側の設
定をおこなってください。
RDE Util ity Developers KIT ユーザーズ・マニュアル
44
Webサービス版RDE UDKのAPIを利用するためにVisual Studioの[ソリューションエクスプロー
ラ]から、[Web参照の追加...]で本サービスに接続します。
参照先URLは次を指定します。
http://[サーバ名]:44090/UdkWS/UdkService?wsdl
セッションの利用 ······························································· ·····························
サーバ側 (Webサービス)ではクライアント側 (.NET)のログイン情 報 を保 持 するために、セッ
ションを利用します。このためクライアント側ではCookieを有効にしてください。
// UDKの参照設定をインスタンス
WebRef.UdkConnect.UdkService udkConnect = new WebRef.UdkConnect.UdkService();
// Cookieを有効にする
udkConnect.CookieContainer = new System.Net.CookieContainer();
日付型フィールドの特殊フィールド ······························································
日付型フィールドは「フィールド名+Specified」という名の特殊フィールドとセットで構成され
ます。これはサーバ側との通信の際にフィールドの値が有効かどうかのフラグとなります。
Webサービス版RDE UDK使用時には、次のことに注意してください。
≪サーバ側から受信したデータの日付型フィールドを利用する場合≫
「フィールド名+Specified」フィールドの値が真(True)の場合のみ、有効値と判断します。
//文書情報を取得する
WebRef.UdkConnect.document doc = udkConnect.GetDocument(docNum);
if( doc.spoolStartTimeSpecified == true )
{
Console.WriteLine("スプール日時:" + doc. spoolStartTime);
}
API利用の準備
5 Web サービス版の使用
45
≪クライアント側からサーバ側に日付型フィールドを含むデータを送信する場合≫
「日付型フィールド名+Specified」のフィールド値を真(True)にします。
//文書の検索条件を作成する
WebRef.UdkConnect.documentFilter filter = new
WebRef.UdkConnect.documentFilter();
filter. spoolFrom = new DateTime (2007,1,1);
filter. spoolFromSpecified = true;
//文書情報一覧を取得する
WebRef.UdkConnect.document[]docs = udkConnect.GetDocuments(filter);
同期と非同期呼び出し ······························································· ··················
.NETの場合、[Web参照の追加...]でWebサービス定義時に自動的に生成されるプロキ
シクラスによって「同期」「非同期」の2種類のWebメソッドの呼び出し方法が利用可能とな
ります。
本マニュアルでは「同期」による呼び出し例を使用して説明します。
非同期呼び出しをおこなう場合は、「メソッド名+Async」を使用して呼び出しをおこない、
コールバック関数で後処理をおこなう必要があります。非同期呼び出しの使用例として本
製品に付属のサンプルプログラム(VB.NET)を参考にしてください。
タイムアウト設定について ······························································· ··············
Webサービス定義時に生成されるプロキシクラスのプロパティ「Timeout」の値によってクライ
アント側でタイムアウトが発生します。
処理によってはサーバ側の処理が完了する前にタイムアウトする場合もあるため、クライアン
ト側で適切な値に調整してください。
RDE Util ity Developers KIT ユーザーズ・マニュアル
46
クライアントのユーザアプリケーション開発言語別(Visual Basic.Net、C#)にサンプルプログ
ラムを記載します。
C#の場合 ······························································· ········································
本サービスをWeb参照に「WebRef.UdkConnect」として定義した場合のサンプルプログラム
です。
namespace UdkSample
{
/// UDK for WebServiceのSample(C#版)
class Sample
{
/// 定数
static String LANG = "ja"; // 言語
static String USERNAME = "test"; // テスト用のアカウント
static String PASSWORD = ""; // パスワード
/// UDKサービス
private WebRef.UdkConnect.UdkService udkConnect;
/// コンストラクタ
Sample()
{
// サンプルを生成
Sample sample = new Sample();
// サンプルを実行
sample.Execute();
}
/// コンストラクタ
Sample()
{
// Udkサービスを生成
this.udkConnect = new WebRef.UdkConnect.UdkService();
// Cookieを有効にする
this.udkConnect.CookieContainer = new System.Net.CookieContainer();
}
サンプルプログラム
5 Web サービス版の使用
47
/// サンプル実行
/// (ログイン→ユーザ情報取得&表示→ログアウト)
Execute()
{
// ログインの実行
udkConnect.Login(USERNAME, PASSWORD, LANG);
// ユーザ情報の取得
WebRef.UdkConnect.userInfo ui = udkConnect.GetUserInfo();
// 取得したユーザ情報を表示
Console.WriteLine("ユーザ名:" + ui.name);
Console.WriteLine("説明:" + ui.explanation);
Console.WriteLine("ユーザグループ名:");
String[] groups = ui.userGroupNames;
for (int i = 0; i < groups.Length; i++)
{
Console.WriteLine(" " + (i + 1) + "→" + groups[i]);
}
// ログアウト
udkConnect.Logout();
}
}
}
VisualBasic.Netの場合 ······························································· ·················
本サービスをWeb参照に「WebRef.UdkConnect」として定義した場合のサンプルプログラム
です。
Public Class Sample
'' UDK for WebServiceのSample(VB.NET版)
''定数
Private LANG As String = LANG = "ja" ' 言語
Private USERNAME As String = "test" ' テスト用のアカウント
Private PASSWORD As String = "" 'パスワード
'' UDKサービス
Private udkConnect As WebRef.UdkConnect.UdkService
''メイン
RDE Util ity Developers KIT ユーザーズ・マニュアル
48
Sub Main()
' サンプルを生成
Dim sample As New Sample()
' サンプルを実行
sample.Execute()
End Sub
'' コンストラクタ
Sub Sample()
' Udkサービスを生成
udkConnect = New WebRef.UdkConnect.UdkService()
' Cookieを有効にする
udkConnect.CookieContainer = New System.Net.CookieContainer()
End Sub
'' サンプル実行
'' (ログイン→ユーザ情報取得&表示→ログアウト)
Sub Execute()
' ログインの実行
udkConnect.Login(USERNAME, PASSWORD, LANG)
' ユーザ情報の取得
Dim ui As WebRef.UdkConnect.userInfo = udkConnect.GetUserInfo()
' 取得したユーザ情報を表示
Console.WriteLine("ユーザ名:" & ui.name)
Console.WriteLine("説明:" & ui.explanation)
Console.WriteLine("ユーザグループ名:")
Dim groups As String() = ui.userGroupNames
For i As Integer = 0 To groups.Length - 1
Console.WriteLine(" " & (i + 1) & "→" & groups(i))
Next i
' ログアウト
udkConnect.Logout()
End Sub
End Class
5 Web サービス版の使用
49
Webサービス版RDE UDKで使用できるAPI関数について説明します。
メソッド名 メソッド ページ
■ログイン関連
ログインする Login p.52
ユーザ追加情報を指定してログイ
ンする
LoginWithAddit ionalUserInfo p.52
DBを指定する SetDbProperty p.53
ログアウトする Logout p.53
ログイン状態を取得する GetLoginStatus p.54
■ユーザ関連
ユーザ情報を取得する GetUserInfo p.54
現在ログイン中のユーザ名を取得
する
GetLoginUserName p.54
ユーザパスワードを変更する ChangeUserPassword p.55
ユーザ情報を更新する UpdateUserInfo p.55
ユーザ定義カラムを取得する GetDefineColumnInfo p.56
■プリンタ関連
プリンタ機種名一覧を取得する GetPrinterKindNames p.57
ダウンロード可能なプリンタ機種名
の一覧を取得する
GetDownloadablePrinterKindNames p.57
プリンタ機種のデフォルトプロパティ
を取得する
GetPrinterKindProperties p.58
サーバプリンタ名一覧を取得する GetServerPrinterNames p.58
サーバプリンタ情報を取得する GetServerPrinter p.59
サーバプリンタ情報一覧を取得す
る
GetServerPrinters p.59
サーバプリンタのステータスを取得
する
GetServerPrinterStatus p.60
サーバプリンタのステータスを取得
する
GetServerPrinterStatusWithTimeout p.60
サーバプリンタを停止する StopPrinter p.61
サーバプリンタを再開する RestartPrinter p.61
プリンタプロパティを変更する UpdateServerPrinterProperties p.62
API関数
RDE Util ity Developers KIT ユーザーズ・マニュアル
50
メソッド名 メソッド ページ
■文書関連
文書情報を取得する GetDocument p.63
文書情報を取得する GetDocuments p.63
文書情報を取得する GetDocumentsWithIndexes p.64
文書管理番号を取得する GetDocNums p.65
印刷を実行する PrintToServerPrinter p.65
コメントを指定して印刷を実行する PrintToServerPrinterWithComments p.66
印刷を実行する PrintsToServerPrinter p.67
テスト印刷を実行する TestPrintToServerPrinter p.67
コメントを指定してテスト印刷を実
行する
TestPrintToServerPrinterWithComments p.68
テスト印刷を実行する TestPrintsToServerPrinter p.69
印刷を停止する StopDocument p.70
印刷を停止する StopDocuments p.70
■文書関連
印刷を中断する AbortDocument p.70
印刷を中断する AbortDocuments p.71
印刷を再開する RestartDocument p.71
印刷を再開する RestartDocuments p.71
文書を削除する DeleteDocument p.72
プリンタキュー情報を取得する GetPrinterQueueDocuments p.72
プリンタキューの優先順位を変更す
る
UpdatePrinterQueueDocument p.72
プリンタキューの優先順位を変更す
る
UpdatePrinterQueueDocuments p.73
停止文書の印刷先を変更する ChangePrinter p.73
プリンタプロパティを指定して印刷
データを取得する
GetPrintDataWithProperties p.74
プリンタプロパティとコメントを指定し
て印刷データを取得する
GetPrintDataWithPropertiesAndComments p.75
指定プリンタプロパティで作成した
印刷データを生成しダウンロードす
るためのPATHを取得する
GetPrintDataPathWithProperties p.76
指定プリンタプロパティとコメントで
作成した印刷データを生成しダウ
ンロードするためのPATHを取得す
る
GetPrintDataPathWithPropertiesAndComm
ents
p.78
5 Web サービス版の使用
51
メソッド名 メソッド ページ
■ゴミ箱関連
文書をゴミ箱へ移動する MoveDocumentToTrash p.79
ゴミ箱から文書を復帰する RestoreDocumentFromTrash p.79
ゴミ箱を空にする ClearTrash p.79
RDE Util ity Developers KIT ユーザーズ・マニュアル
52
ログイン関連 ······························································· ···································
ログイン関連の操作をおこなうためのAPI関数について記載します。
ログインする
メソッド名 void Login( p1, p2, p3 )
パラメータ p1 String userName ユーザ名
p2 String password パスワード
p3 String language 言語
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
String userName = “test”; String password = “test123”; String language = “ja”; UdkConnect.Login( username, password, language );
ユーザ追加情報を指定してログインする
メソッド名 void LoginWithAdditionalUserInfo( p1, p2, p3, p4 )
パラメータ p1 String userName ユーザ名
p2 String password パスワード
p3 String language 言語
p4 String additonalUser ユーザ追加情報
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
String userName = “test”;
String password = “test123”;
String language = “ja”;
String additonalUser = “adduser”;
//DBを指定してログインする
UdkConnect.LoginWithAdditionalUserInfo(
username, password, language, additonalUser
);
5 Web サービス版の使用
53
DBを指定する
メソッド名 void SetDbProperty( p1, p2, p3, p4 )
パラメータ p1 String dbUrl DB接続URL
p2 String dbDriver JDBCドライバ
p3 String dbUser DB接続ユーザ名
p4 String dbPassword DB接続バスワード
使用例 使用例は以下の通りです。
String dbUrl = “jdbc:postgresql://127.0.0.1:44100/rddb”;
String dbDriver = “org.postgresql.Driver”;
String dbUser = “svf”;
String dbPassword = “svf”;
//DBの接続先を指定する
UdkConnect.SetDbProperty(dbUrl, dbDriver, dbUser, dbPassword);
//ログインする
String userName = “test”; String password = “test123”; String language = “ja”; UdkConnect.Login( username, password, language );
ログアウトする
メソッド名 void Logout()
使用例 使用例は以下の通りです。
// ログアウトする
UdkConnect.Logout();
本 メ ソ ッ ド を 利 用 す る 場 合 、 プ ロ パ テ ィ フ ァ イ ル 「 rdsdk.properties 」 の
「Db.ConnectionMode」の値を「Variable」に設定する必要があります。
ログインメソッド呼び出し時のみ設定値が反映されます。
RDE Util ity Developers KIT ユーザーズ・マニュアル
54
ログイン状態を取得する
メソッド名 int GetLoginStatus()
戻り値 0 未ログイン
1 ログイン済
2 パスワード変更待ち
使用例 使用例は以下の通りです。
// ログイン状態を取得する
int status = UdkConnect.GetLoginStatus();
switch( status )
{
0: // 未ログイン
Console.WriteLine( “未ログイン” );
break;
1: // ログイン済
Console. WriteLine ( “ログイン済” );
break;
2: // パスワード変更待ち
Console. WriteLine ( “パスワード変更待ち” );
break;
}
ユーザ情報関連 ······························································· ······························
ユーザ情報関連の操作をおこなうためのAPI関数について記載します。
ユーザ情報を取得する
メソッド名 UserInfo GetUserInfo()
戻り値 ユーザ情報
詳細については、「ユーザ情報クラス(userInfo)プロパティ」(p.80)を参照
してください。
例外 RdConnectException
ユーザ情報取得に失敗した場合
使用例 使用例は以下の通りです。
//ユーザ情報を取得
WebRef.UdkConnect.userInfo ui = udkConnect.GetUserInfo();
5 Web サービス版の使用
55
現在ログイン中のユーザ名を取得する
メソッド名 UserInfo GetLoginUserName()
戻り値 現在ログイン中のユーザ名
例外 RdConnectException
ユーザ名取得に失敗した場合
使用例 使用例は以下の通りです。
String userName = udkConnect.GetLoginUserName();
ユーザパスワードを変更する
メソッド名 void ChangeUserPassword( p1, p2 );
パラメータ p1 String oldPassword 旧パスワード
p2 String newPassword 新パスワード
例外 RdConnectException
パスワード変更に失敗した場合
使用例 使用例は以下の通りです。
String oldPassword = “pass123”;
String newPassword = “pass456”;
UdkConnect.ChangeUserPassword( oldPassword, newPassword );
ユーザ情報を更新する
メソッド名 void UpdateUserInfo( p1 );
パラメータ p1 UserInfo ui ユーザ情報
詳細については「ユーザ情報クラス(userInfo)プロパティ」(p.80)を参照し
てください。
例外 RdConnectException
ユーザ情報更新に失敗した場合
使用例 使用例は以下の通りです。
//ユーザ情報を取得
WebRef.UdkConnect.userInfo ui = udkConnect.GetUserInfo();
//ユーザ情報の編集
ui.oldPassword = “pass123”; // 旧パスワード
ui.newPassword = “pass456”; // 新パスワード
ui.explanation = “hoge” // 説明
//ユーザ情報を更新
udkConnect.UpdateUserInfo ( ui );
RDE Util ity Developers KIT ユーザーズ・マニュアル
56
ユーザ定義カラム情報を取得する
メソッド名 DefineColumnInfo[] GetDefineColumnInfo()
戻り値 ユーザ定義カラム情報の配列
詳 細 については「ユーザ定義 カラム情 報 (defineColumnInfo)プロパティ」
(p.85)を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//ユーザ定義カラム情報を取得
WebRef.UdkConnect.defineColumnInfo[] colInfo =
udkConnect.GetDefineColumnInfo ();
for( int i = 0; i < colInfo.Length; i++ )
{
Console.WriteLine( colInfo(i).fieldName + “ = “ + colInfo(i).fieldIndex );
}
パスワード、説明のみ更新可能です。その他のプロパティを変更しても更新対象外とな
ります。
5 Web サービス版の使用
57
プリンタ関連 ······························································· ····································
プリンタ情報関連の操作をおこなうためのAPI関数について記載します。
プリンタ機種名一覧を取得する
メソッド名 String[] GetPrinterKindNames()
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
String[] kindNames =
UdkConnect.GetPrinterKindNames();
for( int i = 0; i < kindNames.Length; i++ )
{
Console.WriteLine( kindNames[i] );
}
ダウンロード可能なプリンタ機種名の一覧を取得する
メソッド名 String[] GetDownloadablePrinterKindNames()
戻り値 ダウンロード可能なプリンタ機種名の配列
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
String[] kindNames =
UdkConnect.GetDownloadablePrinterKindNames ();
for( int i = 0; i < kindNames.Length; i++ )
{
Console.WriteLine( kindNames[i] );
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
58
プリンタ機種のデフォルトプロパティを取得する
メソッド名 nameAndValue [] GetPrinterKindProperties( p1 )
パラメータ p1 String printerKind プリンタ機種名
戻り値 プロパティ名と値(nameAndValue)の配列
詳細については「nameAndValueクラスプロパティ」(p.85)を参照してくだ
さい。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
String kindName = “EMF”;
WebRef.UdkConnect.nameAndValue [] props =
UdkConnect. GetPrinterKindProperties(kindName);
for( int i = 0; i < props.Length; i++ )
{
Console.WriteLine(props[i].name + “ = ” + props[i].value);
}
サーバプリンタ名一覧を取得する
メソッド名 String[] GetServerPrinterNames()
戻り値 サーバプリンタ名(String)の配列
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//プリンタ名一覧を取得する
String[] kindNames = UdkConnect. GetServerPrinterNames();
for( int i = 0; i < kindNames.Length; i++ )
{
Console.WriteLine(kindNames[i]);
}
5 Web サービス版の使用
59
サーバプリンタ情報を取得する
メソッド名 ServerPrinter GetServerPrinter( p1 )
パラメータ p1 String printerName サーバプリンタ名
戻り値 サーバプリンタ情報(ServerPrinter)
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
Console.WriteLine(printer.name);
サーバプリンタ情報一覧を取得する
メソッド名 ServerPrinter[] GetServerPrinters()
戻り値 サーバプリンタ情報(ServerPrinter)の配列
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//サーバプリンタ情報一覧を取得する
WebRef.UdkConnect.ServerPrinter[] printers = UdkConnect.GetServerPrinters();
for( int i = 0; i < printers.Length; i++ )
{
Console.WriteLine(printers[i].name);
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
60
サーバプリンタのステータスを取得する
メソッド名 ServerPrinter GetServerPrinterStatus( p1 )
パラメータ p1 String printerName サーバプリンタ名
戻り値 サーバプリンタ情報(ServerPrinter)
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//プリンタステータスを取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter serverPrinter =
UdkConnect. GetServerPrinterStatus(printerName);
Console.WriteLine(serverPrinter.statusName);
サーバプリンタのステータスを取得する
メソッド名 ServerPrinter GetServerPrinterStatusWithTimeout( p1, p2 )
パラメータ p1 String printerName サーバプリンタ名
p2 int timeoutSec ソケット通信のタイムアウト(ミリ秒)
ゼロを指定するとタイムアウトしません。
戻り値 サーバプリンタ情報(ServerPrinter)
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//プリンタステータスを取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter serverPrinter =
UdkConnect.GetServerPrinterStatusWithTimeout(printerName, 100);
Console.WriteLine(serverPrinter.statusName);
本メソッドを利用する場合、サーバプリンタプロパティのステータス取得を手動に設定す
る必要があります
本メソッドを利用する場合、サーバプリンタプロパティのステータス取得を手動に設定す
る必要があります。
5 Web サービス版の使用
61
サーバプリンタを停止する
メソッド名 ServerPrinter StopPrinter( p1 )
パラメータ P1 String printerName サーバプリンタ名
戻り値 サーバプリンタ情報(ServerPrinter)
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
プリンタ停止に失敗した場合
使用例 使用例は以下の通りです。
//プリンタを停止する
String printerName = “TestPrinter”;
UdkConnect.StopPrinter( printerName );
サーバプリンタを再開する
メソッド名 ServerPrinter RestartPrinter( p1 )
パラメータ P1 String printerName サーバプリンタ名
戻り値 サーバプリンタ情報(ServerPrinter)
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
プリンタ再開に失敗した場合
使用例 使用例は以下の通りです。
//プリンタを停止する
String printerName = “TestPrinter”;
UdkConnect.RestartPrinter( printerName );
RDE Util ity Developers KIT ユーザーズ・マニュアル
62
サーバプリンタのプロパティを変更する
メソッド名 void UpdateServerPrinterProperties( p1 )
パラメータ P1 ServerPrinter printer サーバプリンタ情報
詳細については「サーバプリンタクラス(serverPrinter)プロパティ」(p.81)
を参照してください。
例外 RdConnectException
更新に失敗した場合
使用例 使用例は以下の通りです。
//サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
for( int i = 0; printer.properties.Length; i++ )
{
// 印字位置調整量(横)(mm)を調整
if(printer.properties[i].name.Equales("AdjustX")
{
printer.properties[i].value = "10";
}
// 印字位置調整量(縦)(mm)を調整
if(printer.properties[i].name.Equales("AdjustY")
{
printer.properties[i].value = "10";
}
}
//サーバプリンタのプロパティを変更する
UdkConnect. UpdateServerPrinterProperties(printer);
5 Web サービス版の使用
63
文書関連 ······························································· ·········································
文書関連の操作をおこなうためのAPI関数について記載します。
文書情報を取得する
メソッド名 Document GetDocument( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//文書情報を取得する
int docNum = 123; //文書管理番号 123
WebRef.UdkConnect document doc = UdkConnect.GetDocument ( docNum );
Console.WriteLine( doc.docName ); //文書名を表示する
文書情報を取得する
メソッド名 Document[] GetDocuments( p1 )
パラメータ p1 DocumentFilter fi lter 抽出条件
詳 細 に つ い て は 「 文 書 抽 出 条 件 ク ラ ス (documentFilter) プ ロ パ テ ィ 」
(p.80)を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//検索条件を作成する
WebRef.UdkConnect documentFilter filter =
new WebRef.UdkConnect documentFilter();
filter.subdivision = 1; // 未印刷文書
//文書情報を取得する
WebRef.UdkConnect document[] docs = UdkConnect.GetDocuments( filter );
for( int i=0; i < docs.Length; i++ ) {
Console.WriteLine( docs[i].docName ); //文書名を表示する
}
RDE Util ity Developers KIT ユーザーズ・マニュアル
64
文書情報を取得する
メソッド名 Document[] GetDocumentsWithIndexes( p1, p2 )
パラメータ p1 DocumentFilter fi lter 抽出条件
詳 細 については「文 書 抽 出 条 件 クラス(documentFi lter)プロパ
ティ」(p.80)を参照してください。
p2 int[] indexes 集合化する対象の項目番号配列
指定可能な値については「文書項目番号」(p.86)を参照してく
ださい。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
// 検索条件を作成する
WebRef.UdkConnect documentFilter filter =
new WebRef.UdkConnect documentFilter();
filter.subdivision = 1; // 未印刷文書
//集合化する項目番号
int[] indexes = { 0, 1, 2 }; // 0:文書名、1:コンピュータ名、2:ユーザ名
// 文書情報を取得する
WebRef.UdkConnect document[] docs =
UdkConnect.GetDocumentsWithIndexes( filter, indexes );
for( int i=0; i < docs.Length; i++ ) {
Console.WriteLine( docs[i].docName ); //文書名を表示する
}
indexesで指定された文書項目番号の文書情報が同じ値を持つ場合、それらは 1 つに
集合化されます。取得できる文書情報は、指定した文書項目番号の情報のみになりま
す。
返 される文 書 情 報 オブジェクトは変 更 できません。返 される文 書 情 報 オブジェクトは、
getDocuments()メソッド呼び出し時のスナップショットです。
つまり、RdServer上の文書情報の内容が変更されても、返される文書情報オブジェクト
の内容 は更新されません。文書 情報 の変 更を検 出 するには、個 々の文 書情 報 に対 し
てgetDocument()を呼び出し、新規文書情報を以前の文書情報と比較します。
5 Web サービス版の使用
65
文書管理番号を取得する
メソッド名 int[] GetDocNums( p1 )
パラメータ p1 DocumentFilter fi lter 抽出条件
詳 細 に つ い て は 「 文 書 抽 出 条 件 ク ラ ス (documentFilter) プ ロ パ テ ィ 」
(p.80)を参照してください。
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//検索条件を作成する
WebRef.UdkConnect documentFilter filter =
new WebRef.UdkConnect documentFilter();
filter.subdivision = 1; // 未印刷文書
//文書管理番号一覧を取得する
Int[] docNums = UdkConnect. GetDocNums( filter );
for( int i=0; i < docNums.Length; i++ ) {
Console.WriteLine( docNums[i] );
}
印刷を実行する
メソッド名 void PrintToServerPrinter( p1, p2, p3 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
印刷に失敗した場合
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
int docNum = 123; // 文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
RDE Util ity Developers KIT ユーザーズ・マニュアル
66
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
// 印刷を実行する
UdkConnect.PrintToServerPrinter( printer, docNum, pas );
コメントを指定して印刷を実行する
メソッド名 void PrintToServerPrinterWithComments( p1, p2, p3, p4 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
p4 String[] comments コメント
例外 RdConnectException
印刷に失敗した場合
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
int docNum = 123; // 文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
Spas.outputBin = 2; // 排紙ビンの選択
// コメントを作成する
String[] comments = { “comment1”, “comment2”};
// 印刷を実行する
UdkConnect.PrintToServerPrinterWithComments ( printer, docNum, pas, comments );
5 Web サービス版の使用
67
印刷を実行する
メソッド名 void PrintsToServerPrinter( p1, p2, p3 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
印刷に失敗した場合
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
Int[] docNums = { 123, 456 }; // 文書管理番号 123,456
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
// 印刷を実行する
UdkConnect.PrintsToServerPrinter( printer, docNum, pas );
テスト印刷を実行する
メソッド名 void TestPrintToServerPrinter( p1, p2, p3 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
印刷に失敗した場合
RDE Util ity Developers KIT ユーザーズ・マニュアル
68
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
int docNum = 123; // 文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
// 印刷を実行する
UdkConnect.TestPrintToServerPrinter( printer, docNum, pas );
コメントを指定してテスト印刷を実行する
メソッド名 void TestPrintToServerPrinterWithComments( p1, p2, p3, p4 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
p4 String[] comments コメント
例外 RdConnectException
印刷に失敗した場合
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
int docNum = 123; // 文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = true; // 部数単位印刷
5 Web サービス版の使用
69
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
// コメントを作成する
String[] comments = { “comment1”, “comment2”};
// 印刷を実行する
UdkConnect.TestPrintToServerPrinterWithComments( printer, docNum, pas, comments );
テスト印刷を実行する
メソッド名 void TestPrintsToServerPrinter( p1, p2, p3 )
パラメータ p1 ServerPrinter printer サーバプリンタ情報
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
印刷に失敗した場合
使用例 使用例は以下の通りです。
// サーバプリンタ情報を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.ServerPrinter printer =
UdkConnect.GetServerPrinter(printerName);
Int[] docNums = { 123, 456 }; // 文書管理番号 123,456
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 2; // 2 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = 1; // 給紙トレイの選択
pas.outputBin = 2; // 排紙ビンの選択
// 印刷を実行する
UdkConnect.TestPrintsToServerPrinter( printer, docNum, pas );
RDE Util ity Developers KIT ユーザーズ・マニュアル
70
印刷を停止する
メソッド名 void StopDocument( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷停止に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を停止する
int docNum = 123; //文書管理番号 123
UdkConnect.StopDocument( docNum );
印刷を停止する
メソッド名 void StopDocuments( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷停止に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を停止する
Int[] docNums = { 123, 456 }; //文書管理番号 123,456
UdkConnect.StopDocuments( docNums );
印刷を中断する
メソッド名 void AbortDocument( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷中断に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を中断する
int docNum = 123; //文書管理番号 123
UdkConnect.AbortDocument ( docNum );
5 Web サービス版の使用
71
印刷を中断する
メソッド名 void AbortDocuments( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷中断に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を中断する
Int[] docNums = { 123, 456 }; //文書管理番号 123,456
UdkConnect.AbortDocuments( docNums );
印刷を再開する
メソッド名 void RestartDocument( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷再開に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を再開する
int docNum = 123; //文書管理番号 123
UdkConnect.RestartDocument( docNum );
印刷を再開する
メソッド名 int[] RestartDocuments( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
印刷再開に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を再開する
Int[] docNums = { 123, 456 }; //文書管理番号 123,456
UdkConnect.RestartDocuments( docNums );
RDE Util ity Developers KIT ユーザーズ・マニュアル
72
文書を削除する
メソッド名 void DeleteDocument( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
文書の削除に失敗した場合
使用例 使用例は以下の通りです。
// 印刷を削除する
int docNum = 123; //文書管理番号 123
UdkConnect.DeleteDocument( docNum );
プリンタキュー文書情報一覧を取得する
メソッド名 QueueDocument[] GetPrinterQueueDocuments( p1 )
パラメータ p1 String printerName プリンタ名
例外 RdConnectException
情報取得に失敗した場合
使用例 使用例は以下の通りです。
//プリンタキューの文書情報一覧を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.queueDocument[] docs =
UdkConnect.GetPrinterQueueDocuments(printerName);
for( int i=0; i < docs.Length; i++ )
{
Console.WriteLine( docs[i].docName ); //文書名を表示する
}
プリンタキュー文書の優先順位を変更する
メソッド名 void UpdatePrinterQueueDocument( p1, p2 )
パラメータ p1 QueueDocument doc プリンタキュー文書情報
p2 int updateKind 優先順位(0:UP, 1:DOWN)
例外 RdConnectException
情報更新に失敗した場合
5 Web サービス版の使用
73
使用例 使用例は以下の通りです。
// プリンタキューの文書情報一覧を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.queueDocument[] docs =
UdkConnect.GetPrinterQueueDocuments(printerName);
if( docs != null && docs.Length > 0 )
{
// 先頭文書の優先順位を下げる
UdkConnect.UpdatePrinterQueueDocument( docs[0], 1 );
}
プリンタキューの優先順位を変更する
メソッド名 void UpdatePrinterQueueDocuments( p1, p2 )
パラメータ p1 QueueDocument[] docs プリンタキュー文書情報の一覧
p2 int updateKind 優先順位(0:UP, 1:DOWN)
例外 RdConnectException
更新に失敗した場合
使用例 使用例は以下の通りです。
// プリンタキューの文書情報一覧を取得する
String printerName = “TestPrinter”;
WebRef.UdkConnect.queueDocument[] docs =
UdkConnect.GetPrinterQueueDocuments(printerName);
// 全文書の優先順位を上げる
UdkConnect.UpdatePrinterQueueDocuments( docs, 0 );
停止文書の印刷先を変更する
メソッド名 void ChangePrinter( p1, p2, p3 )
パラメータ p1 ServerPrinter oldPrinter 変更元プリンタ情報
p2 ServerPrinter newPrinter 変更先プリンタ情報
p3 int docNum 文書管理番号
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
RDE Util ity Developers KIT ユーザーズ・マニュアル
74
// プリンタ情報を取得する
String printerName1 = “TestPrinter1”;
String printerName2 = “TestPrinter2”;
WebRef.UdkConnect.serverPrinter oldPrinter =
udkConnect.GetServerPrinter(printerName1)
WebRef.UdkConnect.serverPrinter newPrinter =
udkConnect.GetServerPrinter(printerName2)
int docNum = 123; //文書管理番号 123
// 印刷先を変更する
UdkConnect.ChangePrinter( oldPrinter, newPrinter, docNum );
印刷データを取得する
メソッド名 Byte[] GetPrintData( p1, p2, p3 )
パラメータ p1 String printerKind プリンタ機種名
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
印刷データ取得に失敗した場合
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
int docNum = 123; // 文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// 印刷を実行する
Byte[] data = UdkConnect.GetPrintData(printerKind, docNum, pas );
容 量 の 大 き い 帳 票 デ ー タ を 取 得 す る 場 合 、 本 メ ソ ッ ド の 使 用 は 推 奨 し ま せ ん 。
「GetPrintDataPath」メソッドの使用を推奨します。
5 Web サービス版の使用
75
プリンタプロパティを指定して印刷データを取得する
メソッド名 Byte[] GetPrintDataWithProperties( p1, p2, p3 )
パラメータ p1 nameAndvalue [] props プリンタ機種のプロパティ
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
WebRef.UdkConnect.nameAndValue[] props =
UdkConnect.GetPrinterKindProperties(printerKind);
int docNum = 123; //文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// 印刷データを取得する
Byte[] data = UdkConnect.GetPrintDataWithProperties(props, docNum, pas );
プリンタプロパティとコメントを指定して印刷データを取得する
メソッド名 Byte[] GetPrintDataWithPropertiesAndComments( p1, p2, p3, p4 )
パラメータ p1 nameAndValue [] props プリンタ機種のプロパティ
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
p4 String[] comments コメント
例外 RdConnectException
ログインに失敗した場合
容 量 の 大 き い 帳 票 デ ー タ を 取 得 す る 場 合 、 本 メ ソ ッ ド の 使 用 は 推 奨 し ま せ ん 。
「GetPrintDataPathWithProperties」メソッドの使用を推奨します。
RDE Util ity Developers KIT ユーザーズ・マニュアル
76
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
WebRef.UdkConnect.nameAndValue[] props =
UdkConnect.GetPrinterKindProperties(printerKind);
int docNum = 123; //文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// rd_comment[0-9]のフィールドにコメントを設定
String[] comments = new String[10];
comments[0] = "コメント";
// 印刷データを取得する
Byte[] data = UdkConnect.GetPrintDataWithPropertiesAndComments(
props, docNum, pas, comments
);
印刷データを生成し、ダウンロードするためのPATH(URL)を取得する
メソッド名 String GetPrintDataPath( p1, p2, p3 )
パラメータ p1 String printerKind プリンタ機種名
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
ログインに失敗した場合
容量の大きい帳票データを取得する場合、本メソッドの使用は推奨しません。
「GetPrintDataPathWithPropertiesAndComments」メソッドの使用を推奨します。
5 Web サービス版の使用
77
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
int docNum = 123; //文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// 印刷データを作成する
String path = UdkConnect. GetPrintDataPath( printerKind, docNum,
pas );
指定プリンタプロパティで作成した印刷データを生成し、ダウンロードのためのPATH(URL)を取得する
メソッド名 String GetPrintDataPathWithProperties( p1, p2, p3 )
パラメータ p1 String printerKind プリンタ機種名
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
WebRef.UdkConnect.nameAndValue[] props =
UdkConnect.GetPrinterKindProperties(printerKind);
int docNum = 123; //文書管理番号 123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// 印刷データを作成する
String path = UdkConnect.GetPrintDataPathWithProperties(props,
docNum, pas );
RDE Util ity Developers KIT ユーザーズ・マニュアル
78
指定プリンタプロパティとコメントで作成した印刷データを生成し、ダウンロードのためのPATH(URL)を取得する
メソッド名 GetPrintDataPathWithPropertiesAndComments( p1, p2, p3, p4 )
パラメータ p1 NameAndValue[] props プリンタ機種のプロパティ
p2 int docNum 文書管理番号
p3 PrintAttributes pas 印刷属性
p4 String[] comments コメント
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
String printerKind = “PDF”; // プリンタ機種名=PDF
WebRef.UdkConnect.nameAndValue[] props =
UdkConnect.GetPrinterKindProperties(printerKind);
int docNum = 123; // 文書管理番号=123
// 印刷属性を作成する
WebRef.UdkConnect.printAttributes pas =
new WebRef.UdkConnect.printAttributes();
pas.copyCount = 1; // 1 部印刷
pas.copyType = true; // 部数単位印刷
pas.pageRange = “*”; // すべて印刷
pas.tray = -1; // 給紙トレイの選択
pas.outputBin = -1; // 排紙ビンの選択
// rd_comment[0-9]のフィールドにコメントを設定
String[] comments = new String[10];
comments[0] = "コメント";
// 印刷データを取得する
Byte[] data = UdkConnect.GetPrintDataPathWithPropertiesAndComments(
props, docNum, pas, comments
);
5 Web サービス版の使用
79
ゴミ箱関連 ······························································· ·······································
ゴミ箱関連の操作をおこなうためのAPI関数について記載します。
文書をゴミ箱へ移動する
メソッド名 void MoveDocumentToTrash( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
処理が失敗した場合
使用例 使用例は以下の通りです。
// 文書をごみ箱に移動する
int docNum = 123; // 文書管理番号=123
UdkConnect. MoveDocumentToTrash( docNum );
ゴミ箱から文書を復帰する
メソッド名 void RestoreDocumentFromTrash( p1 )
パラメータ p1 int docNum 文書管理番号
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
//文書をごみ箱から復帰する
int docNum = 123; // 文書管理番号=123
UdkConnect.RestoreDocumentFromTrash ( docNum );
ゴミ箱を空にする
メソッド名 void ClearTrash( p1 )
パラメータ p1 DocumentFilter fi lter 抽出条件
詳 細 に つ い て は 「 文 書 抽 出 条 件 ク ラ ス (documentFilter) プ ロ パ テ ィ 」
(p.80)を参照してください。
例外 RdConnectException
ログインに失敗した場合
使用例 使用例は以下の通りです。
//文書抽出条件に該当する文書をごみ箱からクリアする
WebRef.UdkConnect documentFilter filter =
new WebRef.UdkConnect documentFilter();
filter.subdivision = 3; // ゴミ箱
UdkConnect.ClearTrash( filter );
RDE Util ity Developers KIT ユーザーズ・マニュアル
80
ユーザ情報クラス(userInfo)プロパティ ······················································
型 プロパティ名 説明
String[] userGroupNames ユーザの所属しているグループ名
String explanation ユーザの説明
String name ユーザ名
String oldPassword 旧パスワード
パスワード変更時に設定します。
String newPassword 新パスワード
パスワード変更時に設定します。
Boolean passwordAlertState パスワード有効期限が警告状態であるか
Date passwordVal idDate パスワード有効期限
文書抽出条件クラス(documentFilter)プロパティ ···································
型 プロパティ名 説明
String subdivis ion 取得区分
0:すべて、1:未印刷、2:印刷済、3:ごみ箱
String docNamePattern 文書名のパターン
int sortField ソートするフィールド
「文書項目番号の値」を参照してください。
int sortOrder ソート順
0:昇順、1:降順
Date spoolFrom 指 定 日 時 以 降 にスプールされた文 書 を指
定
Date spoolTo 指 定 日 時 以 前 にスプールされた文 書 を指
定
String condit ion その他の条件
例:
usercolumn1=' ウ ィ ン グ ア ー ク ' and
usercolumn2='5000'"
インタフェースクラス仕様
5 Web サービス版の使用
81
サーバプリンタクラス(serverPrinter)プロパティ ·······································
型 プロパティ名 説明
String name プリンタ名
Boolean canGetStatus 手 動 取 得 によりステータス取 得 が可 能 かど
うか
String comment コメント
String language 言語
int paral le lJobCount 並列処理数(文書数)
String portName ポート
String printerKind プリンタ機種名
String serverName RDサーバ名
String spoolDirectory 出力ディレクトリ
int spoolMethod 出力区分
String spoolMethodName 出力区分名
int status ステータス
String statusName ステータス文字列
int statusInterval ステータス監視間隔(秒)
int statusProtocol ステータス取得プロトコル
Boolean stopping 停止中であるかどうか
nameAndValue[] properties 「nameAndValue」を参照してください。
int protocol 印刷プロトコル
印刷属性(printAttributes)プロパティ ······················································
型 プロパティ名 説明
String pageRange ページ範囲指定
Int copyCount 部数指定
Int copyType 部単位印刷指定か
Int tray 給紙トレイ指定
Int outputBin 排紙ビン指定
Boolean al lPageIsPrinted 印刷後に全ページを印刷済みにするか
int AdjustX 印字位置の横方向への移動量
int AdjustY 印字位置の縦方向への移動量
RDE Util ity Developers KIT ユーザーズ・マニュアル
82
文書クラス(document)プロパティ ······························································
型 プロパティ名 説明
Boolean canAbort 中断可能か
Boolean canChangePrinter 印刷先変更可能か
Boolean canDelete 削除可能か
Boolean canFi lePrint ファイル印刷可能か
Boolean canMoveToTrash ごみ箱へ移動可能か
Boolean canPrint 印刷可能か
Boolean canRestart 再開可能か
Boolean canRestore 元に戻せるか
Boolean canStop 停止可能か
Boolean canView ビュー可能か
String computerName コンピュータ名
String docName 文書名
int docNum 文書管理番号
int formCopyCount 様式に指定されている部数
String formFi leName 様式ファイル名
int formPaperCode 様式に指定されている用紙コード
int formPaperOrientation 様式に指定されている用紙方向
String formPaperOrientationName 様式に指定されている用紙方向名
int formPaperSize 様式に指定されている用紙サイズ
String formPaperSizeName 様式に指定されている用紙サイズ名
int formPrintCount 綴りページ数
String outputFi leName PDF等ファイル系出力のファイル名
Int pageCount ページ数
String paperChangeMessage 用紙変更メッセージ
Boolean Printed 印刷済み文書か
int printedPageCount 印刷済みページ数
String printerName 印刷プリンタ名
Date spoolStartTime スプール開始日時
Date spoolEndTime スプール終了日時
Date printStartTime 印刷開始日時
Date printEndTime 印刷終了日時
5 Web サービス版の使用
83
型 プロパティ名 説明
String[] printablePrinterKindNames 印刷可能な機種名一覧
int spoolPageCount スプールページ数
int status ステータス
String statusString ステータス名称
Boolean stopping 停止中か
Boolean trash ごみ箱文書か
int unprintedPageCount 未印刷ページ数
Date updateTime 最終更新時刻
String[] userColumnNames ユーザ定義カラム名一覧
本 サービスの「GetDefineColumnInfo」メソッ
ドで取 得 したユーザ定 義 カラム順 で値 を設
定します。
String[] userColumnValues ユーザ定義カラム値一覧
String userName ユーザ名
Boolean canSpecifyPageRange 印 刷 時 ページ範 囲 指 定 の制 限 (文 書 セキュ
リティ情報)
falseの場 合 、pageRangeに「*(すべて)」以
外を指定できません
プリンタキュー文書クラス(queueDocument)プロパティ
型 プロパティ名 説明
Boolean canAbort 中断可能か
Boolean canChangePrinter 印刷先変更可能か
Boolean canDelete 削除可能か
Boolean canFi lePrint ファイル印刷可能か
Boolean canMoveToTrash ごみ箱へ移動可能か
Boolean canPrint 印刷可能か
Boolean canRestart 再開可能か
Boolean canRestore 元に戻せるか
Boolean canStop 停止可能か
Boolean canView ビュー可能か
String computerName コンピュータ名
String docName 文書名
int docNum 文書管理番号
RDE Util ity Developers KIT ユーザーズ・マニュアル
84
型 プロパティ名 説明
int formCopyCount 様式に指定されている部数
String formFi leName 様式ファイル名
int formPaperCode 様式に指定されている用紙コード
int formPaperOrientation 様式に指定されている用紙方向
String formPaperOrientationName 様式に指定されている用紙方向名
int formPaperSize 様式に指定されている用紙サイズ
String formPaperSizeName 様式に指定されている用紙サイズ名
int formPrintCount 綴りページ数
String outputFi leName PDF等ファイル系出力のファイル名
int pageCount ページ数
String paperChangeMessage 用紙変更メッセージ
Boolean printed 印刷済み文書か
int printedPageCount 印刷済みページ数
String printerName 印刷プリンタ名
Date spoolStartTime スプール開始日時
Date spoolEndTime スプール終了日時
Date printStartTime 印刷開始日時
Date printEndTime 印刷終了日時
String[] printablePrinterKindNames 印刷可能な機種名一覧
int spoolPageCount スプールページ数
int status ステータス
String statusString ステータス名称
Boolean stopping 停止中か
Boolean trash ごみ箱文書か
int unprintedPageCount 未印刷ページ数
Date updateTime 最終更新時刻
String[] userColumnNames ユーザ定義カラム名一覧
本 サービスの「GetDefineColumnInfo」メソッ
ドで取 得 したユーザ定 義 カラム順 で値 を設
定します。
String[] userColumnValues ユーザ定義カラム値一覧
本 サービスの「GetDefineColumnInfo」メソッ
ドで取 得 したユーザ定 義 カラム順 で値 を設
定します。
5 Web サービス版の使用
85
型 プロパティ名 説明
String userName ユーザ名
Boolean canSpecifyPageRange 印 刷 時 ページ範 囲 指 定 の制 限 (文 書 セキュ
リティ情報)
falseの場 合 、pageRangeに「*(すべて)」以
外を指定できません。
Boolean queAuthority 印刷優先順位の変更権限があるか
int queParameter 印刷ページ数
Date quePrinterTime キュー投入日時
int quePrior ity 優先度
Boolean canChangePrintQueue 印刷優先順位の変更が可能か
ユーザ定義カラム情報(defineColumnInfo)プロパティ ····························
型 プロパティ名 説明
int f ield Index インデックス番号
String f ieldName フィールド名
nameAndValueクラスプロパティ ······························································· ·
型 プロパティ名 説明
String name キー名
String value 値
RDE Util ity Developers KIT ユーザーズ・マニュアル
86
使用できる文書項目番号は次の通りです。
値 意味 Documentクラス(UDK)の定数
0 文書名 IDX_NAME
1 コンピュータ名 IDX_COMPUTER_NAME
2 ユーザ名 IDX_USER_NAME
3 印刷先プリンタ名 IDX_PRINTER_NAME
5 スプール開始時刻 IDX_SPOOL_START_TIME
6 スプール終了時刻 IDX_SPOOL_END_TIME
7 印刷開始時刻 IDX_PRINT_START_TIME
8 印刷終了時刻 IDX_PRINT_END_TIME
9 最終更新時刻
(ステータス変 更 時 、ゴミ箱 移 動 時 、ゴミ箱 から復
元時)
IDX_UPDATE_TIME
10 文書管理番号 IDX_MANAGE_NUM
12 ページ数 IDX_PAGE_COUNT
13 未印刷ページ数 IDX_UNPRINTING_PAGE_COUNT
14 文書ステータス IDX_STATUS
15 様式ファイル名 IDX_FORM_FILE_NAME
16 用紙サイズ IDX_FORM_SIZE
17 用紙方向 IDX_FORM_DIRECTION
18 綴りページ数 IDX_FORM_TUZURI_COUNT
19 部数 IDX_FORM_COPY_COUNT
20 用紙コード IDX_FORM_PAPER_CODE
23 印刷先(0:サーバプリンタ 1:クライアントプリンタ) IDX_PRINT_KIND
31 文書属性
[ 1=停止再開(0:印刷可 1:停止), 2=・・・]
IDX_DOC_ATTRIBUTE
33 プレビュー数 IDX_DOC_PREVIEW_COUNT
1000 ユーザ定義 IDX_DOC_USER_DEFINE
文書項目番号
5 Web サービス版の使用
87
通常のRDE UDKと、Webサービス版のメソッドの対応表を記載します。
メソッド メソッド名
WebServiece I/F UDK
■ログイン関連
ログインする Login Login
追 加 ユーザを指 定 してロ
グインする
LoginWithAddit ionalUserInfo Login
DBを指定する SetDbProperty ChangeDbProperties
ログアウトする Logout Logout
ログイン状態を取得する GetLoginStatus GetLoginStatus
■ユーザ関連
ユーザ情報を取得する GetUserInfo GetUserInfo
現 在 ログイン中 のユーザ
名を取得する
GetLoginUserName GetLoginUserName
ユーザ パスワー ドを変 更
する
ChangeUserPassword ChangeUserPassword
ユーザ情報を更新する UpdateUserInfo UpdateUserInfo
ユーザ定 義 カラムを取 得
する
GetDefineColumnInfo GetDefineColumnInfo
■プリンタ関連
プリンタ機 種 名 一 覧 を取
得する
GetPrinterKindNames GetPrinterKindNames
ダウンロード可 能 なプリン
タ機 種 名 の一 覧 を取 得
する
GetDownloadablePrinterKindN
ames
GetDownloadablePrinterKindN
ames
プリンタ機 種 のデフォルト
プロパティを取得する
GetPrinterKindProperties GetPrinterKindProperties
サーバプリンタ名 一 覧 を
取得する
GetServerPrinterNames GetServerPrinterNames
サーバプリンタ情 報 を取
得する
GetServerPrinter GetServerPrinter
サーバプリンタ情 報 一 覧
を取得する
GetServerPrinters GetServerPrinters
サーバプリンタのステータ
スを取得する
GetServerPrinterStatus GetServerPrinterStatus
メソッド対応表
RDE Util ity Developers KIT ユーザーズ・マニュアル
88
メソッド メソッド名
WebServiece I/F UDK
サーバプリンタのステータ
スを取得する
GetServerPrinterStatusWithTi
meout
GetServerPrinterStatus
サーバ プリン タ を停 止 す
る
StopPrinter StopPrinter
サーバ プリン タ を再 開 す
る
RestartPrinter RestartPrinter
プリンタプロパティを変 更
する
UpdateServerPrinterProperties UpdateServerPrinterProperties
■文書関連
文書情報を取得する GetDocument GetDocument
文書情報を取得する GetDocuments GetDocuments
文書情報を取得する GetDocumentsWithIndexes GetDocuments
文書管理番号を取得する GetDocNums GetDocNums
印刷を実行する PrintToServerPrinter PrintToServerPrinter
コ メ ン ト を 指 定 して 印 刷
を実行する
PrintToServerPrinterWithCom
ments
PrintToServerPrinter
印刷を実行する PrintsToServerPrinter PrintToServerPrinter
テスト印刷を実行する TestPrintToServerPrinter TestPrintToServerPrinter
コメントを指 定 してテスト
印刷を実行する
TestPrintToServerPrinterWith
Comments
TestPrintToServerPrinter
テスト印刷を実行する TestPrintsToServerPrinter TestPrintToServerPrinter
印刷を停止する StopDocument StopDocument
印刷を停止する StopDocuments StopDocuments
印刷を中断する AbortDocument AbortDocument
印刷を中断する AbortDocuments AbortDocuments
印刷を再開する RestartDocument RestartDocument
印刷を再開する RestartDocuments RestartDocuments
文書を削除する DeleteDocument DeleteDocument
プ リン タ キ ュー 情 報 を 取
得する
GetPrinterQueueDocuments GetPrinterQueueDocuments
プリンタ キュー の優 先 順
位を変更する
UpdatePrinterQueueDocument UpdatePrinterQueueDocumen
t
プリンタ キュー の優 先 順
位を変更する
UpdatePrinterQueueDocuments UpdatePrinterQueueDocuments
5 Web サービス版の使用
89
メソッド メソッド名
WebServiece I/F UDK
■文書関連
停 止 文 書 の印 刷 先 を変
更する
ChangePrinter ChangePrinter
印刷データを取得する GetPrintData CreatePrintData
プリンタプロパティを指 定
して印 刷 データを取 得 す
る
GetPrintDataWithProperties CreatePrintData
プリンタプロパティとコメン
トを指 定 して印 刷 データ
を取得する
GetPrintDataWithPropertiesA
ndComments
CreatePrintData
印 刷 データを生 成 し、ダ
ウ ン ロ ー ド す る た め の
PATHを取得する
GetPrintDataPath CreatePrintData
指 定 プリンタプロパティで
作成した印 刷データを生
成 しダウンロードするため
のPATHを取得する
GetPrintDataPathWithProperti
es
CreatePrintData
指 定 プリンタプロパティと
コメントで作 成 した印 刷
データを生成しダウンロー
ド す る た め の PATH を 取
得する
GetPrintDataPathWithProperti
esAndComments
CreatePrintData
■ゴミ箱関連
文書をゴミ箱へ移動する MoveDocumentToTrash MoveDocumentToTrash
ゴミ箱 から文 書 を復 帰 す
る
RestoreDocumentFromTrash RestoreDocumentFromTrash
ゴミ箱を空にする ClearTrash ClearTrash
RDE Util ity Developers KIT ユーザーズ・マニュアル
90
6 エラーコード
ここではエラーコードについて説明します。該当するエラーコードを参照してください。
エラー
コード エラーメッセージ
エラー内容と
対処方法
-9000 サーバ側で例外が発生しました。 [エラー内容]
サーバ側で何らかの例外が発生しています。
[対処方法]
ログによる詳細確認が必要です。
-9001 セッションが見つかりません。 [エラー内容]
設定された時間操作が無かった為、セッ
ション情報が失われました。
[対処方法]
ログインしなおしてください。
-9005 ユーザがグループに所属していませ
ん。
[対処方法]
ユーザをグループに所属させてください。
-9007 パスワードに誤りがあります。 [エラー内容]
パスワードに誤りがあります。
[対処方法]
パスワードを確認してください。
-9010 RDサーバへの接続に失敗しました。 [エラー内容]
RDサーバへの接続に失敗しています。
[対処方法]
ログによる詳細確認が必要です。
-9011 RDサーバと接続中にIOエラーが発生
しました。
[エラー内容]
IOエラーが発生しています。
[対処方法]
ログによる詳細確認が必要です。
-9013 文書の中断に失敗しました。 [対処方法]
文書の中断に失敗しています。
-9016 印刷ページが指定されていません。 [対処方法]
印刷ページを正しく指定してください。
-9017 文書が印刷できない状態です。 [エラー内容]
文書のステータスは現在文書を印刷でき
る状態ではありません。
すでに印刷中の場合もあります。印刷中文
書は印刷できません。
-9019 表示可能文書数を超えました。 [対処方法]
表示文書数が制限する数を超えました。
6 エラーコード
91
エラー
コード エラーメッセージ
エラー内容と
対処方法
-9022 処理を行う権限がありません。 [対処方法]
該当処理について、所属するグループには
権限がありません。
-9023 文書の停止/再開に失敗しました。 [対処方法]
停止/再開できない文書ステータスとなっ
ています。
停止状態にできるのは、文書ステータスが
「印刷待ち」「印刷準備中」「印刷データ作
成中」「印刷データ作成完了」のものとなり
ます。それ以外のステータスの場合は停止
できません。
-9024 文書の停止/再開に失敗しました。 [エラー内容]
停止/再開できない文書属性となってい
ます。
[対処方法]
文書のステータスを確認してください。
-9025 文書の停止/再開に失敗しました。 [エラー内容]
印刷キューに文書が存在していないため、
停止/再開できません。
-9026 文書の印刷先変更に失敗しました。 [エラー内容]
印刷先を変更できない文書ステータスと
なっています。印刷先の変更が可能な文書
は、文書ステータスが「印刷待ち」「印刷
データ作成完了」の文書のみとなります。
[対処方法]
文書のステータスを確認してください。
-9027 文書の印刷先変更に失敗しました 。 [エラー内容]
印刷先を変更できない文書属性となって
います。
-9028 文書の印刷先変更に失敗しました。 [エラー内容]
印刷キューに文書が存在していないため、
印刷先を変更できません。
-9029 文書の印刷先変更に失敗しました。 [エラー内容]
変更前のプリンタ名が異なっているため、印
刷先を変更できません。
-9032 パスワードに誤りがあります。 [エラー内容]
パスワードに誤りがあるか、パスワードの暗号
化に失敗しています。
-9033 プリンタの一時停止/再開に失敗し
ました。
[エラー内容]
プリンタの状態が、一時停止または再開で
きる状態ではありません。
-9034 ユーザはロックされています。 [対処方法]
RD環境設定の[セキュリティ設定]画面で、
ユーザの状況を確認の上、ロック解除など
の対処をおこなってください。
RDE Util ity Developers KIT ユーザーズ・マニュアル
92
エラー
コード エラーメッセージ
エラー内容と
対処方法
-9035 同一ユーザ名で既にログインされてい
ます。
[エラー内容]
同一ユーザ名で既にログインされています。
[対処方法]
別のユーザ名でログインするか、すでにログ
インしているユーザをログアウトさせてくださ
い。
-9036 パスワードは有効期限切れです。 [エラー内容]
パスワードの有効期限が切れています。
[対処方法]
パスワードを変更してください。
-9037 指定されたパスワードは最近使われて
いるため使用不可です。
[エラー内容]
指定されたパスワードは最近使われている
ため使用できません。
[対処方法]
別のパスワードを使用してください。
-9038 パスワードが変更されていません。 [エラー内容]
パスワードが変更されていません。
[対処方法]
パスワードの変更をおこなってください。
-9040 印刷可能なプリンタ機種ではありませ
ん。
[エラー内容]
印刷可能なプリンタ機種ではありません。
[対処方法]
印刷可能なプリンタ機種で印刷をおこなっ
てください。
-9041 ページ指定による印刷ができない文書
です。
[エラー内容]
帳票をスプールする際に、ページ指定不可
と設定しているため、ページ指定がおこなえ
ません。
[対処方法]
印刷をおこないたい場合は、全ページを出
力してください。再度同一の帳票がスプー
ル可能な場合は、ページ指定可能な状態
でスプール後、ページ指定印刷をおこなっ
てください。
-9042 ビューできない文書です。 [対処方法]
帳票をスプールする際に、ビュー不可と設
定しているため、ビューがおこなえません。
-9043 文書の印刷先変更に失敗しました。 [エラー内容]
異なるプリンタ機種の為、印刷先を変更で
きません。
[対処方法]
同一のプリンタ機種に印刷先を変更する
か、印刷をいったん中断した後に再度印刷
指示をおこなってください。
6 エラーコード
93
エラー
コード エラーメッセージ
エラー内容と
対処方法
-9044 文書の印刷先変更に失敗しました。 [エラー内容]
異なるサーバの為、印刷先を変更できませ
ん。
[対処方法]
同一サーバのプリンタに印刷先を変更する
か、印刷をいったん中断した後に再度印刷
指示をおこなってください。
-9100 ログインしていません。 [エラー内容]
ログインしていない為、機能を使用できませ
ん。
[対処方法]
ログインしてください。
-9101 機能は実装されていません。 [エラー内容]
接続先のRDEサーバのバージョンでは、呼び
出した機能がサポートされていません
[対処方法]
接続先RDEのバージョンアップをおこなうか、
エラーの発生した機能を使わないようにし
てください。
-9103 接続先を変更できません。 [エラー内容]
接続先を変更できない設定がされていま
す。
[対処方法]
「rdsdk.properties」内での設定内容を確
認してください。
-9104 文書が削除できない状態です。 [エラー内容]
文書のステータスは現在文書を削除でき
る状態ではありません。
-9105 文書がごみ箱へ移動できない状態で
す。
[エラー内容]
文書のステータスは現在文書をゴミ箱へ
移動できる状態ではありません。
-9108 パスワード桁数が制限されています。 [対処方法]
制限内の長さのパスワードを指定してくださ
い。
-9109 パスワード変更を要求されています。 [対処方法]
ChangeUserPasswordメソッドを使い、パス
ワードを変更してください。
-9110 パスワードの変更が出来ない状態で
す。
[エラー内容]
ログイン状態が「パスワード変更待ち」以外
の状態の時にパスワードを変更しようとしま
した。
[対処方法]
ログイン状態を確認してください。
-9111 文書の印刷先変更ができない状態で
す。
[対処方法]
同一機種のプリンタに変更してください。
RDE Util ity Developers KIT ユーザーズ・マニュアル
94
エラー
コード エラーメッセージ
エラー内容と
対処方法
-9112 propert ies ファイルの読み込みに失
敗しました。
[エラー内容]
指定されたpropertiesファイルが無効です。
[対処方法]
正しいpropertiesファイルを指定してくださ
い。
-9113 接続先はサポートされないバージョンで
す。
[対処方法]
接続先システム(RDE)のバージョンを確認し
てください。
-9999 評価期限が切れました。 [対処方法]
評価の為のライセンス期限を越えました。
モジュールを更新してください
7 注意事項・制限事項
95
7 注意事項・制限事項
RDE UDKを使用する上での注意事項・制限事項はつぎの通りです。
RDE UDKでは、「RD環境設定」など管理者用の設定メニュー機能はAPIとして提供し
ていません。
スプール文書のステータスによっておこなえる処理が異なります。
文 書 ステータス 印刷 印刷
中断
停止/
再開
出力先の
変更
削除 ごみ箱へ
移動
状 態 不 明
文 書 ステータスが不 明 です。 × × × × ○ ○
スプール中
RDEにスプール中 です。 × × × × × ×
スプール完 了
RDE へのスプールが完 了 し
ました。
○ × × × ○ ○
スプール失 敗
スプール処 理 中 にエラーが発
生 しました。
× × × × ○ ○
印 刷 待 ち
印 刷 文 書 が プ リ ン タ キ ュ ー
(印 刷 待 ち文 書 の待 ち順 )に
ある状 態 です。
× ○ ○ ○※1 × ×
印 刷 中
プリンタでの印刷が実行中です。 × ○ × × × ×
印 刷 完 了
印 刷 処 理 が完 了しました。 ○ × × × ○ ○
印 刷 中 断
印 刷 が中 断 されました。 ○ × × × ○ ○
異 常 終 了
印 刷 処 理 中 にエラーが発 生
しました。
○ × × × ○ ○
印 刷 停 止
印 刷 処 理 が停 止 されていま
す。
○ × × × ○ ○
注意事項
RDE Util ity Developers KIT ユーザーズ・マニュアル
96
文 書 ステータス 印刷 印刷
中断
停止/
再開
出力先の
変更
削除 ごみ箱へ
移動
中 断 中
印 刷 中 断 の処 理中 です。 × × × × × ×
準 備 中
印 刷 支 持 後 、プリンタキュ ー
(印 刷 待 ち文 書 の待 ち順 )に
入 るまでの状 態 です。
× × ○ × × ×
印 刷 データ作成中
プリンタへ送 信 する印 刷 デー
タを作 成 中 です。
× ○ ○ × × ×
印 刷 データ作成完 了
プリンタへ送 信 する印 刷 デー
タを作 成 完 了しました。
× ○ ○ ○※1 × ×
プリンタ準 備 待ち
印刷データ作成完了後、
プリンタが印刷可能か
チェック中の状態です。
× ○ × × × ×
○=実 行(メニュー選 択 )可 能 です。
△=実 行(メニュー選 択 )可 能 ですが、何らかのエラーが発 生 します。
×=実 行(メニュー選 択 )不 可 能 です。
※1:文 書 の印刷停 止 状 態 の場 合に出 力先 の変 更が可 能となります。
RDEサーバ内 のデータベースに、別 サーバ上 から接 続 する場 合 は、「pg_hba.conf」に
localhost以外からの接続を許可する設定をおこなう必要があります。
Windowsで使用する場合は、
%FIT_PRODUCTS_BASE%\rdjava\pgsql\data\pg_hba.conf内につぎの記述を追
加します。
接続タイプ、データベース名、ユーザ名、ネットワークアドレス、ネットマスク、認証方法の種類、オプション
例
host rddb svf 10.46.70.44 255.255.0.0 trust
UNIX、Linuxで使用する場合は、$FIT_PRODUCTS_BASE/rdjava/pgsql/data/
pg_hba.conf内につぎの記述を追加します。
接続タイプ、データベース名、ネットワークアドレス、ネットマスク、認証方法の種類
例
host rddb 10.46.70.44 255.255.0.0 trust
7 注意事項・制限事項
97
構成上の注意
「RD環境設定」でRDサーバのアドレスを「localhost」、または「127.0.0.1」を指定している
場合は、RDE UDKをRDサーバと別筐体で使用することはできません。
印字位置調整機能を使用する場合の注意
印字位置調整機能を使用する場合は、ClientIDを各プログラム・RDユーティリティで重
複しないように設定してください。重複した場合、同一ClientIDでは同じ設定が有効と
なるため、他のプログラム・RDユーティリティで設定した値が有効となってしまい、意図し
た印刷結果が得られない場合があります。
マルチスレッド動作について
同一のRdConnectオブジェクトに対して、複数のスレッドから同時にメソッドを呼び出した
際の動作は保障されませんので、おこなわないようにしてください。
別インスタンスに対するアクセスの場合は、マルチスレッド動作が可能です。
RdDbWrapper.jarに含まれるバージョン情報をもとに接続先のRDEサーバのバージョンを
判定するため、classpathに指定するRdDbWrapper.jarは、かならず接続するRDEのバー
ジョンと同じものを使用してください。
接続先可変モードで動的に接続先を切り替える場合、同時に異なるバージョンのRDE
サーバとは接続できません。
RDE用ActiveXプラグイン(以下、「RDE ActiveX」)について
RDE UDKでは、RDE ActiveXを利用している機能に対応していません。そのため、つぎ
の機能は使用できません。
・クライアントプリンタの情報取得・登録
・クライアントプリンタからの印刷
・プレビュー
全文検索機能
RDE UDKを使用する場合は全文検索機能は使用できません。
印刷指示はRDE UDKと非同期でおこなわれるため、印刷実行後の文書ステータスに
ついては再読み込み・更新により確認する必要があります。
RDE Ver.2.5 以降では、プリンタキューが空の時にGetPrinterQueueDocuments()を実
行するとErrorCode = -7103(クエリー結果が 0 件です)というエラーコードが返されます
が、これは正常な動作です。
以下のメソッドは監査ログに対応していません。
・AbortDocuments(int[] docNums)
制限事項
RDE Util ity Developers KIT ユーザーズ・マニュアル
98
・PrintToServerPrinter(ServerPrinter printer, int[] docNums, PrintAttributes pas)
・RestartDocuments(int[] docNums)
・StopDocuments(int[] docNums)
・TestPrintToServerPrinter(ServerPrinter printer, int[] docNums, PrintAttributes
pas)
・UpdatePrinterQueueDocuments(QueueDocument[] docs, int updateKind)
RdConnectCreator#init ial izeDbConnectionPool ingは、通常ユーザアプリケーションから
明示的に呼び出す必要はありませんが、サーブレットの初期化時にあらかじめDB接 続
を確立しておきたい等の理由で、呼び出すこともできるように公開しています。
このメソッドはアプリケーションの初期化時に一度だけ呼び出されることを想定していま
す。そのため、init()メソッド内での利用等にとどめてください。アプリケーションの動作中に
再呼び出しがおこなわれるようなコーディングはしないでください。
同 様 に、RdConnectCreator#final izeDbConnectionPool ingもdestroy()メソッド内 での
利用等にとどめ、アプリケーションが終了する前に 1 度だけ呼び出されるようにしてくださ
い。
索引-1
索引 ····························································································································································································
C
CLASSPATH......................................................8
D
Db.ConnectionMode ........................................10
Db.ConnectionTimeout....................................10
Db.MaxConnection ..........................................10
Db.Password ....................................................10
Db.Url ..............................................................10
Db.UseDriver...................................................10
Db.User ............................................................10
defineColumnInfo............................................85
doc ......................................................................7
document .........................................................82
documentFilter ................................................80
E
encoding .............................................................9
J
JavaDoc............................................................41
jp.co.fit.rd.api...................................................41
L
Log.FileEncoding...............................................9
Log.FileOut........................................................9
Log.Level............................................................9
Log.LogDir .........................................................9
Log.Mode............................................................9
Log.OutputFileName ........................................9
Log.SystemOut ..................................................9
Log.SystemOutLevel .........................................9
N
nameAndValue................................................ 85
P
PATH を取得.................................................... 76
printAttributes................................................ 81
Q
queueDocument .............................................. 83
R
RdDbWrapper.jar .............................................. 4
RDE UDK.......................................................... 1
RDE Utility Developers KIT ............................ 1
RDESDK.jar...................................................... 7
rdjava ................................................................ 7
rdsdk.properties............................................ 7, 8
S
Sample.java..................................................... 12
Samples ............................................................. 7
serverPrinter................................................... 81
Session.MaxInactiveInterval ......................... 10
U
userInfo ........................................................... 80
W
Web サービス版 ............................................... 42
い
印刷機能............................................................. 2
印刷属性........................................................... 81
印刷データを取得 .......................................74, 75
印刷を再開........................................................71
印刷を再開す ....................................................71
印刷を実行..................................................65, 67
印刷を中断..................................................70, 71
印刷を停止........................................................70
インタフェースクラス ......................................80
え
エラーコード ....................................................90
エンコーディング ...............................................9
か
階層ツリー........................................................41
可変接続先モード .............................................10
監査ログ ...........................................................97
く
クラスライブラリ .............................................41
クラスライブラリ側オプション..........................8
こ
固定接続先モード .............................................10
ゴミ箱から文書を復帰 ................................79, 83
ゴミ箱へ移動 ....................................................79
ゴミ箱を空にする .............................................79
コメントを指定して印刷を実行........................66
さ
サーバプリンタ関連機能 ....................................2
サーバプリンタクラス ......................................81
サーバプリンタ情報一覧を取得........................59
サーバプリンタ情報を取得...............................59
サーバプリンタのステータスを取得 ................60
サーバプリンタのプロパティを変更 ................62
サーバプリンタ名一覧を取得........................... 58
サーバプリンタを再開 ..................................... 61
サーバプリンタを停止 ..................................... 61
サンプルプログラム ............................. 12, 19, 46
し
システム要件.................................................... 42
す
ステータス ....................................................... 95
せ
制限事項........................................................... 97
セッション ....................................................... 44
接続ドライバ.................................................... 10
接続モード ....................................................... 10
接続ユーザのパスワード.................................. 10
接続ユーザ名.................................................... 10
セットアップ................................................ 8, 43
た
タイムアウト時間 ............................................ 10
タイムアウト設定 ............................................ 45
ち
注意事項........................................................... 95
て
停止文書の印刷先を変更.................................. 73
データベースへの最大接続数..................... 10, 11
データベースへの接続 URL............................. 10
テスト印刷を実行 ................................ 67, 68, 69
デバッグログの出力先ディレクトリ .................. 9
デバッグログの出力モード ................................ 9
デバッグログの出力レベル ................................ 9
索引-3
デバッグログの標準出力 ....................................9
デバッグログのファイル出力 .............................9
デバッグログのファイル出力レベル ..................9
デバッグログファイルのエンコーディング........9
デバッグログファイル名 ....................................9
と
同期 ..................................................................45
動作環境 .............................................................7
動的コメント ......................................................5
は
バージョンの確認 .............................................11
パッケージ........................................................41
ひ
日付型フィールド .............................................44
ふ
ファイル構成 ......................................................7
ファイルダウンロード機能.................................2
プリンタ機種のデフォルトプロパティを取得 ..58
プリンタ機種名一覧を取得.........................57, 63
プリンタキューの優先順位を変更 ....................73
プリンタキュー文書情報一覧を取得 ................72
プリンタキュー文書の優先順位を変更 .............72
文書管理番号を取得 .........................................65
文書クラス ....................................................... 82
文書項目番号.................................................... 86
文書情報取得...................................................... 2
文書情報を取得 .......................................... 63, 64
文書抽出条件クラス ......................................... 80
文書を削除 ....................................................... 72
へ
ページ数の取得 .................................................. 6
め
メソッド........................................................... 87
ゆ
ユーザ情報クラス ............................................ 80
ユーザ情報を更新 ............................................ 55
ユーザ情報を取得 ............................................ 54
ユーザ追加情報 ................................................ 52
ユーザ定義カラム情報 ..................................... 85
ユーザ定義カラム情報を取得........................... 56
ユーザ名を取得 ................................................ 55
ろ
ログアウト ....................................................... 53
ログイン..................................................... 52, 53
ログイン機能...................................................... 2
ログイン状態を取得 ......................................... 54
索引-4
RDE Utility Developers KIT ユーザーズ・マニュアル Ver.8.0
2008年 3月 第1版 販売元: ウイングアーク テクノロジーズ株式会社 [本社]〒108-0075 東京都港区港南 1-8-15 W ビル 14F
TEL:03-6710-1700(代表) FAX:03-6710-1701
ホームページ:http://www.wingarc.co.jp
開発元: 株式会社エフ・アイ・ティ
〒102-0071 東京都千代田区富士見 2-14-37 FUJIMI EAST 2F
※本マニュアルに記載されている社名および商品名は、一般に各社の商標および登録商標です。 ※本マニュアルは予告なく変更することがあります。