本記事ではトリガ機能を使用してDBのテキストフィールドに対し、数字が登録・更新された際に0埋めを行い、桁数を揃える方法をご紹介いたします。
今回は、データの桁数を4桁として、登録/更新されたデータが4桁以下の場合に0埋めをいたします。
データの見た目を整える際や、社員番号などの管理番号を扱う場合などにご活用ください。
設定方法
演算トリガ
今回は新規登録時に発動するトリガを設定します。
トリガの種別を「演算」として作成します。
演算トリガについて
トリガ名を設定
トリガ名を指定してフィールド設定へ進みます。
フィールド設定
1.演算結果格納フィールドの選択肢から、対象のテキストフィールドを選択し追加します。
※今回の場合は【text32】というフィールドを使用しています。
2.条件式を表示させ、下記のように設定し保存します。
本式では、テキストフィールドが4桁以下の場合という条件となります。
設定したい桁数に応じて、数字部分を変更ください。
length($text32$) <= 4
3.「1」にて追加した演算結果格納フィールドに対し、下記のように設定し保存します。
本式では、4桁の「0000」の文字列に対し、【4桁-テキストフィールドの桁数】の切り出しを行い、テキストフィールドの文字列を結合しています。
※テキストフィールドが3桁の「123」場合、「0000」から4桁-3桁の1桁を切り出し、「0」となります。
テキストフィールドの「123」を結合し、「0123」としてフィールドに格納されます。
substr('0000', 1 , 4 - least(4 , length($text32$))) || $text32$
※文字数の切り出しで、計算した際に負の数にならないよう、【least】を利用して、最小数を4に定めています。
0埋めしたい桁数に応じて変更ください。
1.length関数:文字数を取得する関数です。
【length('数えたい文字列')】の形式で使用します。
2.$text32$:0埋めしたいテキストフィールドの差替えキーワードを指定します。
フィールドのプルダウンから選択し「ADD」で追加できます。
3.substr関数:文字列を切り出す際に使用する関数です。
【substr(対象の文字列(1), 開始位置(2)、切り出し文字数(3))】の形式で使用します。
4.least関数:最小値を取得する際に使用する関数です。
【least(引数(1)、引数(2)・・・(30))】の形式で使用します。
実装したトリガの動作
テキストフィールドを使用しているため、入力を数字のみに制限したい等の場合には、「フォーム>フィールド別チェック>入力文字」を「半角数字のみ」に設定ください。
設定は以上で完了となります。
登録/更新を行った際に、想定通り0埋めされるかなどをご確認ください
桁数を変更した際の例
こちらの例では、0埋めを6桁に変更した場合の例を記載いたします。
0埋めする桁数を変更する場合に、参考ください。
1.条件式
length($text32$) <= 6
2.演算結果格納フィールド
substr('000000', 1 , 6 - least(6 , length($text32$))) || $text32$