Claris Studio の計算入門

重要  

顧客からのフィードバックを収集するためのプレビューとして使用できる Claris Studio の計算フィールドおよび計算エディタは、今後のリリースで大幅に変更される予定です。これは当社のビジョンへの第一歩に過ぎません。たとえば、Claris Studio の計算フィールドは現在仮想化されています。これは計算結果が保持されずレコードが表示されるたびに計算式が再計算されることを意味します。パフォーマンスは表示されるレコード数および計算フィールドの数によって異なる場合があります。このアプローチにより、長期的なアーキテクチャアプローチに取り組み続けると同時に、ユーザにより早くプレビューを提供することできます。

Claris Studio の フィードバックボタン [フィードバック] または Claris Community にフィードバックをお寄せいただき計算フィールドの向上にご協力ください。

この入門書には FileMaker Pro と Claris Studio の計算の違いについての簡単な一覧、サポートされている Claris Studio の計算関数の一覧、およびいくつかの既知の問題が記載されています。今後さらに多くの情報を共有する予定です。

FileMaker Pro と Claris Studio の計算の違い

Claris Studio の計算エンジンでは一般的な計算書式を活用するため、ユーザはより複雑なソリューションおよびプロセスをより簡単に構築して自動化できます。

  FileMaker Pro Claris Studio
算術演算子    
2 つの値を足す + +
1 番目の値から 2 番目の値を引く - -
1 番目の値に 2 番目の値を掛ける * *
1 番目の値を 2 番目の値で割る / /
1 番目の値を 2 番目の値で累乗する ^ **
演算の順序の優先順位を設定する ( ) ( )
比較演算子    
左側の値と右側の値が等しければ真 = ==
左側の値と右側の値が等しくなければ真 !=
左側の値が右側の値より大きければ真 > >
左側の値が右側の値より小さければ真 < <
左側の値が右側の値より大きいか、左側の値と右側の値が等しければ真 >=
左側の値が右側の値より小さいか、左側の値と右側の値が等しければ真 <=
論理演算子    
右側と左側の両方の値が真である場合のみ真 AND &&
左側と右側のいずれかの値が真である場合は真 OR ||
左側と右側の値のいずれか一方だけが真の場合は真 XOR XOR()
値を偽から真、または真から偽に変更する NOT !
文字列演算子    
右側のテキスト文字列を左側のテキスト文字列の末尾に追加する & +
文字列定数の先頭と終端を指定する " " ' ' または " "
空の値 "" '' (シングルクォーテーション) または "" (ダブルクォーテーション)
演算子文字を、演算子としてではなく文字として使用する場合に指定する \ 使用不可
計算式の結果に段落改行を挿入する 使用不可
計算式内のテキストコメントとして見なされる先頭と終端の文字を指定する /* */ /* */
計算式内の単一行コメントを識別する // //
フィールド参照    
現在のテーブル内のフィールドを参照する フィールド 1 テーブル A.フィールド 1
異なるテーブルからフィールドを参照する テーブル B::フィールド X 使用不可
その他の演算子    
ビットごとの AND 使用不可 &
ビットごとの OR 使用不可 |
ビットごとの XOR 使用不可 ^
ビットごとの符号付き右シフト 使用不可 >>
ゼロ埋め右シフト 使用不可 >>>
ゼロ埋め左シフト 使用不可 <<
テンプレート文字列 使用不可 ` `

Claris Studio の計算関数

これらは Claris Studio で現在サポートされている計算関数です。今後さらに多くの関数が追加される予定です。詳細情報については計算エディタのインライン説明を参照してください。

  FileMaker Pro Claris Studio
算術関数

ABS

Abs (数値) ABS (値)

CEILING

Ceiling (数値) CEILING (値, [ファクタ])

EVEN

使用不可 EVEN (値)

EXP

Exp (数値) EXP (値)

FLOOR

Floor (数値) FLOOR (値, [ファクタ])

INT

Int (数値) INT (値)

LOG

Log (数値) LOG (値, [底])

MOD

Mod (数値 ; 除数) MOD (被除数, 除数)

ODD

使用不可 ODD (値)

POWER

使用不可 POWER (底, 冪指数)

ROUND

Round (数値 ; 桁数) ROUND (値, [位])

ROUNDDOWN

使用不可 ROUNDDOWN (値, [位])

ROUNDUP

使用不可 ROUNDUP (値, [位])

SQRT

Sqrt (数値) SQRT (値)

SUM

Sum (フィールド {; フィールド...}) SUM (数値 1, [数値 2, ...])

MAX

Max (フィールド {; フィールド...}) MAX (数値 1, [数値 2, ...])

MIN

Min (フィールド {; フィールド...}) MIN (数値 1, [数値 2, ...])
論理関数

AND

使用不可 AND (式 1, [式 2, ...])

FALSE

使用不可 FALSE ( )

IF

If (条件式 ; 結果 1 {; 結果 2}) IF (論理式, 真の場合の値, [偽の場合の値])

NOT

使用不可 NOT (式)

OR

使用不可 OR (式 1, [式 2, ...])

TRUE

使用不可 TRUE ( )

XOR

使用不可 XOR (式 1, [式 2, ...])
Claris 関数

GET

Get ( )

GET (定義済み変数)

定義済み変数: アカウント名、レコード ID、ユーザ ID、またはユーザ名

GETFILEATTRIBUTE

GetContainerAttribute (フィールド ; 属性名) GETFILEATTRIBUTE (テーブルフィールド, [属性名] )
情報関数

ISBLANK

IsEmpty (フィールド)

ISBLANK (式)

ISERROR

EvaluationError (式)

ISERROR (式)

ISEVEN

使用不可

ISEVEN (式)

ISLOGICAL

GetAsBoolean (データ)

ISLOGICAL (式)

ISNUMBER

使用不可

ISNUMBER (式)

ISODD

使用不可

ISODD (式)

ISTEXT

使用不可

ISTEXT (式)

TYPE

使用不可

TYPE (式)

日付関数と時刻関数
DATE Date (月 ; 日 ; 年) DATE (年, 月, 日)
DATEVALUE 使用不可 DATEVALUE (日付テキスト)
DAY Day (日付) DAY (日付シリアル番号)
DAYS 使用不可 DAYS (終了日, 開始日)
HOUR Hour (時刻) HOUR (時刻シリアル番号)
MINUTE Minute (時刻) MINUTE (時刻シリアル番号)
MONTH Month (日付) MONTH (日付シリアル番号)
NOW 使用不可 NOW ( )
SECOND Seconds (時刻) SECOND (日付)
TODAY 使用不可 TODAY ( )
TO_DATE 使用不可 TO_DATE (日付シリアル番号)
WEEKDAY DayOfWeek (日付) WEEKDAY (日付シリアル番号, [戻り値のタイプ])
WEEKNUM WeekOfYear (日付) WEEKNUM (日付シリアル番号, [戻り値のタイプ])
WORKDAY 使用不可 WORKDAY (開始日, 日数, [休日])
YEAR Year (日付) YEAR (日付)
テキスト関数
CONCATENATE 使用不可 CONCATENATE (値, [値, ...])
FIND 使用不可 FIND (検索, テキスト, [先頭])
JOIN 使用不可 JOIN (区切り文字, [値, ...]
LEFT Left (テキスト ; 文字数) LEFT (値, [数値])
LEN Length (テキスト) LEN (値)
LOWER Lower (テキスト) LOWER (値)
MID Middle (テキスト ; 先頭文字位置 ; 文字数) MID (値, 先頭, 長さ)
REGEXEXTRACT 使用不可 REGEXEXTRACT (値, 正規表現)
REGEXMATCH 使用不可 REGEXMATCH (値, 正規表現)
REGEXREPLACE 使用不可 REGEXREPLACE (値, 正規表現, 置換)
REPLACE Replace (テキスト ; 先頭文字位置 ; 文字数 ; 置換テキスト) REPLACE (テキスト, 位置, 長さ, 新規テキスト)
REPT 使用不可 REPT (テキスト, 繰り返し)
RIGHT Right (テキスト ; 文字数) RIGHT (値, [数値])
SEARCH Position (テキスト ; 検索テキスト ; 先頭文字位置 ; 回数) SEARCH (検索対象, 検索するテキスト, [開始位置])
SUBSTITUTE Substitute (テキスト ; 検索テキスト ; 置換テキスト) SUBSTITUTE (テキスト, 検索, 置換, [回数])
T GetAsText (データ) T (値)
TRIM Trim (テキスト) TRIM (値)
UPPER Upper (テキスト) UPPER (値)
VALUE GetAsDate (テキスト)、GetAsNumber (テキスト)、GetAsTime (テキスト) VALUE (値)

メモ 

  • Claris Studio のフィールドを参照するには、テーブル名.フィールド名の形式を使用します。ビューのテーブル名がどこにあるのかわかりませんか? 現在、スプレッドシートビュー (最初の列のすぐ上) でのみテーブル名を確認できます。現在のビューと同じデータを使用するスプレッドシートビューがまだない場合は作成することができます。

  • Claris Studio では結果のデータタイプ (数字、テキスト、日付など) を指定することはできませんが、適切なデータタイプの選択を試行します。たとえば、連結中に (テキストフィールドまたはテキスト定数から) 文字列が検出された場合、Claris Studio は文字列を返します。2 つの数字が検出された場合、Claris Studio は数字を返します。

  • テンプレート文字列演算子を使用すると、複数のテキスト定数 (リテラルテキスト)、フィールド、および関数を含む式を簡単に記述できます。

    例: `テキスト定数 ${関数またはフィールド参照} テキスト定数 ${関数またはフィールド参照}`

  • ブラウザのデフォルトの空白文字処理ではテキスト定数内の複数のスペース (「       」など) を 1 つのスペースとして表示します。文字列の値は影響を受けません。

主な既知の問題

  • 別のテーブルのフィールドへの参照が使用できない。

  • [日付]、[時刻]、[タイムスタンプ] フィールドはサポートされていますが、場合によっては正しい計算結果を得るために計算フィールドの [書式] オプションを [日付]、[時刻]、または [日付と時刻] に設定する必要があります。たとえば、[書式] が [日付] に設定されている場合、この式は日付フィールドの値に 1 週を追加して結果を日付として返します:

    Tasks.Date + 7

  • 現在 [オブジェクトの処理] ダイアログボックスでは、計算エンジンを使用したフィールドの値の設定はテキスト (1 行)、テキスト (複数行)、リッチテキスト、数字、電子メール、および通貨フィールドオブジェクトでのみサポートされています。