門田です。
連続の更新です。皆さんどうかお付き合いください。(笑)
先の記事で、kintoneの自動計算機能について紹介しましたがいかがだったでしょうか?
自分で書いた記事なのですが、もう少し補足したい部分を見つけてしまったので、引き続き自動計算機能について説明致します。
ということで、お時間がある方は前回記事も一緒に読んで頂けるとよりわかりやすいかと思います。
では始めて行きましょう。
前回、文字列フィールドもしくは計算フィールドで消費税計算をしていきました。
こんな感じですね。(計算フィールドを利用した場合。)
小数点以下の表示桁数を0にしておけば、自動的に小数点以下を切り捨ててくれるというものです。
ここに穴を見つけてしまいました。
アプリだけみると上手く設定できているように見えるのですが・・・。
ちなみに消費税は文字列フィールドのYEN関数で、合計は計算フィールドで設定しています。
このアプリをCSVで書き出してみました。
お気付きですよね。合計が小数点以下まで表示されているのです。
先ほど設定した「小数点以下の表示桁数」というのは、あくまで表示における設定であって、データとしては小数点以下の数字も保持しているのです。
Kintone内で利用するだけであれば全く問題ないのですが、プリントクリエイターで帳票印刷を行うなど連携サービスを利用する際には困りますよね。
設定をやり直しましょう。
アプリの設定から「高度な設定」に進んでください。
右側にこのような設定画面があるので、小数部の桁数を0、丸め方を「切り捨て」にしてください。
保存して完了。
ただしこれだけではまだ上手く利用できません。
レコードを見てみると、このような感じになっています。
小数部の桁数を0にしてしまったので、計算式内の小数も切り捨てられてしまったのです。
消費税フィールド:YEN(小計*0.08,0)→YEN(小計*0,0)
合計:小計*1.08→小計*1
と変換されたということです。
計算式も整数のみで立式してください。
以下の通りです。
「×1.08」は「×108/100」と同じですもんね。
これでもう一度レコードを見てみると、
上手くいきました。
消費税も小数点以下切り捨てになっていますね。
(33912×0.08=2712.96なので四捨五入であれば消費税は2713になるはず・・・。)
基本的にYEN関数では小数点以下が四捨五入されるということなのですが、「高度な設定」が優先されるのですね。
消費税は切り捨てられることが最も多いようなので、やはり文字列フィールドではなく計算フィールドで設定するのがスムーズなのかと思います。
最後にもう一度、レコードをCSVで書き出してみると,
きちんと整数で表示されているので成功です。
YEN関数(文字列フィールド)で計算するのか、計算フィールドで計算するのかによって、表示されている数字と保有しているデータとしての数字が変わってしまうあたりが複雑ですよね。
簡単にまとめます。
YEN関数
表示されている数字だけでなく、データとしての数字も四捨五入された値になる。
計算フィールドの「小数点以下の表示桁数」
表示上の数字は有効桁数の設定で変更可、データとしての数字は変更不可。
高度な設定の「小数部の桁数」
切り上げ、切り捨て、四捨五入を選択。表示されている数字だけでなく、データとしての数字にも適用される。YEN関数よりも優先される。
今日の作業はここまでです。
消費税の切り捨てとか四捨五入とか統一してほしい・・・。(笑)
とはいえ消費税の計算はだれにとっても避けられないものですし、実際にkintone内で案件管理を行っている方も少なくないと思うので、ぜひ本記事を参考にしてみてください。
☆条件付きの計算やレコードをまたいで計算したい!という方は、EXCELでおなじみの関数を使ってkintone上で自動計算が出来るデータコレクトがおすすめです。ぜひチェックしてみてくださいね!
データコレクトの活用例はこちら