SharePoint2010でリストや列のGUID/内部名を調べる方法
SharePointにおいて、プログラム的にリストや列を扱うには、その「GUID/内部名」が必要です。SharePoint2010でも、基本的には2007とほぼ同じ方法でこれを知ることができます。
まず、リストアイテムを開きます(表示)。右クリック→ソースの表示。(この時、右クリックする場所によってはコンテキストメニューが開きません)
まずソースを「ctx」で検索します。いくつかヒットすると思いますが、ソース後半に下画像のような箇所がある筈です。ここにリストとビューの情報が含まれます。最も重要なのはおそらくctx.listnameでしょうか。このリストのGUIDです。同様にctx.viewはビューのGUIDです。
その下を、今度は列の表示名(この場合「col01」)で検索します。ソースに改行が入っていないため判りにくいですが、ヒットしたDisplayNameの手前のname(この場合「_x0063_ol01」)が列の内部名です。また、FieldTypeはその列の「型」です。
なお、これはあくまで幾つかある方法のひとつです。
あと、列の内部名はその列を最初に作成された際に決定され、後から変更することはできません。列名が日本語の場合、エンコードされます。英数字の場合は基本的にそのままの筈なのですが、この例のように、何故かエンコードされてしまう場合があります。
login