ネットワークソケット経由でBTXMLを使用してドキュメントを印刷する方法(動画 - 7分30秒)
対象: BarTender 2019以降
概要
この例の目的は、アクション内にBTXMLスクリプトを含むネットワークソケット統合を作成することです。BarTender XML Script(BTXMLスクリプト)は、BarTenderの自動化を簡単に行うことができ、サードパーティのプログラマーが自分のアプリケーションにBarTenderを簡単に統合できる方法を提供します。
BTXMLスクリプトの実行後、XMLレスポンスが作成されます。このXMLレスポンスには、印刷ジョブに関する有用な情報(使用されたプリンター、印刷時のBarTenderの設定、印刷されたラベルの詳細など)が含まれています。
シナリオ
ある会社が、100個の連番アイテムを含む印刷ジョブをHP LaserJetプリンターのトレイ1に送信する必要があります。この印刷ジョブは、データ(この場合はBTXMLスクリプト)がネットワークソケット経由で送信され、BarTender Integration Serviceによって読み取られると実行されます。
実装手順
以下の手順では、上記のシナリオに対する統合の設定、展開、検証方法について説明します。
BarTenderドキュメントの作成
- BarTenderを開きます。
- ファイルメニューから新規を選択し、新規ドキュメントウィザードを開きます。
- 空白のテンプレートを選択し、完了をクリックして新規ドキュメントウィザードを閉じます。BarTenderに新しいドキュメントが表示されます。
- ファイルメニューから印刷を選択し、印刷ダイアログを開きます。
- 名前のドロップダウンリストから使用するプリンターを選択します。ここで選択したプリンター名をBTXMLスクリプトでも同じにしてください。
- 閉じるをクリックして印刷ダイアログを閉じます。
- ファイルメニューからページ設定を選択し、ページ設定ダイアログで必要に応じてページを設定します。
- ページ設定が完了したら、OKをクリックしてページ設定ダイアログを閉じます。
- 作成メニューからテンプレートオブジェクトを選択し、BarTenderドキュメントを希望通りに設定します。
- ファイルメニューから名前を付けて保存を選択し、BarTenderドキュメントをScriptdoc.btwという名前で保存します。
- BarTenderを閉じます。
BTXMLスクリプトトリガードキュメントの作成
<?xml version="1.0" encoding="utf-8"?> <XMLScript Version="2.0"> <Command Name="Job1"> <Print> <Format>c:\BarTender\Scriptdoc.btw</Format> <PrintSetup> <NumberSerializedLabels>100</NumberSerializedLabels> <Printer>HP LaserJet</Printer> <PaperTray>Tray 1</PaperTray> </PrintSetup> </Print> </Command> </XMLScript>
注意: この例で作成したドキュメントのパスとファイル名が一致していることを確認してください。
注意2: BTXMLの解析エラーやエラー3808が発生した場合は、BTXMLファイルから以下の行を削除してください:
<?xml version="1.0" encoding="utf-8"?>
BTXMLスクリプトをテキストファイルに貼り付け、BTXMLScript.txtという名前で保存します。
統合ファイルの作成:ネットワークソケット統合の選択
- Integration Builderを開きます。
- 新しい統合の作成をクリックして、新しい統合ダイアログを開きます。
- ネットワークソケットをクリックし、OKをクリックします。
- ネットワークソケット統合ペインで、統合を選択します。
- プロパティペインで、統合の名前に「Print 100」と入力します。
- 統合の開始ドロップダウンリストから自動を選択します。
- ユーザーアカウントでユーザー認証情報を指定します。詳細は空のファイルを使ってドキュメントを印刷するをご覧ください。
- ネットワークソケット統合ペインで、ソケットを選択します。
- プロパティペインで、プロトコルとポート情報を設定します。
- ネットワークアドレスで、すべてのネットワークインターフェースでリッスンを選択します。もしくは、特定のIPアドレスでリッスンを選択し、ドロップダウンリストからIPアドレスを選択するか、手動で入力します。
- 通信設定や接続プロトコルを必要に応じて設定します。
- ネットワークソケット統合ペインで、入力データを選択します。
- プロパティペインで、エンコーディングプロパティにUnicode (UTF-8)を選択します。
- 読み取り停止条件で、文字列の受信時を選択します。
- 文字列フィールドに</XMLScript>と入力します。
- シーケンスを入力データ内容に含めるを有効にします。
- 入力データ形式でBTXMLスクリプトを選択します。
- ネットワークソケット統合ペインで、レスポンスを選択します。
- プロパティペインで、レスポンスオプションを選択します。
統合ファイルの作成:ネットワークソケット統合にアクションを追加
- ネットワークソケット統合ペインで、アクションを選択します。
- プロパティペインで、アクションの実行に順次を選択します。
- アクションの繰り返しに「1」と指定します。
- ネットワークソケット統合ペインのアクションの下で、Print Documentの右側にあるをクリックしてデフォルトのアクションを削除します。
- アクションを選択し、追加をクリックして新しいアクションダイアログを開きます。
- 左側のナビゲーションペインのアクションタイプ一覧から印刷を選択し、BTXMLスクリプトを印刷を選択します。
- OKをクリックして新しいアクションダイアログを閉じます。
- BTXMLスクリプトを印刷アクションがネットワークソケット統合ペインのアクションの下に表示されます。
- まだ選択されていない場合は、ネットワークソケット統合ペインでBTXMLスクリプトを印刷をクリックします。
- プロパティペインのアクションの下で、BTXMLスクリプトを印刷アクションの名前と説明を入力します。
- スクリプトの下で、スクリプトソースドロップダウンリストから変数を選択します。
- まだ選択されていない場合は、変数ドロップダウンリストからEventDataを選択します。
- Integration Builderの左上にあるをクリックして、統合ファイルを
BTXML_Integration.btinとして保存します。
BTXMLスクリプト印刷アクションのテスト(統合全体ではなく)
「BTXMLスクリプトを印刷」アクションをテストするには、テスト用にいくつかの設定を変更し、テスト後に元に戻す必要があります。
- ネットワークソケット統合ペインのアクションで、BTXMLスクリプトを印刷を選択します。
- プロパティペインのスクリプトで、スクリプトソースドロップダウンリストから埋め込みスクリプトを選択します。
- インポートボタンをクリックしてBTXMLファイルをインポートするか、ファイルの内容をウィンドウに貼り付けます。
- スクリプトウィンドウ右側のテストボタンをクリックします。
- 「BTXMLスクリプトを印刷」アクションがテストに合格した場合は、ネットワークソケット統合ペインのアクションで再度BTXMLスクリプトを印刷を選択します。
- プロパティペインで、スクリプトタイプを変数に戻し、変数タイプを%EventData%に戻します。
注意: このユニットテストはBTXMLスクリプトが正しいこと、および選択したユーザーアカウントがBarTenderファイルにアクセスし指定したプリンターで印刷できることのみを確認します。トリガー条件のテストは行いません。次のセクションをご覧ください。
統合ファイルのテストと展開
- Integration Builderツールバーの統合のテストをクリックします。
- 統合がテストに合格したら、統合の展開をクリックして新しい展開ダイアログを開きます。
- 展開の名前と説明を入力します。
-
統合ファイルの設定が
BTXML_Integration.btinになっていることを確認します。違う場合は、参照をクリックしてBTXML_Integration.btinを選択します。 - ターゲットサーバーに、統合ファイルを展開したいサーバーを追加します。
- 必要なエラー処理設定を指定します。
- OKをクリックしてダイアログを閉じ、統合ファイルを展開します。
- 管理コンソールが統合ノードで開き、統合が表示されます。
シナリオの実行と統合処理の確認
- BarTender Integration Serviceが選択したネットワークソケットを監視しています。お好みの方法でBTXMLScript.txtの内容をネットワークソケット経由で送信します。
- Integration ServiceがBTXMLスクリプトをBarTenderに渡します。
- BarTenderはBTXMLスクリプトで指定されたアクションを実行し、指定したプリンターのトレイ1を使ってScriptdoc.btwを100部印刷します。