船井デジタル道場
条件分岐処理プラグインの自動入力機能で利用できる「関数」のご紹介!
INDEX
皆様こんにちは、かくさんです!
船井総合研究所で、「船井ファストシステム」のカスタマーサポートを担当しています。
船井デジタル道場ではkintoneの様々な情報を発信していますので、ぜひ他の記事もご覧ください!
色んなことができて便利な「条件分岐処理プラグイン」ですが、なんと自動入力機能では関数も使えます!
kintoneの文字列(1行)フィールドと計算フィールドで利用できる「計算式」機能でも関数を利用できますが、標準機能では利用できない関数があったり、関数を利用したフィールドはグレーアウトしてしまい編集できなかったりします。
一方、条件分岐処理プラグインを利用して関数を入力したフィールドは、自由に編集することができます!
条件分岐処理プラグインで関数を使えるようになれば、kintoneでできることがグンと増えますよ♪
「条件分岐処理プラグイン」とは
条件分岐処理プラグインとは、動作条件を指定して様々な処理が行えるプラグインです。
条件分岐処理プラグインでできる各種処理については下記リンク先の記事をご覧ください。
補足情報:動作条件について
条件分岐処理プラグインの設定画面で動作条件を指定しない場合、意図しないタイミングでデータを更新してしまう可能性があります。
意図しないタイミングで動作しないよう、動作条件を指定することをオススメします。
▼参考:契約日が入力されているレコードのみで自動入力を動作させる場合の設定例
条件分岐処理プラグインの「自動入力」で利用できる関数
ここでは、特に使用することが多い8つの関数、
「IF」「DATE_DIFF」「DATE_CALC」「TO_NUMBER」「AGE」「LEN」「RIGHT」「LEFT」について紹介します!
利用できる全関数については、TIS様の計算式ドキュメントを確認してください。
本記事でご紹介する関数の一覧
- IF:「もし**ならばAAを出力する、それ以外はBBを出力する」を指定する
- DATE_DIFF:指定期間の経過日数を算出する
- DATE_CALC:「契約日の翌月末日は〇日」などの日付計算を行う
- TO_NUMBER:文字列型の数字データを数値型に変換する
- AGE:生年月日などの日付フィールドから年齢を算出する
- LEN:フィールドの入力文字数を取得する
- RIGHT:文字列末尾から指定桁数の文字を取得する
- LEFT:文字列先頭から指定桁数の文字を取得する
「IF」関数の使い方
IF関数は「もし**ならばAAを出力、それ以外はBBを出力」のように、条件に当てはまるか否かで出力する値を変化させることができる関数です!
条件分岐処理プラグインの自動入力で関数を利用する場合、設定したフィールドは編集できます。
また、レコード保存しなくても計算結果が出力されます。
そのため、「非会員なら値引きなし・会員なら15%値引き」としつつ、「特別対応でさらに端数を手動で値引きする」という使い方もできます!
【入力方法】
※フィールドコードを使う場合は半角のダブルクォーテーション記号(”)で囲んでください
IF(条件式,真の場合,偽の場合)
【引数詳細】
条件式 | 判断したいフィールドコードや固定値または関数の結果値を、比較演算子を用いて比べます。 |
真の場合 | 条件式と合致する場合の出力内容(固定値/関数の結果値/数値演算)を指定します。 |
偽の場合 | 条件式と合致しない場合の出力内容(固定値/関数の結果値/数値演算)を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、リッチエディターフィールド、文字列(複数行)フィールド、数値フィールド
【使用例】
「税率区分」の選択肢が「標準税率」ならば合計金額に10%消費税を付与した金額を「税込み合計金額」に出力、
標準税率ではない(=軽減税率)ならば合計金額に8%消費税を付与した金額を「税込み合計金額」に出力したい。
IF("税率区分"="標準税率","合計金額"*1.10,"合計金額"*1.08)
「DATE_DIFF」関数の使い方
DATE_DIFF関数は、契約日から現在までの経過日数や業務請負日から業務完了日までの経過日数など、指定した期間で「何日経過したか」を確認できる関数です!
【入力方法】
DATE_DIFF("開始日フィールド","終了日フィールドまたはTODAY","表示形式")
【引数詳細】
開始日フィールド | 期間の最初の日付が入力されているフィールドコードまたは関数の結果値を指定します。 |
終了日フィールド | 期間の最後の日付が入力されているフィールドコードまたは関数の結果値を指定します。 関数処理実施当日の日付との経過日数を取得したい場合は「TODAY」を入力します。 |
表示形式 | 表示形式を以下にて指定します。 年:Y 月:M (経過年以降の残月数が入ります) FM (経過期間の総月数が入ります) 日:D (経過月以降の残日数が入ります) FD (経過期間の総日数が入ります) |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、リッチエディターフィールド、文字列(複数行)フィールド
【使用例】
「お問い合わせ日」から「契約日」までの間の経過日数を、「お問い合わせから契約までの所要日数」に日数で表示したい。
DATE_DIFF("お問い合わせ日","契約日","FD")
「契約日」から「今日」まで経過日数(契約継続日数)を、「契約期間」に年月日で表示したい。
DATE_DIFF("契約日","TODAY","Y年Mヶ月D日")
「DATE_CALC」関数の使い方
DATE_CALC関数は、「契約日」の翌月末日を「請求日」に自動入力したいなどの日付計算に使用できる関数です!
閏年にも対応しており、月末日を算出する場合は実際の暦に応じて28日~31日を出力します。
【入力方法】
※フィールドコードと計算パターンは半角のダブルクォーテーション記号(”)で囲んでください
DATE_CALC("フィールドコード"または関数の結果値,"計算パターン(加算減算値 単位)")
【引数詳細】
フィールドコードまたは関数 | 基準日となる日付が入力されているフィールドコードまたは関数の結果値を指定します。 |
計算パターン(加算減算値) | 計算元の値に対し加算減算を行う数値を指定します。 フィールドコードも指定可能です。 |
計算パターン(単位) | 加算減算の単位を指定します。 年初・月初・週初の場合は加算減算値の入力は不要です。 年:year 月:month 日:day 時:hour 分:minute 年初:first-of-year 月初:first-of-month 週初:first-of-week |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、リッチエディターフィールド、文字列(複数行)フィールド、日付フィールド、時刻フィールド、日時フィールド
【使用例】
「契約日」の翌月末日を「初回請求日」に自動入力したい。
(契約日が2023年7月7日の場合、2023年8月31日を「初回請求日」に自動入力したい)
DATE_CALC("契約日","first-of-month,2 month,-1 day")
「契約日」の1年後の前月15日を「契約更新案内日」に自動入力したい。
(契約日が2023年7月7日の場合、2024年6月15日を「契約更新案内日」に自動入力したい)
DATE_CALC("契約日","first-of-month,11 month,14 day")
「TO_NUMBER」関数の使い方
TO_NUMBER関数は、文字列(1行)フィールドに入力されている文字列型の数字データを、計算フィールドの計算式で利用できる数値型に変換できる関数です!
(「文字列型」「数値型」の詳細につきましては、kintoneヘルプを確認してください)
例えば一覧画面でレコードを並び替えたいとき、文字列(1行)フィールドの数字データでは昇順/降順の並び替えはできません。
しかし、TO_NUMBER関数を利用し、文字列(1行)フィールドの数字データを数値フィールドに出力すれば、昇順/降順で並び替えができるようになります!
【入力方法】
※フィールドコードと計算パターンは半角のダブルクォーテーション記号(”)で囲んでください
TO_NUMBER("フィールドコード"または関数の結果値)
【引数詳細】
フィールドコード または 関数 | 変換元となる値が入力されているフィールドコードまたは関数の結果値を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、数値フィールド
【使用例】
自動採番プラグインで受付番号を自動採番して「受付番号(文字列(1行)フィールド)」に出力した数字でレコードを並び替えるために、数値型に変換して「受付番号(数値)」に出力したい。
TO_NUMBER("受付番号")
「AGE」関数の使い方
生年月日などの日付フィールドから「年齢」を算出したい場合に使用する関数です。
【入力方法】
※フィールドコードは半角のダブルクォーテーション記号(”)で囲んでください
AGE("フィールドコード"または関数の結果値)
【引数詳細】
フィールドコード または 関数 | 計算元となる日付値が入力されているフィールドコードまたは関数の結果値を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド
【入力例】
「生年月日」フィールドの値から、レコード登録・編集時の年齢を算出したい。
AGE("生年月日")
「LEN」関数の使い方
会員番号や電話番号の入力が既定の文字数ではない場合にエラーを出す設定をしたい、というようなとき、文字数の取得に使用する関数です。
(※入力文字数を判別してエラーを出すには、条件分岐処理プラグインの別タブにて、動作条件を指定した「保存時チェック」機能の設定が別途必要です)
【入力方法】
※フィールドコードは半角のダブルクォーテーション記号(”)で囲んでください
LEN("フィールドコード"または関数の結果値)
【引数詳細】
フィールドコード または 関数 | 取得元となる値が入力されているフィールドコードまたは関数の結果値を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド
【使用例】
会員番号フィールドの値の文字数を取得したい。
LEN("会員番号")
「RIGHT」関数の使い方
フィールドの文字列を条件に何か処理を行いたいような状況で、文字列末尾(右端)から指定桁数の文字を抽出したいときに使用する関数です。
例えば、西暦を「2023」のように4桁入力しているフィールドから下2桁の「23」だけを取り出し、別のフィールドの月情報と結合して、「2023-11」をまた別の文字列(1行)フィールドに出力したい、というときなどに使えます。
【入力方法】
※フィールドコードは半角のダブルクォーテーション記号(”)で囲んで入力してください
RIGHT("フィールドコード"または関数の結果値,切り出し文字数)
【引数詳細】
フィールドコード または 関数 | 変換元となる値が入力されているフィールドコードまたは関数の結果値を指定します。 |
切り出し文字数 | 切り出す文字数を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、リッチエディターフィールド、文字列(複数行)フィールド
【使用例】
「施設名」の末尾2文字を取得したい。
RIGHT("施設名",2)
「LEFT」関数の使い方
フィールドの文字列を条件に何か処理を行いたいような状況で、文字列先頭(左端)から指定桁数の文字を抽出したいときに使用する関数です。
例えば、会員番号を「A-1234」「B-1234」のように付番し、先頭に英字を入力することで分類している会員番号フィールドから先頭の「A」だけを取り出し、別のフィールドに「A」や「B」といった分類用の英字を出力したい、というときなどに使えます。
【入力方法】
※フィールドコードは半角のダブルクォーテーション記号(”)で囲んで入力してください
LEFT("フィールドコード"または関数の結果値,切り出し文字数)
【引数詳細】
フィールドコード または 関数 | 変換元となる値が入力されているフィールドコードまたは関数の結果値を指定します。 |
切り出し文字数 | 切り出す文字数を指定します。 |
【計算結果の出力先として利用できるフィールド種別】
文字列(1行)フィールド、リッチエディターフィールド、文字列(複数行)フィールド
【使用例】
「施設コード」の先頭1文字を取得したい。
LEFT("施設コード",1)
最後に
色々なことができて便利な条件分岐処理プラグイン。
kintoneの標準機能だけでは実現が難しかった処理も、本プラグインと関数を組み合わせて使うことで実現可能になることが多々あります。
例えば、条件分岐処理プラグイン自動入力機能の「IF」と「LEN」の関数、条件分岐処理プラグイン保存時チェック機能を組み合わせると、「会員登録有無フィールドの値が『有』だった場合(IF関数)、会員番号フィールドの文字数をカウントし、会員番号桁数フィールドに文字数を出力する(LEN関数)。その文字数が6桁ではない場合は会員番号入力間違いを示すアラートを出す(保存時チェック)」ということができます!
kintoneの活用で壁にぶつかったときは、ぜひ本記事を見ていただき、組み合わせ技の検討に役立ててください!