関数
レコードのデータの変換、計算の実行、Visualforce 属性の値の指定を行うには、関数を使用します。
関数は、評価する Visualforce 式で使用する必要があります。Visualforce ページでは、次の関数を使用できます。
日付および時間関数
| 関数 | 説明 | 使用 |
|---|---|---|
| DATE | 入力した年、月、および日の値から日付値を返します。Salesforce では、数式項目内の DATE 関数の値が、うるうでない年の 2 月 29 日などのように無効な日付である場合に、詳細ページにエラーを表示します。 | DATE(year,month,day)。year に 4 桁の年、month に 2 桁の月、day に 2 桁の日を指定します。 |
| DATEVALUE | 日付/時間またはテキストの式に対して日付型の値を返します。 | DATEVALUE(expression)。expression に、日付/時間かテキスト値、差し込み項目、または式を指定します。 |
| DATETIMEVALUE | 年、月、日、および GMT 時刻値を返します。 | DATETIMEVALUE(expression)。expression に、日付/時間かテキスト値、差し込み項目、または式を指定します。 |
| DAY | 月の日付を、1 から 31 までの数値形式で返します。 | DAY(date)。date を、日付項目や TODAY() などの値で指定します。 |
| MONTH | 数値形式で指定された日付の中の、1 (1 月) から 12 (12 月) までの数値を返します。 | MONTH(date)。date に、返される月を含む日付を表す項目または式を指定します。 |
| NOW | 現在の日付/時間を返します。
NOW 関数は、現在の日付と時刻を GMT タイムゾーンで返します。たとえば、{!NOW()} の場合:
ヒント
|
NOW() |
| TODAY | 現在の日付を日付データ型で返します。
TODAY 関数は、現在の日付を返します。たとえば、次のマークアップの場合:
ヒント
|
TODAY() |
| YEAR | 指定された日付の 4 桁の年を数値形式で返します。 | YEAR(date)。date に、返される年を含む項目または式を指定します。 |
情報関数
| 関数 | 説明 | 使用 |
|---|---|---|
| BLANKVALUE | 式に値があるかどうかを判断し、ない場合は代替式を返します。式に値がある場合は、式の値を返します。 | BLANKVALUE(expression, substitute_expression)。expression に、評価する式を指定します。substitute_expression に、空白値を置き換える値を指定します。 |
| ISBLANK | 式に値があるかどうかを判断し、ない場合は TRUE を返します。値を含む場合は FALSE を返します。 | ISBLANK(expression)。expression に、評価する式を指定します。 |
| NULLVALUE | 式が null (空白) かどうかを判断し、該当する場合は代替式を返します。式が値と一致する場合は、対応する結果を返します。 | NULLVALUE(expression, substitute_expression)。expression に、評価する式を指定します。substitute_expression に、空白値を置き換える値を指定します。 |
| PRIORVALUE | 項目の前の値を返します。 | PRIORVALUE(field) |
論理関数
算術関数
| 関数 | 説明 | 使用 |
|---|---|---|
| ABS | 数値の絶対値を計算します。数値の絶対値とは、正または負の記号のない数値のことです。 | ABS(number)。それぞれの number に、差し込み項目、式、または削除する記号を持つその他の数値を指定します。 |
| CEILING | 数値を、もっとも近い整数に切り上げます。 | CEILING(number)。number を切り上げられた値に置き換えます。 |
| EXP | e を指定した指数まで掛け合わせた値を返します。 | EXP(number)。number に、数値項目または 5 などの値を指定します。 |
| FLOOR | もっとも近い整数に切り捨てられた数値を返します。 | FLOOR(number)。number に、数値項目または 5.245 などの値を指定します。 |
| LN | 指定した数の自然対数を返します。自然対数は、定数 e の値 2.71828182845904 に基づきます。 | LN(number)。number に、自然対数を求める項目または式を指定します。 |
| LOG | 数値の基数 10 の対数を返します。 | LOG(number)。number に、基数 10 の対数の計算元項目または式を指定します。 |
| MAX | 数値のリストの中で最大の数値を返します。 | MAX(number, number,...) を使用し、number に最も高い数を取得する項目または式を指定します。 |
| MIN | 数値のリストの中で最小の数値を返します。 | MIN(number, number,...) を使用し、number に項目または式を指定します (これらの項目または式から、最も低い数が取得されます)。 |
| MOD | 数値を指定した除数で除算した後の剰余を返します。 | MOD(number, divisor)。number を除算する項目または式で置き換え、divisor には、約数として使用する数値を指定します。 |
| ROUND | 指定した数値にもっとも近い数値を返します。新しい数値は、指定した桁数で制限します。 | ROUND(number, num_digits)。number に、値を丸める項目または式を指定します。num_digits に、値を丸めるときに考慮する小数点以下の桁数を指定します。 |
| SQRT | 指定された数値の正の平方根を返します。 | SQRT(number)。number に、平方根にする項目または式を指定します。 |
テキスト関数
| 関数 | 説明 | 使用 |
|---|---|---|
| BEGINS | テキストが特定の文字列で始まるかどうかを判断し、該当する場合は TRUE を返します。偽である場合は FALSE を返します。 次のマークアップは、商談の StageName 項目が文字列「Closed」で開始する場合、true を返します。標準フェーズ名「Closed Won」(商談成立) と「Closed Lost」(不成立) の場合、どちらも true が返されます。
この関数は、大文字と小文字を区別するため、compare_text の値には必ず正しい大文字を使用してください。また、この関数は text にのみ機能し、number やその他のデータ型には機能しません。 |
BEGINS(text, compare_text)。text, compare_text に、比較する文字または項目を指定します。 |
| BR | テキスト文字列に改行を挿入します。 | BR() |
| CASESAFEID | 15 文字の ID を 大文字と小文字を区別しない 18 文字の ID に変換します。 | CASESAFEID(id)。id にオブジェクトの ID を指定します。 |
| CONTAINS | テキストの 2 つの引数を比較し、最初の引数に 2 番目の引数が含まれる場合には TRUE を返します。���まれない場合は FALSE を返します。 この例は、Product_Type というカスタムテキスト項目の内容を確認し、「part」という言葉の含まれる商品に対して「Parts」を返します。それ以外の場合は、「Service」と表示します。
この関数は、大文字と小文字を区別するため、compare_text の値には必ず正しい大文字を使用してください。 |
CONTAINS(text, compare_text)。text に、compare_text の値を含むテキストを指定します。 |
| FIND | テキスト文字列中での指定した文字列の位置を数値で返します。 | FIND(search_text, text[, start_num])。search_text に検索対象となる文字列を指定します。text には、検索対象となる項目または式を指定します。start_num に���、左から右に向かって検索を開始する文字数を指定します。 |
| GETSESSIONID | ユーザのセッション ID を返します。 | GETSESSIONID() |
| HTMLENCODE | 大なり記号 (>) などの HTML で予約されている文字を > などの HTML エンティティ文字に置き換えて、HTML で使用するテキスト文字列や差し込み項目値を符号化します。 | {!HTMLENCODE(text)}。text に、差し込み項目または予約文字を含むテキスト文字列を指定します。 |
| ISPICKVAL | 選択リスト項目の値が指定したテキストリテラルと等しいかどうかを判断します。 | ISPICKVAL(picklist_field, text_literal)。picklist_field には選択リストの差し込み項目名を指定し、text_literal には引用符で囲んだ選択リストの値を指定します。text_literal を差し込み項目、または関数の結果にすることはできません。 |
| JSENCODE | バックスラッシュ (\) などのエスケープ文字をアポストロフィー (') などの安全でない JavaScript 文字の前に挿入して、JavaScript で使用するテキスト文字列や差し込み項目値を符号化します。 | {!JSENCODE(text)}。text に、差し込み項目または安全でない JavaScript 文字を含むテキスト文字列を指定します。 |
| JSINHTMLENCODE | HTML で予約されている文字を HTML エンティティ文字に置き換えて、エスケープ文字を安全でない JavaScript 文字の前に挿入し、HTML タグ内の JavaScript で使用するテキスト文字列や差し込み項目値を符号化します。JSINHTMLENCODE(someValue) は、JSENCODE(HTMLENCODE((someValue)) と同等の便利な関数です。つまり、JSINHTMLENCODE は HTMLENCODE で最初に someValue を符号化してから、JSENCODE で結果を符号化します。 | {!JSINHTMLENCODE(text)}。text に、差し込み項目または安全でない JavaScript 文字を含むテキスト文字列を指定します。 |
| LEFT | テキスト文字列の先頭から、指定した数の文字を返します。 | LEFT(text, num_chars)。text に、返す項目または式を指定します。num_chars に、返す文字列の先頭からの文字数を指定します。 |
| LEN | 指定したテキスト文字列の文字数を返します。 {!LEN(Account.name)} は、取引先名の文字数を返します。LEN は、文字と空白をカウントします。{!LEN("The Spot")} は 8 を返します。 |
LEN(text)。text に、返される長さを持つ項目または式を指定します。 |
| LOWER | 指定したテキスト文字列内のすべての英字を小文字に変換します。英字でない文字は、この関数の影響を受けません。地域が適用されている場合は地域ルールが適用されます。 | LOWER(text, [locale]) を使用し、text に小文字に変換する項目またはテキストを指定して、locale には任意で 2 文字の ISO 言語コードまたは 5 文字の地域コードを指定します。 |
| LPAD | テキスト文字列の左側に指定した文字を挿入します。 |
LPAD(text, padded_length[, pad_string])。次の変数を指定します。
|
| MID | テキスト文字列中の途中で指定した開始位置から、指定した数の文字を返します。 | MID(text, start_num, num_chars)。text に、文字列を返すときに使用する項目または式を指定します。start_num に、開始位置として使用する文字の、左から数えた文字数を指定します。num_chars に、返す合計文字数を指定します。 |
| RIGHT | テキスト文字列の末尾から、指定した数の文字を返します。 | RIGHT(text, num_chars)。text に、返す項目または式を指定します。num_chars に、返す文字列の最後尾からの文字数を指定します。 |
| RPAD | テキスト文字列の右側に指定した文字を挿入します。 |
RPAD(text, padded_length[, 'pad_string'])。次の変数を指定します。
|
| SUBSTITUTE | テキスト文字列中の元のテキストを新規のテキストで置き換えます。 | SUBSTITUTE(text, old_text, new_text)。text に、値の代入をする項目か値を指定します。old_text に、置換対象となるテキストを指定します。new_text に old_text を置換するテキストを指定します。 |
| TEXT | 数式を使用するすべての場所で、パーセント、数値、日付、日付/時間、または通貨の各項目のデータ型をテキストに変換します。また、承認ルール、承認ステップルール、ワークフロールール、エスカレーションルール、割り当てルール、自動レスポンスルール、入力規則、数式項目、項目自動更新、およびカスタムボタンとカスタムリンクで、選択リスト値をテキストに変換します。 | TEXT(value)。value に、テキスト形式に変換する項目ま���は式を指定します。この関数では、小数点 (ピリオド) またはマイナス記号 (ダッシュ) 以外の特殊文字を使用しないでください。 |
| TRIM | テキスト文字列の先頭と末尾から、スペースとタブを削除します。 | TRIM(text)。text に、タブとスペースを削除する項目または式を指定します。 |
| UPPER | 指定したテキスト文字列内のすべての英字を大文字に変換します。英字でない文字は、この関数の影響を受けません。地域が適用されている場合は地域ルールが適用されます。 | UPPER(text, [locale])。必要に応じて、text を大文字に変換する項目または数式と置き換え、locale は、省略可能な 2 文字の ISO 言語コードまたは 5 文字の地域コードに置き換えます。 |
| URLENCODE | RFC 3986, Uniform Resource Identifier (URI): Generic Syntax での定義に従って、URL では不正な空白スペースなどの文字を、これらの文字を表すコードに置き換えて、URL で使用するテキスト文字列や差し込み項目値を符号化します。たとえば、空白スペースは %20 に置き換えられ、感嘆符は %21 に置き換えられます。 | {!URLENCODE(text)}。text に、差し込み項目または符号化するテキスト文字列を指定します。 |
| VALUE | テキスト文字列を数値に変換します。 | VALUE(text)。text に、数値に変換する項目または式を指定します。 |
高度な関数
| 関数 | 説明 | 使用 |
|---|---|---|
| GETRECORDIDS | リストビューまたは関連リストなどのリスト内で選択したレコードのレコード ID の形式で、配列された文字列を返します。 | {!GETRECORDIDS(object_type)}。object_type に、取り出したいレコードのカスタムオブジェクトまたは標準オブジェクトへの参照を指定します。 |
| INCLUDE | Sコントロールスニペットの内容を返します。複数の Sコントロールで共通のコードを再利用する場合に、この関数を使用します。 | {!INCLUDE(source, [inputs])}。source に、参照する Sコントロールスニペットを指定します。inputs に、スニペットに渡す情報を指定します。 |
| LINKTO | リンク (href およびアンカータグ) の形式で、カスタムSコントロールまたは Salesforce ページへの相対 URL を返します。 | {!LINKTO(label, target, id, [inputs], [no override]}。label に、リンクのテキストを指定します。target に URL を指定します。id に、レコードへの参照を指定します。入力は省略可能で、リンクには追加のパラメータを指定できます。上書きなし 引数も省略可能で、デフォルトは「False」です。これは、$Action.Account.New など標準の Salesforce ページへの対象に適用されます。別の箇所で上書きを指定したかどうかに関係なく標準の Salesforce ページを表示したい場合は、上書きなしを「True」に置き換えます。 |
| REGEX | テキスト項目を正規表現と比較し、一致する場合に TRUE を返します。該当しない場合は FALSE を返します。正規表現とは、特定の構文規則に従う文字列の形式を記述するための文字列です。 | REGEX(text, regex_text)。text にはテキスト項目を、regex_text には一致させる正規表現を指定します。 |
| REQUIRESCRIPT | 指定した URL に対する script タグとそのソースを返します Force.com AJAX ツールキットまたはその他の JavaScript ツールキットを参照する場合に、この関数を使用します。 | {!REQUIRESCRIPT(url)}。url に、必要なスクリプトへのリンクを指定します。 |
| URLFOR | Visualforce ページにある静的リソースアーカイブ内のアクション、Sコントロール、Visualforce ページ、またはファイルの相対 URL を返します。 これは、静的リソースアーカイブ (.zip ファイルや .jar ファイルなど) に含まれるファイルへの参照を返すために使用できます。{!URLFOR(resource, path)}。resource を差し込み変数 ($Resource.resourceName など) として表される静的リソースアーカイブの名前で置き換え、path をアーカイブ内の参照するファイルへのローカルパスに置き換えます。 |
{!URLFOR(target, id, [inputs], [上書きなし])}。target に URL またはアクション、Sコントロール、静的リソースマージ変数を指定します。id に、レコードへの参照を指定します。inputs に、省略可能な追加のパラメータを指定します。上書きなし 引数も省略可能で、デフォルトは「False」です。これは、$Action.Account.New など標準の Salesforce ページへの対象に適用されます。別の箇所で上書きを指定したかどうかに関係なく標準の Salesforce ページを表示したい場合は、上書きなしを「True」に置き換えます。 Visualforce ページにアクセスするには、「apex/」を先頭に付けてページの名前を入力します。たとえば、Visualforce ページの名前が myTestPage の場合は、{!URLFOR("apex/myTestPage"} を使用します。 |
| VLOOKUP | Excel の VLOOKUP() 関数と同様に、カスタムオブジェクトに関連する値を検索し、その���を返します。 | VLOOKUP(field_to_return, field_on_lookup_object, lookup_value)。field_to_return には返す値が含まれている項目を、field_on_lookup_object には一致させる値が含まれている関連オブジェクト上の項目を、また lookup_value には一致させる値を指定します。入力規則には VLOOKUP() のみ使用できます。たとえば field_on_lookup_object が存在しないなどの理由で関数が失敗した場合は、入力規則自体にエラーメッセージを指定できます。 |
関数の符号化
| 関数 | 説明 | 使用 |
|---|---|---|
| HTMLENCODE | 大なり記号 (>) などの HTML で予約されている文字を > などの HTML エンティティ文字に置き換えて、HTML で使用するテキスト文字列や差し込み項目値を符号化します。 | {!HTMLENCODE(text)}。text に、差し込み項目または予約文字を含むテキスト文字列を指定します。 |
| JSENCODE | バックスラッシュ (\) などのエスケープ文字をアポストロフィー (') などの安全でない JavaScript 文字の前に挿入して、JavaScript で使用するテキスト文字列や差し込み項目値を符号化します。 | {!JSENCODE(text)}。text に、差し込み項目または安全でない JavaScript 文字を含むテキスト文字列を指定します。 |
| JSINHTMLENCODE | HTML で予約されている文字を HTML エンティティ文字に置き換えて、エスケープ文字を安全でない JavaScript 文字の前に挿入し、HTML タグ内の JavaScript で使用するテキスト文字列や差し込み項目値を符号化します。JSINHTMLENCODE(someValue) は、JSENCODE(HTMLENCODE((someValue)) と同等の便利な関数です。つまり、JSINHTMLENCODE は HTMLENCODE で最初に someValue を符号化してから、JSENCODE で結果を符号化します。 | {!JSINHTMLENCODE(text)}。text に、差し込み項目または安全でない JavaScript 文字を含むテキスト文字列を指定します。 |
| URLENCODE | RFC 3986, Uniform Resource Identifier (URI): Generic Syntax での定義に従って、URL では不正な空白スペースなどの文字を、これらの文字を表すコードに置き換えて、URL で使用するテキスト文字列や差し込み項目値を符号化します。たとえば、空白スペースは %20 に置き換えられ、感嘆符は %21 に置き換えられます。 | {!URLENCODE(text)}。text に、差し込み項目または符号化するテキスト文字列を指定します。 |