コンテンツにスキップ
「プリザンター入門」発売中!

計算式(拡張)

概要

計算方法「拡張」は、数値項目、分類項目、日付項目、説明項目、チェック項目を対象として、四則演算や専用の関数を利用した計算を行う計算方法です。

計算方法 計算対象の項目 項目の指定方法 扱える計算
拡張 数値項目
分類項目
日付項目
説明項目
チェック項目
表示名
[カラム名]
加算(+)
減算(-)
乗算(*)
除算(/)
半角の(と)を使った計算順序の変更
計算式(拡張)の関数を用いた計算
計算式(拡張)の場合分け計算を用いた計算

制限事項

  1. 表示名の先頭または末尾が記号になっている項目を、計算式で表示名を使って指定している場合、その項目の表示名を変更しても、計算式内の表示名は新しい表示名に置き換わりません(例:「金額(税込)」「売上①」「=合計」)。表示名を変更したあとで、計算式内の表示名を手動で修正してください。
  2. ここでいう記号とは、文字(漢字、ひらがな、カタカナ、英字)、数字、アンダースコア(_)を除くすべての文字です。全角か半角かは問いません。丸数字(①など)も記号に含まれます。
  3. 「表示名を使用しない」を有効化した計算式はカラム名で保存されるため、この制限の対象外です。

前提条件

テーブルの管理画面の計算式タブにある「エラーの詳細を取得する」を使用する場合、「詳細設定」画面の「エラーを表示する」を有効化する必要があります。

「詳細設定」画面の設定項目

「拡張」の計算方法を使用するには、「計算方法」で「拡張」を選択してください。

計算式の「詳細設定」画面で「計算方法」に「拡張」を選んだ状態

ID

計算式の追加後にプリザンターによって割り当てられる管理番号です。

対象

計算結果を入れる数値項目を選択してください。事前にエディタで有効化しておく必要があります。

計算式

以下の要領で計算式を入力してください。

  1. +(加算)、-(減算)、*(乗算)、/(除算)を演算子として利用できます。
  2. 演算子の前後には、半角スペースを追加してください。
  3. 計算の対象となる項目(数値項目、分類項目、日付項目、説明項目、チェック項目)は、表示名またはカラム名で指定してください。
  4. 半角の丸括弧でくくった部分は、先に計算されます。
  5. 計算方法「拡張」で、計算対象としてカラム名を使用する場合は、カラム名を半角の角かっこ[と]とで括ってください。追加・変更すると、表示名に変わります。

    🔽追加・変更前
    カラム名を角かっこで囲んで入力した、追加・変更前の計算式
    🔽追加・変更後
    表示名に変換された、追加・変更後の計算式
  6. 計算式中で関数を使用できます。使用できる関数は計算式(拡張)の関数を参照してください。「計算式(拡張)の条件判定」を使った計算も可能です。
    関数を使った計算式の入力例

表示名を使用しない

「表示名を使用しない」を有効化すると、角かっこ([])で囲んだカラム名のまま追加・変更します(表示名に変換しません)。

🔽追加・変更前
「表示名を使用しない」有効時の、追加・変更前の計算式
🔽追加・変更後
「表示名を使用しない」有効時の、カラム名のまま保存された計算式

エラーを表示する

計算式でエラーが発生すると、システムログにエラー内容が記録されます。

たとえば、以下のように3つの数値項目と、1つの日付項目を有効化し、レコードを1件作成します。日付Aはレコード作成時は空のままとします。

数値A 数値B 数値C 日付A
-10 12 11 -

レコードを作成したら、日付Aに計算式を追加し、コマンドボタンエリアの「更新」ボタンをクリックします。計算式で使用している「$DATE」は数値から日付を作る関数ですが、年月日として不正な数値を与えるとエラーとなります。

日付Aにエラーとなる$DATE関数の計算式を追加した設定

計算式でエラー発生するため、対象の項目には計算結果は表示されませんが、レコードの更新処理は正常終了します。

計算結果が表示されないまま更新が完了したレコードの画面

「管理」-システムログの管理を選択することで、エラーログを確認できます。なおシステムログの管理画面を開くには、特権ユーザである必要があります。

システムログの管理画面に記録されたエラーログ

「エラーを表示する」を有効化すると、システムログにエラー内容が記録されるとともに、コマンドボタンエリアのすぐ上に「計算式の計算に失敗しました…」というメッセージが表示されます。

「計算式の計算に失敗しました…」というメッセージが表示された画面

なお、プリザンター1.5.1.0以降では、テーブルの管理画面の計算式タブで「エラーの詳細を取得する」を有効化することで、開発者ツールのコンソールで詳しいエラー内容を確認できます。

条件/条件外の場合

テーブルにビューを定義している場合、条件プルダウンメニューが表示されます。
条件でビューを選択すると、「条件外の場合」テキストボックスが表示されます。ビューのフィルタ条件を満たした場合は計算式が動作し、ビューのフィルタ条件を満たさない場合は「条件外の場合」に入力した計算式が動作します。

「条件」でビューを選び「条件外の場合」が表示された設定画面

無効

編集中の計算式を一時的に動作させなくする場合に有効化してください。

計算式を追加、変更した場合は、同期やテーブルの更新を実行してください。

関連情報