SharePoint 2013 や SharePoint Online で列の内部名を調べる方法

SharePoint リストやライブラリの列を、例えば JavaSvcript などで操作しようとすると、必ずその列の内部名が必要になります。これを簡単に調べる方法です。

基本的には以前のエントリ「SharePoint 2010 でリストや列の GUID/内部名を調べる方法」と同様なのですが、ダウンロード最小化戦略がアクティヴなサイトでは利用できない点が、要留意ポイントです。

内部名と表示名

リストやライブラリの「列」(英語だと Column)は作成時に名前をつけます。しかしこの名前後からでも変更できています。便利ですが、システム的な処理を行うには不便です。そこで、SharePoint は、実際に目にする「表示名」意外に、作成時に決定されて、後から変えることの出来ない「内部名」をもっています。

内部名は、列を作成した際に自動的に決定されます。基本的に最初の列名=内部名、なのですが、残念ながら日本語(2バイト文字)は内部名にできないため、エンコードされ意味不明な記号になってしまいます。わかりやすい内部名が欲しい場合には、最初に列名を半角英数字でつけるのがミソです。

内部名を簡単に調べる方法

その列が表示されている画面を表示します。リストアイテムなら表示フォーム、ライブラリならファイルの[プロパティの表示]でプロパティ画面です。

20141207image01

右クリックしてソースコードを表示させます。検索(CTRL + F)で、列の表示名をキーワードにして検索します。ヒットした周辺にある FieldInternalName=”xxxxxxxxxxxx” がその列の内部名でになります。この例なら「タイトル」の内部名は「Title」です。

20141207image02

ヒットしない?「ダウンロード最適化戦略」が原因かも

ただ、上の手順で検索してもヒットしないことがあります。その原因は、おそらくサイトで「ダウンロード最適化戦略」が有効化(アクティブ)されていることです。

ダウンロード化最適化戦略機能は、ユーザーがページを遷移するたびに全ての情報を読込むのではなく、前のページとの差分だけをロードして「書き換え」し、表示速度を向上する─という、ちょっとスゴい機能です。 SharePont 2013 で追加された新機能で、SharePoint Online でももちろん利用できます。

ただ、新機能にはありがちではあるのですが、トラブルも少なくなく、残念ですが、基本的にはオフにしておくことを推奨しています(私が 笑)。

サイトの設定から[サイトの機能]を確認して、ダウンロード化最適化戦略機能が[アクティブ]の場合は、これを無効化してください。その上で、改めてソースを検索してみてください。

20141207image03

このエントリは Office 365 Advent Calendar 2014 としてお送りしました

昨日のエントリ:もくだいさんのITよもやま話 先行リリース機能 を利用してみましょう
明日のエントリ:kosuke.kuromiyaさん:
OneDrive for Business の「外部共有」機能を制限する
Office 365 Advent Calendar 2014


Author

中村 和彦(シンプレッソ・コンサルティング株式会社 代表)が「ユーザ視点の SharePoint 情報」を発信します。元大手製造業 SharePoint 運用担当。現SharePoint コンサルタント。お仕事のお問い合わせはこちらまでお願いします。当ブログにおける発信内容は個人に帰属し所属組織の公式発信/見解ではありません。
FB : 中村 和彦
blog: Be・Better!
MS MVP SharePoint 2009/10-2011/9
MS MVP Office 365 2012/10-2014/9