HeartCore Robo DeveloperFAQ

目次

  1. 1. 変数
  2. 2. コマンド
  3. 3. 設定
  4. 4. その他

一般的なFAQ はこちら

1. 変数

  • 変数の基本的な使い方を教えてもらえますか?

    HeartCoreRobo Desktopでの変数定義は
    「Var」「Varf」「Eval」の3種類で定義することができます。
    Var :文字型変数の定義
    Varf:特殊文字を用いる文字型変数の定義
    Eval:数値型変数の定義

    定義した変数を参照する際には
    "{定義済みの変数名}"で参照することができます。

  • 変数の中身を確認したいのですが?

    定義した変数の中身を確認したい場合、以下の方法があります。

    1. Logコマンドを用いて実行ログに変数値を出力する方法

    2. ツールパネルの変数タブの「実行変数」で確認する方

  • システム変数はどのようなものがありますか?

    よく使用するシステム変数の一覧はURLを参照してください。
  • 変数のスコープには、どのようなものがありますか?

    HeartCore Robo Desktopではグローバル変数とローカル変数の二種類の変数が存在します。
    グローバル変数はコマンドによって明示的に宣言は行いませんが、変数を宣言する位置によってグローバル変数かローカル変数かが決まります。

    グローバル変数:プロシージャやifやforなどのブロック外で変数を宣言することで、スクリプト全体で使える変数
    ローカル変数:プロシージャやifやforなどのブロック内で変数を定義することで、そのブロック内のスコープのみで使用可能な変数
  • エラーハンドリングを行いたいのですが?

    直前のコマンドが正常に終了したかどうかを{_EXIT_CODE}で取得することができます。

    直前のコマンドが成功していた場合
    {_EXIT_CODE} == 0

    直前のコマンドが失敗していた場合
    {_EXIT_CODE} != 0

    の条件式を書くことでエラーハンドリングが行えます。
  • 変数が定義されていない場合のエラーハンドリングを行いたいのですが?

    if の条件式で 「exisits」を用いることで変数が定義されているかどうかの判定が行えます。


    使用例(指定したエクセルのセルの中身が空だったらば、等)
  • 改行等(特殊文字)を変数内で定義したい場合、どうしたらいいですか?

    varf コマンドを用いることで特殊文字を利用することができます。

目次に戻る

2. コマンド

  • 複数のエクセルファイルを使って処理を行いたい場合、どうすればいいですか?

    二つ以上のエクセルファイルを使って処理を行いたい場合
    処理を行いたいエクセルファイルそれぞれに(識別子)idを付けて処理を行う必要があります。

  • エクセル内の関数(SUM等)で計算した結果の値を取得したい場合、どうしたらいいですか?

    Excel select で値を取得する際に 「evaluate=true」のオプションを付けることで計算式ではなく、
    関数の処理した結果を取得することが可能です。

  • Compareto後のクリックする場所を細かく指定したいのですが?

    Comparetoコマンドやclick image コマンドで使用している画像の設定で変更が可能です。例としての方法は以下になります。

    1. 各コマンドのプロパティを開き

    2. クリックする場所を変更したい画像を選択

    3. 写真のアイコンを選択

    4. 赤い十字の場所を変更することでロボット実行時のクリックする場所を右クリックで変更することができます。
  • 秒数指定で処理終了を待つ方法以外の方法が知りたいのですが?

    「指定した画像が表示されるのを待つ」または「指定した画像が消えるのを待つ」
    などの設定がComparetoコマンドと同じ要領で使えるWaitforコマンドをお試しください。
  • 指定したディレクトリ内にあるファイルの一覧を取得したい場合、どうしたらいいですか?

    Execコマンドを用いることで簡単にファイルの一覧を取得することができます。

    例 Windows)Exec "cmd.exe /C dir <一覧を取得したいパス> /b"

    以上のコマンドを使うことでファイルの一覧が取得できます。
  • 処理を途中で終了させたいのですが、どうしたらいいですか?

    スクリプトの途中で処理を終了させたい場合「Exit」コマンドを用いることで
    処理を途中で終了させることが可能です。
  • 処理を別のtprファイルに書き、呼び出したい場合、どうしたらいいですか?

    include コマンドでtprファイルを指定することで 別のtprファイルを呼び出すことができます。
  • 時間の設定方法を知りたい場合、どうしたらいいですか?

    waitコマンドなどに用いられる時間の記述方法は以下になります。
    wait 1 :ミリ秒
    wait 1s :秒
    wait 1m:分
    wait 1h:時
    wait 1d:日
  • 日付の操作を行いたい場合、どうしたらいいですか?

    HCRの標準コマンドでは日付の加算をすることはできませんが、別途プラグインをHCRに追加することで日付の加算を簡単に取得することができるようになります。
    プラグインの追加方法及びプラグインの導入後日付の加算手法は以下の通りです。

    ●プラグインの追加方法

     ①プラグインを以下のURLからダウンロードする。
       http://www.t-plan.ltd.uk/releases/robot/plugins/utils_v0.5.zip

     ②保存されたら、utils_v0.5.zipを解凍する。

     ③解凍してできるフォルダ内のutils.jarをHCRのインストールフォルダ内pluginsフォルダ配下にコピーする。
     (例:C:¥Program Files (x86)¥HeartCore¥Robo¥plugins)

     ④HCRを起動している場合は再起動する。(プラグインの導入完了)

    ●翌日の日付を取得するコード(プラグインの導入後)

     Run "com.tplan.utils.GetDate" add="1d" var="day"

     ※このコードではday変数に翌日日付が格納されます。
     ※同様に、add="1M"とすれば1ヶ月後の日付を取得するといったこともできます。
  • includeコマンドを使うと report コマンド または Includeコマンド でエラーになるのですが、なぜですか?

    Report コマンドは「一度のロボット実行内で同一のファイル名を作成してしまう」とコンパイルの際にエラー表記されます。
    Include を行った先で同一のファイル名の report コマンドが使われている可能性がありますので確認してください。

    特に初期設定で新規tprファイルを作成した際にはあらかじめ「Report result.xml」が入力されているので重複してしまうケースがよくあります。

目次に戻る

3. 設定

  • HeartCore Robo Desktopが開発時に認識しているデスクトップの解像度を確認することはできますか?

    タイトルバーにてご確認いただけます。
  • HeartCore Robo Desktopの開発中にデスクトップの解像度を変更すると何か影響はありますか?

    解像度を変更する前に取得した画像を使ったイメージマッチングでは期待した動作が得られない場合があります。

    HeartCore Robo Desktopは起動時のデスクトップ
    解像度を保持しているため、途中でデスクトップの解像度を変更する場合には必ずHeartCore Robo Desktop開発ツールを再起動する必要があります。
  • マウスを動かしてもロボットが止まらないようにしたい場合、どうしたらいいですか?

    ツールバーの編集 > プリファレンス設定

    スクリプト内のローカルマシン内の
    「マウス動作によるスクリプト一時停止を有効にする」のチェックボックスを外しますとマウスが動かされたとしてもロボットが停止することはありません。

目次に戻る

4. その他

  • ComparetoコマンドやWaitforコマンドなどに使う画像ファイルを新規で作成したい場合、どうしたらいいですか?

    1. ツールパネルのプロジェクトのコンポーネントイメージを右クリックして「新規イメージ」を選択


    2.使用したい画像の範囲を選択


    3.保存場所とファイル名を選択


    以上の手順で
    ComparetoコマンドやWaitforコマンドで用いる画像が作成できます。

    ※Compareto やClick image等の画像を使用するコマンドプロパティ内で+を押して画像ファイルの追加ウィンドウを表示し新しいファイル名を入力しても画像ファイルを作成することができます。
  • ブレイクポイントを設定したい場合、どうしたらいいですか?

    設定したい行の数字(行数)をクリックし赤い丸をつけることでブレイクポイントを設定できます。

    または右クリック > ブレイクポイントを追加

    でも同様にブレイクポイントを設定することができます。
    ステップ実行(一度に1コマンドずつ実行する)も合わせて利用するとデバッグが容易になると思うので是非ご利用ください
  • プロシージャに対して値を渡して処理できないか?

    可能です。方法は以下になります。

    プロシージャを呼び出す際に、スペース区切りで任意の値を渡すことができます。
    例)
    <プロシージャ名> <引数1> <引数2> …

    プロシージャ内で引数は変数として利用可能で 変数名 1 2 3 … N に格納されます。
    ※{0}にはプロシージャ名が定義されます。

    例)
    procedure <プロシージャ名> {
    var 引数1={1}
    var 引数2={2}
    }


  • 実行ライセンスでロボットを起動したい場合、どうしたらいいですか?

    CLIモードで実行ライセンスでのロボット実行ができます。
    詳細は参考URLを確認してください。
  • ロボット実行後に作成されるlogファイルが文字化けしている場合、どうしたらいいですか?

    ご利用端末のOSがWindowsでHeartCoreRoboのバージョンが4.4.1 の場合文字化けしてしまいます。
    こちらはバージョン4.4.3以降対応済みです。

目次に戻る

メニュー