式に関するガイドライン
ロボットでアクションを定義するときに、値を更新したり、値を使用して計算を完了したり、値に対して操作を実行することが必要な場合があります。 式を使用してこれらのタスクを完了します。 式ごとに、正しい構文を使用する必要があります。
式について
式は値に対して操作を実行し、別の値を返します。
ロボットをビルドするときは、多くのフィールドで式を使用できます。 式で機能する値は、次のような多くの場所から取得できます:
-
ロボットが対話するアプリケーション。
-
別のアプリケーション。
-
定義する変数、パラメータまたはプロパティ。
-
定義する値。
実際の式の例は、「ユース・ケース」を参照してください。
算術演算子
算術演算子は、加算や減算などの算術演算を実行します。
| 演算子 | Python相当 | 説明 | 式 | 戻り値 |
|---|---|---|---|---|
| + | + | 加算 | ${2+2} |
4 |
- |
- |
減算 | ${3-1} |
2 |
* |
* |
乗算 | ${3*2} |
6 |
/ |
/ |
除算 | ${8/4} |
2 |
% |
% |
分割の残りを返すモジュロ | ${3%2} |
1 |
比較演算子
比較演算子は値を比較し、trueまたはfalseを返します。
| 演算子 | Python相当 | 説明 | 式 | 戻り値 |
|---|---|---|---|---|
> |
> |
より大きい |
${2>3} |
false |
< |
< |
より小さい |
${1<3} |
true |
>= |
>= |
以上 |
${2>=1} |
false |
<= |
<= |
以下 |
${4<=5} |
true |
== |
== |
等しい |
|
true |
論理演算子
論理演算子は、2つの比較を組み合せてtrueまたはfalseを返します。
| 演算子 | Python相当 | 説明 | 式 | 戻り値 |
|---|---|---|---|---|
&& |
and |
両方の文がtrueである必要があります |
|
true |
|| |
or |
いずれかの文がtrueである必要があります |
|
false |
反転演算子
反転演算子は、期待した結果と逆の結果を返します。
| 演算子 | Python相当 | 説明 | 式 |
|---|---|---|---|
! |
not |
NOT操作。比較の結果を反転 NOT操作( |
|
関数
関数はデータを取り込み、処理し、結果を返します。
| 関数 | 説明 | 書式 | 例 |
|---|---|---|---|
count() |
要素のコレクションのカウントを返します。 Python相当: |
説明: valueは、コレクション変数の名前です |
数値コレクション変数のカウントを返します
説明:
|
first() |
コレクション内の最初の要素を返します。 Python相当: |
説明: valueは、コレクション変数の名前です |
数値コレクション変数の最初の要素を返します
説明:
|
last() |
コレクション内の最後の要素を返します。 Python相当: |
説明: valueは、コレクション変数の名前です |
数値コレクション変数の最後の要素を返します
説明:
|
toNumber() |
数値文字列の整数または浮動小数を返します。 Python相当: 直接同等ではありませんが、 |
説明: valueは、返される数値です |
数値文字列値から数値を返します
文字列値に数値以外の文字が含まれている場合は、エラーが発生します。 たとえば、 |
toString() |
オブジェクトを表す文字列を返します。 Python相当: |
説明: valueは、返される文字列です |
数値を表す文字列を返します ${toString(1)}は1を返します個人の姓と名を返します 「個人」という名前のデータ型を定義します。 個人には2つのプロパティがあります: First_nameおよびLast_name。 次に、変数var1を定義します。 「個人」データ型のベースvar1。 ロボットは変数に対して次の値を返します:
このシナリオでは、次の式を使用します:
|
|
|
テキストの先頭と末尾の空白文字(スペース、タブ、その他の空白を含む)を削除します。 |
説明: valueは変数の名前です |
先頭または末尾の空白文字のない値を返します
|
subString() |
文字列内の指定された文字を返します。 索引はゼロ・ベースです。 平易な英語では、ゼロ・ベースのインデックスは、0で値のカウントを開始することを意味します。 たとえば、値
ABCにsubString関数を使用している場合:
Python相当: |
説明:
|
文字のサブセットを返します
電話番号の最後の4桁を返します
|
formatString() |
位置プレースホルダを使用してテンプレート文字列を書式設定します。 テンプレートおよび指定されたすべての値を文字列に変換し、位置引数でのみ文字列書式設定を適用します。 これは、{}、{0}、{1}などのプレースホルダをサポートします。 ノート: 名前付きプレースホルダ(たとえば{name})はサポートされていません。Python相当: |
説明:
|
次の例の書式付き文字列を返します 基本的な位置書式設定
戻り値
複数値
戻り値
インデックス付きプレースホルダ
戻り値
余分な値は無視されます
戻り値
値が欠落するとIndexErrorが発生する
戻り値
指定されたプレースホルダによりKeyErrorが呼び出されます。
戻り値
中カッコのエスケープ
戻り値
カスタムXPath式
戻り値
データ・ステッチ・アクションの場合:
${$VARIABLE.result} = ${formatString($VARIABLE.template, $VARIABLE.values)}のようにformatString関数を使用します。
|
式構文の書式設定ルール
ロボット・アクションまたはロボット・リソースを作成する場合は、多くのフィールドに式の構文を入力できます。 式ごとに正しい構文を使用する必要があります。
一般的な書式設定ルール
すべての式に適用される一般的なルールもあります。
| ガイドライン | 詳細情報 |
|---|---|
|
次の構文を使用してすべての式を書式設定: |
すべての式全体を中カッコで囲みます。 たとえば: ${toString($VARIABLE.CurrentInvoice[InvoiceAmount]) == $VARIABLE.InvAmt && $VARIABLE.CurrentInvoice[SupplierName] ==$VARIABLE.SuppName} |
|
すべてのリテラル文字列を引用符で囲みます: |
リテラル文字列は、入力する任意の直線テキストです。 たとえば:
|
|
リテラル番号は使用できますが、指数を使用することはできません |
サポートされている値:
サポート対象外:
|
|
操作の順序がグローバルに確立された優先順位のルールに従うことを期待 |
たとえば、論理演算子の両側の式は、論理演算子が評価される前に評価されます。 |
プレースホルダー値の書式設定ルール
変数、ロボット接続、入出力プロパティなどの各プレースホルダー値には、式構文の独自の書式設定ルールがあります。
| 値 | 書式 |
|---|---|
|
|
入力プロパティの書式
説明:
入力プロパティのデータ型プロパティの書式 この形式は、1つ以上のプロパティを持つカスタム・データ型の入力プロパティに基づいて、データ型プロパティの1つを参照する必要がある場合に使用します。
説明:
ノート: 入力プロパティはネストできます。 ネストされたプロパティについても同じ書式設定ルールに従います。 たとえば:
|
|
|
出力プロパティのフォーマット
説明:
出力プロパティのデータ型プロパティの書式 この形式は、1つ以上のプロパティを持つカスタム・データ型に出力プロパティを基に、データ型プロパティの1つを参照する必要がある場合に使用します。
説明:
ノート: 出力プロパティはネストできます。 これらのネストされたプロパティについても同じ書式設定ルールに従います。 たとえば:
|
|
|
説明:
|
|
|
説明:
|
|
|
説明:
|
|
|
変数の書式
説明:
変数のデータ型プロパティの書式 この形式は、1つ以上のプロパティを持つカスタム・データ型に変数を基に、プロパティのいずれかを参照する必要がある場合に使用します。
説明:
ノート: 変数はネストされたプロパティを持つことができます。 これらのネストされたプロパティについても同じ書式設定ルールに従います。 たとえば:
|
文字列を数値に変換するタイミング
「テキストの取得」アクションを使用してアプリケーションから値を取得する場合、Oracle Integrationは値を文字列として格納します。 値を別の数値に追加したり、別の数値と比較したりするなど、値に対して数値関数を実行する場合は、最初に値を数値に変換する必要があります。
値を数値に変換しない場合、数値関数は想定どおりに機能しません。
toNumber関数を使用して、文字列を数値に変換します。 「関数」を参照してください。