今回は計算フィールドの数値を丸めるカスタマイズをご紹介します!
例えば、単価が整数値でも数量が1.7mのような小数の場合、小計も小数になってしまいます。また、消費税も単純に計算すると小数になることが多いです。
でも、請求金額は整数にしたい・・・。
そんな時はCustomineが数値丸めをしてくれますよ!
計算フィールドの機能とCustomineを併用することで、簡単に計算をさせることができます。
Customineの基本的な事柄は、こちらの「はじめてのカスタマイズ」をご参照ください。
完成イメージ
「注文」アプリでは1回の注文につき1レコードを作成し、注文リストはサブテーブルを使って表示しています。
商品のデータは「商品マスタ」というアプリからルックアップで取得します。
各商品の数量を入力すると、商品ごとの小計が自動で計算され、続いてリストの合計金額、消費税額、税込金額も自動で計算されます。
商品ごとの小計は小数で計算されますが、合計金額、消費税額、税込金額は整数で表示されます。
アプリのフォーム
今回は「商品マスタ」と「注文」という二つのアプリを作成します。それぞれのアプリのフィールドは以下のようになっています。
商品マスタアプリ
フィールドタイプ | フィールド名 | フィールドコード | 備考 |
文字列(1行) | 商品コード | 商品コード | なし |
文字列(1行) | 商品名 | 商品名 | なし |
数値 | 単価 | 単価 | 桁区切り表示 単位記号:¥ |
文字列(1行) | 単位 | 単位 |
注文アプリ
フィールドタイプ | フィールド名 | フィールドコード | 備考 |
文字列(1行) | 顧客名 | 顧客名 | |
日付 | 注文日 | 注文日 | |
テーブル・ルックアップ | 商品コード | 商品コード | ルックアップ設定は下の画像参照 |
テーブル・文字列(1行) | 商品名 | 商品名 | なし |
テーブル・数値 | 単価 | 単価 | 桁区切り表示 単位記号:¥ |
テーブル・数値 | 数量 | 数量 | |
テーブル・文字列(1行) | 単位 | 単位 | |
テーブル・計算 | 小計 | 小計 | 計算式:単価*数量 桁区切り表示 単位記号:¥ |
計算 | 合計金額(自動計算) | 合計金額_自動計算_ | 計算式:SUM(小計) |
数値 | 合計金額 | 合計金額 | 桁区切り表示 単位記号:¥ |
数値 | 消費税額 | 消費税額 | 桁区切り表示 単位記号:¥ |
計算 | 税込金額 | 税込金額 | 計算式: 合計金額 + 消費税額 桁区切り表示 単位記号:¥ |
やりたいこと
各行の小計の合計を算出するフィールド「合計金額(自動計算)」の数値を四捨五入で整数に直して、「合計金額」にセットする。
消費税を計算し、こちらも整数に直して「消費税額」にセットする。
税込金額は「合計金額」+「消費税額」なので自動的に整数になる。
Customineの設定
計算フィールドの値をコピーして数値を丸める
条件
「計算フィールドの値が変わった時」を使います。
「フィールドの値を編集して値が変わった時」と似ていますが、あちらは計算フィールドを選択することができません。
また、計算フィールドの計算式の元になっているフィールドを「フィールドの値を編集して値が変わった時」で選んでも、 そのフィールドが変わった段階ではまだ計算が行われていないので、変更後の計算値を取得することができません。
「計算フィールドの値が変わった時」を用いれば、計算値が実際に変わった直後を検出することができ、計算後の値を取得することができます。
やること
数値丸めには「フィールドの値を四捨五入する」を使いますが、これは数値フィールドの値を四捨五入で丸めて入れなおすもので、計算フィールドである「合計金額(自動計算)」の数値を直接変更することはできません。
そこでまずは「フィールドに値をセットする」を使って、「合計金額(自動計算)」を数値フィールド「合計金額」にコピーします。そして「フィールドの値を四捨五入する」で数値を丸めます。
消費税の計算
先程と同様、「フィールドに値をセットする」と「フィールドの値を四捨五入する」を使いますが、今回は消費税額を計算したいので、最初にセットするときに、値を「合計金額(自動計算)*0.08」にしてセットします。
+αカスタマイズ
「合計金額」、「消費税額」は自動で計算されるフィールドなので、計算フィールドと同じように編集不可にしておくといいでしょう。
また、数値を丸める前の値である「合計金額(自動計算)」フィールドは邪魔なので非表示にしておきましょう。
編集不可設定
やること
「フィールドを無効化する」を使います。
条件
「追加画面・編集画面を表示した時」を使います。
非表示設定
やること
「フィールドやグループを非表示にする」を使います。
条件
「追加画面・編集画面・詳細画面のいずれかを表示した時」を使います。
テスト
設定が完了したら、「kintoneアプリへ登録」し、動作チェックしてみましょう。
「商品マスタ」アプリにいくつかレコードを登録し、「注文」アプリでレコード追加画面で、商品をルックアップし、数量を入力しましょう。
「小計」に小数の値があっても、「合計金額」「消費税額」「税込金額」は整数の値になりましたね!
終わりに
計算フィールドの機能とCustomineの機能を合わせれば、数値丸めに限らず、幅広い計算ができます。
Customineヘルプやサポートからそのヒントを見つけましょう!