NoCode Airtableでデータの管理 #6 ゼロから在庫管理システムを作ってみる(4)
今井@OCHです。
本記事では、NoCodeツールのAirtableについて取り上げています。
前回記事はこちら
今回は、Formulaについて取り上げて、”在庫管理システムをつくってみる” 編は終了したいと思います。
AirtableのFormulaとは
フィールドタイプで選択できるひとつで、エクセルでいうところの計算式になります。Airtableはデータベースですから、フィールドタイプに設定した計算式は全てのレコードに適用されます。エクセル同様に非常に強力な機能で、かつ色々なことができますので、今回は在庫管理システムを例に限定して紹介します。
もっと詳しくは公式サイト説明があります。Airtableは公式サイトでの解説が非常に分かりやすいのも特徴です。英語が苦手な方でもGoogleでサイトごと翻訳すればほとんど理解できるかと思います。
在庫してから何日経過したか分かるようにしてみる
試しに、ハードディスクを在庫登録した日(Created)から現在までに何日経過したか計算した結果を表示するフィールドをつくってみます。
フィールドを新規作成しますが、フィールドタイプをFormulaに指定します。そうするとフィールド名の他に、式を記入する欄が表示されます。
フィールド名を在庫経過日数という名称にしたうえで、」式を記入します。
今回は、経過日数を表示したいので
「在庫登録された日」から「今日」の差分
を求めれば良いのです。時間を計算するためにはDATETIME_DIFFという関数を使います。
エクセルで計算式に慣れた人には、関数という言葉は馴染み深いと思いますが、今回Airtableで初めて触れる方は「目的別にあらかじめ用意された機能」だと理解してみると良いかもしれません。今回は、時間差を求める機能は DATETIME_DIFF というようにとらえてみてください。
DATETIME_DIFFの使い方を公式サイトで調べると
DATETIME_DIFF([date1]、[date2]、 'units')
date1 から date2 を引く
units は表示する単位
ということが分かります。ということは、date1が「今日」でdate2を「在庫登録された日」にすれば良いということが分かります。
「今日」の日時は、NOW() という関数で求められます。
「在庫登録された日」は Created というフィールドに値が入っています。
今回は、単位は「日」にしたいので days を単位にします。
よって最終的に以下の計算式となります。
daysはシングルクォーテーションで囲みます。
DATETIME_DIFF(NOW(), {Created}, 'days')
実際に入力してみると以下の通り、経過日数が表示されます。
Viewを使って、在庫経過日数が100日以上のみを表示するViewを作って長期在庫がすぐ分かるようにしてみても良いかもしれませんね。
まとめ
FormulaはFormulaによって計算された値同士をさらに計算することで、無限に応用ができます。また、有償版限定の機能ですが、スクリプトによる処理のためにもよく利用する機能です。スクリプトなど、有償版の機能の説明はまた別の記事で取り上げたいと思います。
OCHでは、Airtableをフル活用して会社にある情報を管理したうえで、さらに他のNoCodeアプリケーションと組み合わせて社員に会社の数字の見える化を実践しています。
最近流行りの「DX(デジタルトランスフォーメーション)」における数字は、この世界で起きている現象を見える形にする道具としても利用できます。現象の数値化ができれば、NoCodeを活用してより先進的な事業活動が可能になります!
執筆者