SharePoint2010でリストや列のGUID/内部名を調べる方法

SharePointにおいて、プログラム的にリストや列を扱うには、その「GUID/内部名」が必要です。SharePoint2010でも、基本的には2007とほぼ同じ方法でこれを知ることができます。

まず、リストアイテムを開きます(表示)。右クリック→ソースの表示。(この時、右クリックする場所によってはコンテキストメニューが開きません)

まずソースを「ctx」で検索します。いくつかヒットすると思いますが、ソース後半に下画像のような箇所がある筈です。ここにリストとビューの情報が含まれます。最も重要なのはおそらくctx.listnameでしょうか。このリストのGUIDです。同様にctx.viewはビューのGUIDです。

その下を、今度は列の表示名(この場合「col01」)で検索します。ソースに改行が入っていないため判りにくいですが、ヒットしたDisplayNameの手前のname(この場合「_x0063_ol01」)が列の内部名です。また、FieldTypeはその列の「型」です。

なお、これはあくまで幾つかある方法のひとつです。

あと、列の内部名はその列を最初に作成された際に決定され、後から変更することはできません。列名が日本語の場合、エンコードされます。英数字の場合は基本的にそのままの筈なのですが、この例のように、何故かエンコードされてしまう場合があります。


Author

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