ツリー モード

ツリー モードは、アプリケーションのツリー生成方法を定義するアプリケーション ベースの設定です。

[ツリー モード] オプションは、エディター ビューの上部にある [入力値]、[出力値]、[変数] の設定とともに表示されます。または、[レコーダー ビュー] のアプリケーション タブのタイトルを右クリックして使用することもできます。

Kofax RPA は、アプリケーション ツリーを生成するいくつかの方法を提供します。デフォルトでは、Kofax RPA は、ロボットが動作しているアプリケーションのタイプ (Windows アプリケーション、ターミナル組み込みブラウザなど) を検出し、このアプリケーション ツリーを自動的に形成します。また、[ツリー モード] は、自動化されたアプリケーションの特定のオプションを選択するのに役立ちます。

  • [ツリーなし]: Desktop Automation は、アプリケーション ツリーにデータを追加しません。ロボットがツリーを抽出しようとした際に不安定な動作をするアプリケーションには、このオプションを使用します。
  • ISA: インテリジェント スクリーン オートメーションの略です。このオプションにより、プログラム インターフェイスのグラフィカル表示からインターフェイス エレメントを決定する、ユーザー インターフェイス (UI) 認識が有効になります。このモードは、オートメーション API を提供しないプログラムで使用できます。
  • [Windows]: Windows オートメーション API を使用して生成されたウィジェット ツリーに複数のオプションを提供します。

インテリジェント スクリーン オートメーション (ISA)

ISA は、UI エレメントと図形を自動的に検索することで、拡張されたスクリーン認識機能を提供します。

アテンデッド オートメーションでインテリジェント スクリーン オートメーション (ISA) を使用しないでください。

ISA は、制限付きのアプリケーションまたは Citrix などのオートメーションなしの API を自動化するのに役立ちます。また、このオプションを使用して、リモート デスクトップ アプリケーションや SAP などの低速アプリケーションを自動化することもできます。一般的に、このオプションは、アプリケーション ツリーが正しく生成されていないアプリケーション、またはファインダーを作成することが困難なアプリケーションに使用できます。

認識された各 UI エレメントには、ファインダーで使用できる複数の属性が含まれています。

共通の属性
  • der_x, der_y, der_width,der_height: エレメントの座標とサイズ。

  • lt_16_5, rb_15_4: エレメントの左上および右下座標を基準にして計算された数値。プログラムの状態が異なると要素の座標が変化する場合には、ファインダーが正しく動作しない可能性があります。たとえば、選択すると太字になるテキストが、選択を解除した際に座標が変化する場合などです。このプロパティでは、座標の変化に伴う問題が排除されるため、信頼性の高いファインダーを作成できます。UI エレメントに name プロパティがある場合、アクション ステップを挿入すると、ファインダーによってデフォルトで使用されます。それ以外の場合、ファインダーではプロパティ lt_16_5 が使用されます。

次の表に、サポートされる UI エレメントを示します。

UI エレメント名

ウィジェット名

エレメント固有の属性

注意

ダイアログ ボックス、フレーム、ペイン、その他

container

該当なし

他のエレメントを含む一般的な親エレメント。たとえば、ダイアログ ボックス全体またはこのダイアログ ボックス内のフォームをコンテナにすることができます。Kofax RPA によって認識される特別なコンテナの 1 つがテーブルです。

要素

element

他のエレメントを含まない一般的な UI エレメント。

アイコン

icon

label

テキストを含まないグラフィック エレメント。

テーブル

table

テーブルは、アプリケーション ツリー内で別々のエレメントとして表されます。結合されたセルは認識されず、ヘッダーは通常のセルと同じです。それぞれのセルは、アプリケーション ツリー内の item として定義されます。アイテムには、チェック ボックスやテキスト ボックス、およびその他の UI 要素を含めることができます。

row

テーブル ツリーの行。

アイテム

item

テーブル ツリーの行にあるアイテム。

テキスト ボックス

textbox

label

テキスト フィールド。

チェック ボックス

checkbox

label

チェック ボックス。

オプション ボタン。

radiobutton

label

オプションまたはラジオ ボタン。

テキストとテキスト ラベル

linklabel

name

inverted

これは、ダイアログ ボックスのサブタイトルなどのスタンドアロンのテキスト要素、またはチェック ボックスのラベルやテキスト ボックスのラベルなどの UI 要素のラベルです。

  • 名前: テキストが UI エレメント ラベルとして認識される場合、UI エレメントにはラベル名を値とする label プロパティが含まれます。次の例では、textbox 要素に label="Name" プロパティが含まれます。


    ラベル付きのテキスト ボックス
  • inverted: OCR によって検出されたテキストが暗く、背景が白い場合、inverted0 に設定されます。テキストが白で、背景が暗い場合、inverted1 に設定されます。

ISA のヒント
  • スクリーン フォント、背景色と前景色、テキスト サイズなど、さまざまな要素によって認識結果は異なります。認識結果を改善する場合は、明るい背景や大きなフォント サイズでの等幅の黒色フォントを使用するなど、カラー スキームを変更してみます。
  • テキスト フィールドでは選択されて反転色になったテキストが正しく認識されないことがあります。認識結果を改善するには、値を抽出する前にテキスト フィールドの範囲選択を除去します (他の場所をクリックするなど)。
  • 状態によって異なって認識される可能性のある動的コンテンツ フォームとテキスト フィールドを操作する場合は、ツリーの凍結ステップを使用してアプリケーション ツリーの状態を保持し、認識結果を向上させます。
  • 要素から値を抽出する場合は、Windows オートメーション API を使用する場合と同様に、値を抽出アクションを使用します。要素の値が ISA モードで認識されない場合は、画像からテキストを抽出アクションを実行してください。
  • 拡張 OCR 設定は、ocr.cfg ファイルで編集できます。詳細については、拡張 OCR 設定を参照してください。
  • TTF フォントまたは UI スクリーンショットのいずれかを使用して、Tesseract が文字セットを認識できるようにトレーニングすることができます。詳細については、Tesseract のトレーニングを参照してください。

重要 リモート デスクトップ プロトコル (RDP) を介して Windows 自動デバイスにリモートで接続する場合、解像度と色深度はコンピュータとリモート デバイス間のネットワーク接続速度に依存します。ロボットがイメージ ファインダーとIntelligent Screen Automation (ISA) を使用している場合、異なるロボットの実行で異なる接続速度が問題を引き起こす可能性があります。イメージ ファインダーおよび ISA では、同一のアプリケーション状態で、ピクセル単位で同一の画像を常に受信することが重要です。「開く」ステップの RDP 接続には、明示的に指定された同じ解像度と色深度パラメータ (g: デスクトップ ジオメトリ (WxH) およびa: 接続の色深度) を常に使用してください。例:

rdp://user1:MyPassword@MyDesktop?g=640x480&a=16

UI 認識言語の変更または追加

デフォルトでは、ISA は、ocr.cfg ファイルで指定した言語を使用します。UI 認識言語を追加または変更する場合は、OCR エンジンと言語の変更トピックを参照してください。特定のコンピュータの ISA UI 認識言語を変更する場合は、次の手順を実行します。

  1. テキスト エディターで、次のように lib ディレクトリにある isa_v1.cfg ファイルを開きます。
    • Desktop Automation サービスがインストールされた Windows ベースの自動化されたコンピュータでは、

      C:\ProgramData\Kofax RPA\[ビルド番号]\lib\tessdata.

      自動化されたコンピュータに複数のバージョンの Desktop Automation サービスがインストールされている場合は、ISA を使用するデスクトップを自動化するサービスのバージョンを確認します。詳細については、Desktop Automation サービスの設定トピックの「[Windows] タブ」を参照してください。
    • 組み込みブラウザを使用するローカルの Windows ベースのコンピュータでは、

      Kofax RPA のインストール ディレクトリの nativelib\hub\windows-x32\[ビルド番号]\lib*。例:

      C:\Program Files\Kofax RPA 10.6.0.0 x64\nativelib\hub\windows-x32\622\lib

    • 組み込みブラウザを使用するローカルの Linux ベースのコンピュータでは、

      nativelib/hub/linux-x64/<build number>/lib in the Kofax RPA installation directory.例:

      Kofax_RPA_10.6.0.0_x64/nativelib/hub/linux-x64/533/lib

    * ビルド番号は、プログラムのバージョンごとに異なります。

  2. ocr_language パラメータ内の default を選択した言語に置き換えます。複数の言語を使用する場合は、ocr_language=eng+jpn のように + 記号を使用して別の言語を追加します。ファイルを保存して閉じます。
  3. 変更を有効化するには、Desktop Automation サービスを再起動します。

デフォルトの認識言語に戻すには、ocr_language パラメータ内で default を指定して、上記の手順を実行します。

Tesseract の UI 認識言語を追加する

Tesseract OCR エンジンを使用する場合、ISA はデフォルトで英語 UI を自動化できます。UI 認識の言語を追加するには、次の手順を使用します。認識言語の変更については、「デフォルトの OCR 言語の変更」を参照してください。スクリーン認識で複数の言語を同時に使用すると、ロボットの実行が遅くなり、認識結果が低下することに注意してください。

OmniPage OCR エンジンには、Kofax RPA インストールでサポートされているすべての言語が含まれています。
  1. 必要な言語の .traineddata ファイルを https://github.com/tesseract-ocr/tessdata からダウンロードします。たとえば、日本語のファイルは jpn.traineddata です。
    重要 ダウンロードした .traindata ファイルが、使用する tesseract.dll ファイルのバージョンと互換性があることを確認します。互換性については、https://github.com/tesseract-ocr/tessdata の traineddata ダウンロード ページの下部に公開されている README ファイルを参照してください。
  2. ダウンロード済みのトレーニングしたデータ ファイルを適切なフォルダにコピーします。
    • Desktop Automation サービスがインストールされた Windows ベースの自動化されたコンピュータでは、

      Desktop Automation サービス インストール ディレクトリの DesktopAutomationService\lib\tessdata。例:

      C:\Program Files (x86)\Kofax RPA DesktopAutomation 10.6.0 x32\DesktopAutomationService\lib\tessdata

    • 組み込みブラウザを使用するローカルの Windows ベースのコンピュータでは、

      Kofax RPA のインストール ディレクトリの nativelib\hub\windows-x32\[ビルド番号]\lib\tessdata* にコピーします。例:

      C:\Program Files\Kofax RPA 10.6.0.0 x64\nativelib\hub\windows-x32\622\lib\tessdata

    • 組み込みブラウザを使用するローカルの Linux ベースのコンピュータでは、

      Kofax RPA インストール ディレクトリの nativelib/hub/linux-x64/<build number>/lib/tessdata。例:

      Kofax_RPA_10.6.0.0_x64/nativelib/hub/linux-x64/533/lib/tessdata

    * ビルド番号は、プログラムのバージョンごとに異なります。

  3. 上記の「UI 認識言語の変更または追加」セクションの説明に従って、UI 認識言語を変更します。

Windows オプション


Windows ツリー モード

Windows アプリケーション用のウィジェット ツリーを生成するために、Kofax RPA は、Windows に組み込まれた UI オートメーション フレームワークを使用します。また、Kofax RPA には、特定のアプリケーションに対する複数の拡張サポートが用意されています。Kofax RPA の拡張機能を使用してアプリケーションを操作している際に問題が発生した場合は、[Windows] ツリー モードでの選択を解除し、アプリケーションをオフにします。

Excel

スプレッドシートからセルを取得するなどの、Microsoft Excel の拡張サポートを有効にします。Kofax RPA では、Excel のサポートについても組み込み Excel ドライバー 機能で拡張されています。

以下のステップで Excel 上の操作をするときは、リモート デバイス上の Excel で「テキストを入力」ステップを使用する際に、Excel のスプレッドシートを編集モード (「編集」という語句が Excel のプログラム ウィンドウの左下隅に表示される状態) のままにしないでください。編集モードを終了するには、以下の手順を実行します。
  • キー プレス ステップを使用して Enter キーを押します。Excel の編集モードが終了し、現在のセルの下のセルが直接選択されます。
  • キープレス ステップを使用して Tab キーを押します。編集モードが中止され、現在のセルの右のセルが選択されます。
  • 別のセルをクリックします。
  • キープレス ステップを使用して F2 キーを押します。

詳細については、 Microsoft のドキュメントを参照してください。

Internet Explorer
Internet Explorer の拡張サポートを有効にして、DOM (Document Object Model) ツリーを取得することにより、アプリケーション ツリーでより正確な結果が得られます。また、Kofax RPA には、Web サイトにアクセスするための Chromium ベースの組み込み Web ブラウザが用意されています。Internet Explorer の拡張サポートの使用を検討している場合、次のことに注意してください。
  • Internet Explorer の拡張サポートが有効で、ロボットが Internet Explorer ウィンドウを検出した場合:
    • ドキュメント オブジェクト モデル (DOM) を横断し、JSON の表現を作成する Java スクリプトの一部が注入されます。これは、Internet Explorer ページのコンテキストで実行されます。
    • JSON は、ページ内の「kapowDataElement」ID を持つ入力タグに配置されます。
    • ロボットは JSON コンテンツを解析し、そのコンテンツからサブツリーを作成します。
  • Internet Explorer の拡張サポートが無効になっている場合、UI オートメーションを使用して Internet Explorer からオブジェクト ツリーを取得します (Microsoftの Inspect.exeを使用して取得するツリーと同じ)。
Java
状況によっては、Java Access Bridge が動作しないため、このオプションの選択を解除してレガシー モードに切り替えることをお勧めします。[Java] オプションは、Internet Explorer の Java アプレットにも影響を与えます。
SAP
SAP は他の Windows アプリケーションとは異なる方法で処理されます。SAP を使用した操作は、低速となる可能性のあるスクリプト API に依存します。このオプションをオフにすると、SAP サポートがオフになります。
非表示
アプリケーションのツリー全体を抽出するかどうかを指定します。デフォルトでは、このオプションが選択されています。この選択を解除すると、Kofax RPA は、多くのエレメントを含むリスト ボックスやテーブルなど、オフスクリーンとして報告されるエレメントをスキップします。選択を解除すると、ツリーの抽出に必要な時間が短縮されます。
レガシーの深度とインデックス

Kofax RPA 10.2 で使用されていたアプリケーション ツリーに「深度」属性と「インデックス」属性を追加します。「深度」属性と「インデックス」属性を持つコンポーネント ファインダーを使用する Kofax RPA バージョン 10.2 で作成されたロボットを使用する場合は、Kofax RPA 10.3 以降で動作するロボットに [レガシーの深度とインデックス] を選択します。

  • [最大深度]: ビュー内のすべてのアプリケーション ウィンドウに各ノードが表示する、ネストされたエレメントの最大数を設定します。
  • [兄弟の最大数]: ビュー内のすべてのアプリケーション ウィンドウに各ノードが表示する、兄弟エレメントの最大数を設定します。

    制限なしの場合は 0 を指定します。

Excel API 再試行カウント
Windows API から Excel ウィンドウにアクセスする際の再試行の回数を指定します。Excel 応答が遅い場合は、この回数を増やすことができます。
Excel API 再試行の待ち時間
Windows API から Excel ウィンドウにアクセスする際の再試行の間隔をミリ秒単位で指定します。