AppSheetで顧客IDやタスクIDなどをを8桁で割り振るために、IDのルールを「10000000 + 行番号」にする方法について説明します。
Googleスプレッドシートの準備
AppSheetで使用するデータはGoogleスプレッドシートに保存されている必要があります。スプレッドシートに「ID」という列を追加します。
Initial Value
AppSheetでは、行番号を利用してIDを生成する方法があります。この方法では、行番号に基づいてユニークなIDを作成します。
例えば、2行目の場合は10000002、3行目の場合は10000003といった具合です。このようなID生成は、行番号キーを使うことで実現されます。
10000000+[_RowNumber]
この数式は、行番号を利用してIDを生成します。例えば、2行目の場合は10000002、3行目の場合は10000003となります。
注意点(データの追加や削除)
行を追加したり削除したりすると、行番号が変わる可能性があるため、IDが変わることに注意が必要です。
以下のようなデータがあるとします。
行番号 | 名前 | ユニークID |
---|---|---|
10000001 | 田中 | 10000001 |
10000002 | 鈴木 | 10000002 |
10000003 | 佐藤 | 10000003 |
ここで「10000002」を削除すると、以下のようになります。
行番号 | 名前 | ユニークID |
---|---|---|
10000001 | 田中 | 10000001 |
10000003 | 佐藤 | 10000003 |
行番号が変更されたため、元々「鈴木」のID(10000003)が存在し続けます。新たに行を追加すると、次のIDが重複されるリスクがあるため、行番号に依存したIDは一意ではなくなる場合があります。
行番号に基づくIDは基本的には安定しているわけではないため、業務要件に応じて適切なID生成方法を検討してください。
注意点(重複IDの回避)
行番号に依存する方法以外にも、UUID(ユニバーサルユニークID)などの生成方法も考慮することで、より安定したユニークIDを提供できます。
- 列の設定: AppSheetの「Data」タブで、UUIDを格納する新しい列を作成します。
- 式の設定: 列の「App Formula」に次の式を入力します。
UNIQUEID()
この式により、レコードが作成されるたびに自動的にユニークなIDが生成されます。
まとめ
AppSheetでは、他にも「自然キー」「システム自動生成キー」「行番号キー」といったキーがサポートされています。行番号キーは、テーブルの各行を識別するために行番号を利用する方法で、特に連番を必要とする場合に有効です。
この方法は、データの追加や削除が行われても、連番が飛び飛びにならないように工夫することが求められます。