[参照フィールドの挿入]が可能なテキスト入力では、ワークフロー実行時に 解決される インライン関数をいつでも入力することができます。
様々な関数がテンプレートとして用意してあり、nwadmin.exe ツールを使用すればさらに関数を追加することもできます。
また、関数を別の関数の引数として使用することもできます。
例:

関数動作
まず解析エンジンが挿入された参照トークンをすべて置換し、次にその結果作成されたテキストに関数が含まれるか検証します。
関数に引数として別の関数が含まれる場合は、最も内部の関数が最初に評価されます。
初めに参照トークンが置換されるため、参照トークンにも評価対象となる関数構文が含まれる場合があります。
関数の引数として使用されるテキストに関数構文(波かっこ({)またはコンマ)が含まれる場合は、引数の前後を{textstart}と{textend}で区切り、テキスト ブロックがさらに解析されないよう表示してください。
例えば、少数値を含む数値変数が関数に引き継がれ、お使いの地域でコンマを小数点記号として使用している場合、{textstart}と{textend}のトークンを使用する必要があります。
また、上記の例でアイテムの 「タイトル」が返される場合、タイトルにコンマが含まれ{textstart}{textend}ブロックが使用されていないと、指定された数字「2」の代わりに[サブ文字列]機能が最初のコンマ以降のテキストを第2の引数として扱い、関数でエラーが発生します。
参考となる関数
fn-abs
数値の絶対値を返します。
例
fn-abs({workflowvariable:number})
引数
fn-currency
通貨書式付きテキストとして数値を表します。
例
fn-currency({workflowvariable:cost})
引数
fn-datediffdays
2つの日付の間の日数を算定します。結果は部分日を含んだ小数値になることがあります。
例
fn-datediffdays({workflowvariable:startdate}, {workflowvariable:enddate})
引数
- 開始日 日付間の差を計算する際の開始日と時刻です。
- 終了日 日付間の差を計算する際の終了日と時刻です。
fn-datediffhours
2つの日付の間の時間数を決定します。結果は部分時間を含む少数値になることがあります。
例
fn-datediffhours({workflowvariable:startdate}, {workflowvariable:enddate})
引数
- 開始日 日付間の差を計算する際の開始日と時刻です。
- 終了日 日付間の差を計算する際の終了日と時刻です。
fn-datediffminutes
2つの日付の間の分数を決定します。結果は部分分を含む少数値になることがあります。
例
fn-datediffminutes({workflowvariable:startdate}, {workflowvariable:enddate})
引数
- 開始日 日付間の差を計算する際の開始日と時刻です。
- 終了日 日付間の差を計算する際の終了日と時刻です。
fn-datediffseconds
2つの日付の間の秒数を決定します。結果は部分秒を含む少数値になることがあります。
例
fn-datediffseconds({workflowvariable:startdate}, {workflowvariable:enddate})
引数
- 開始日 日付間の差を計算する際の開始日と時刻です。
- 終了日 日付間の差を計算する際の終了日と時刻です。
fn-formatdate
特定の形式のテキストで日付/時刻の値を表します。
例
fn-formatdate({workflowvariable:mydate}, d)
引数
fn-insert
より大きい文字列にテキストを追加します。
例
fn-insert({workflowvariable:text}, 4, {itemproperty:title})
引数
- テキスト 変更されるテキストです。
- 開始位置 新しいテキストが挿入される文字位置です。文字列の最初の文字は位置0となります。
- 新しいテキスト 開始位置に加えられる追加テキストです。
fn-length
文字列の文字数を返します。
例
fn-length({workflowvariable:text})
引数
fn-max
2つの数のうち大きい方を返します。
例
fn-max({workflowvariable:number1}, {workflowvariable:number2})
引数
- 数1 比較対象となる最初の数です。
- 数2 比較対象となる2番目の数です。
fn-min
2つの数のうち小さい方を返します。
例
fn-min({workflowvariable:number1}, {workflowvariable:number2})
引数
- 数1 比較対象となる最初の数です。
- 数2 比較対象となる2番目の数です。
fn-newguid
グローバル一意識別子を生成します。
例
fn-newguid()
fn-padleft
指定された文字列を右揃えにし、特定の文字を全体に埋め込んで返します。
例
fn-padleft({workflowvariable:text}, 6)
fn-padleft({workflowvariable:text}, 6),-)
引数
- テキスト 埋め込まれる文字列です。
- 長さ 埋め込んだ結果の文字列の目標とする全体の長さです。
- 文字 任意です。元の文字列に埋め込まれる文字です。既定ではスペース文字を使用します。
fn-padright
指定された文字列を左揃えにし、特定の文字を全体に埋め込んで返します。
例
fn-padright({workflowvariable:text}, 6)
fn-padright({workflowvariable:text}, 6),-)
引数
- テキスト 埋め込まれる文字列です。
- 長さ 埋め込んだ結果の文字列の目標とする全体の長さです。
- 文字 任意です。元の文字列に埋め込まれる文字です。既定ではスペース文字を使用します。
fn-power
数を指定された累乗に上げます。
例
fn-power({workflowvariable:number}, {workflowvariable:power})
引数
- 数値 累乗に上げられる数です。
- 数値 累乗の数値です。
fn-remove
より大きい文字列中のテキスト セクションを削除します。
例
fn-remove({workflowvariable:text},0,3)
引数
- テキスト 変更されるテキストです。
- 開始位置 文字削除が開始される文字位置です。文字列の最初の文字は位置0となります。
- 長さ 任意です。開始位置から数えた削除される文字数です。既定では残りの文字はすべて削除されます。
fn-replace
より大きい文字列中のテキスト セクションを置換します。
例
fn-replace({workflowvariable:text},abc,{itemproperty:title})
引数
- テキスト 変更されるテキストです。
- 古い値 検索して置換されるテキストです。
- 新しい値 古い値と置換されるテキストです。
fn-round
小数点以下の値を最も近い整数に四捨五入します。
例
fn-round({workflowvariable:number})
引数
fn-substring
文字列からテキストの一部を抽出します。
例
fn-substring({workflowvariable:text},5,10)
引数
- テキスト 値が抽出されるテキストです。
- 開始インデックス 取得される最初の文字の、テキスト中における位置です。文字列の最初の文字は位置0となります。
- 文字数 開始インデックスから数えた、取得される文字の数です。
fn-tolower
文字列中のテキストをすべて小文字に書式設定します。
例
fn-tolower({workflowvariable:text})
引数
fn-totitlecase
文字列中のテキストの先頭文字を大文字に書式設定します。
例
fn-totitlecase({workflowvariable:text})
引数
- テキスト 先頭文字が大文字に変換される文字列です。
fn-toupper
文字列中のテキストをすべて大文字に書式設定します。
例
fn-toupper({workflowvariable:text})
引数
fn-trim
文字列から先頭と末尾の空白を削除します。
例
fn-trim({workflowvariable:text})
引数
- テキスト 先頭と末尾の空白が削除されるテキストです。
fn-xmlencode
html形式で安全に表示できるよう文字列をエンコードします。
例
fn-xmlencode({workflowvariable:text})
引数
fn-xmldecode
html形式で安全な文字列をデコードします。
例
fn-xmldecode({workflowvariable:text})
引数