Dataverseのテキスト列はデフォルト100文字|SharePointに合わせる設定方法

DataverseのテキストはSharePointとデフォルト文字数が違います。知らないままデータを入力し始めると、100文字を超えた分がいつの間にか切れています。

SharePointの一行テキスト列は作った直後からデフォルト255文字で使えます。ところがDataverseの単一行テキストはデフォルト100文字です。移行前の社内システムや既存のSharePointリストにある住所・備考・商品名など、100文字を軽く超えることがある項目をそのままDataverseに持ってくると、静かにデータが欠けます。声を大にして言いたいのはこの一点です。

単一行テキスト:デフォルト100文字、最大400文字

SharePointとの比較

並べて確認するとこうなります。

比較項目SharePoint 一行テキストDataverse 単一行テキスト
デフォルト文字数255文字100文字
変更できる上限255文字(固定)400文字まで拡張可
変更タイミング設定なし(常に255)列作成前後どちらでも変更可

SharePointは255文字から変えることができない代わりに最初から255文字が保証されていますが、Dataverseは自分で設定する必要があります。自由度が高い分、設定漏れのリスクがあります。

100文字で足りなくなる実例

どんな項目が100文字を超えるか、イメージしにくい方向けに実例を挙げます。

  • 住所(都道府県+市区町村+番地+マンション名で100文字を超えることがある)
  • 備考欄(自由入力なので100文字制限は短い)
  • 商品名・品番(長い正式名称が入る業種では超えることがある)
  • URL(https://で始まる長いリンクは簡単に超える)

自分が最初にDataverseでテーブルを作ったとき、住所列を100文字のままにして後から入力データが途中で切れているのに気づきました。すでに数十件入力した後で、列の文字数を変更してもデータは自動では修正されないため、ひとつひとつ確認する羽目になりました。テーブル設計の段階で変えておけばよかったと心底思いました。

文字数を変更する手順

列の文字数は作成前でも作成後でも変更できます。手順は以下です。

  1. make.powerapps.com でテーブルを開く
  2. 対象の列をクリックして列の編集画面を開く
  3. Advanced optionsを展開する
  4. Maximum character countの値を変更する(例:255や400)
  5. 保存する

既存データがある状態で文字数を増やす変更は問題ありません。反対に、文字数を減らす方向の変更は既存データが制限を超えていると保存できないことがあるので注意してください。

複数行テキスト:デフォルト1000文字、最大100万文字

複数行テキストはデフォルト1000文字で、SharePointの複数行テキストの約65,000文字と比べてもデフォルトで十分な容量があります。議事録・自由記述欄・メモ欄など、長文が入る可能性がある列はこちらを選びましょう。

単一行テキストと複数行テキストの使い分けのポイントは、改行を含むかどうかです。住所や短い備考は単一行で十分ですが、議事録や詳細説明のように段落や改行が含まれる可能性がある項目は複数行を選んでおきます。後から単一→複数に変更するとデータの再確認が必要になるので、設計段階で判断しておくほうが楽です。

比較項目SharePoint 複数行テキストDataverse 複数行テキスト
デフォルト文字数6列(設定なし)1000文字
最大文字数約65,000文字100万文字
改行の扱い対応対応

推奨設定:用途別の文字数選択の目安

テーブルを作るときに列ごとに文字数を考えるのは最初は手間に感じますが、慣れてくると5秒で判断できるようになります。迷ったときはこの表を参考にしてください。

列の用途推奨設定理由
氏名・担当者名100文字(デフォルト)通常は50文字以内。デフォルトで十分
住所255文字以上都道府県+市区町村+番地で100文字を超えることがある
商品名・品番255文字長い正式名称が入る可能性を考慮
URL・リンク400文字(最大)長いURLは200文字を超えることもある
備考・メモ(短め)255〜400文字単一行テキストで対応可能な範囲
議事録・詳細説明複数行テキスト改行が含まれる。1000文字デフォルトで十分

住所やURLを扱う列は最初から400文字にしておいても特に問題はありません。上限を大きくすることでストレージが圧迫されるわけではないので、迷ったら大きめにしておくほうが後悔が少ないです。

Power Appsで入力前に文字数チェックする方法

アプリ側でテキスト入力欄に文字数制限のフィードバックを出すには、Len関数を組み合わせます。たとえば入力欄の下にカウンター表示を置いたり、文字数が上限を超えたらSubmitボタンを無効化したりする実装が一般的です。

// 入力残り文字数を表示する数式の例
255 - Len(TextInput1.Text)

// 文字数超過でSubmitボタンを無効化する数式の例
Len(TextInput1.Text) > 255

Len関数の使い方についてはLen関数の記事でくわしく解説しています。またDataverseのテーブル作成フローの記事ではテーブル設計全体の流れをまとめているので、文字数設定もあわせて設計段階で確認してみてください。

SharePointとDataverseの列の違い全体についてはDataverse列データ型まとめの記事に対応表があります。テキスト型以外の型も確認したい場合はそちらをどうぞ。

まとめ

  • Dataverseの単一行テキストはデフォルト100文字です。SharePointの255文字とは異なります
  • 最大400文字まで拡張できます。列の作成前後どちらでも変更可能です
  • 住所・URL・備考など、100文字を超える可能性がある列は設計段階で文字数を変更しておきましょう
  • 複数行テキストはデフォルト1000文字。議事録や自由記述欄はこちらを選びます

列を一本作るたびに文字数を確認するのは最初は面倒に感じるかもしれませんが、後からデータが欠けていることに気づくほうがはるかに大変です。テーブル設計の習慣として身につけておきましょう。

Dataverseの全体像はDataverseをSharePoint経験者向けに完全解説にまとめています。

Xでフォローしよう