カテゴリーアーカイブ: SharePoint 開発

簡単な説明: “値は、予想の範囲内は該当しません。”

更新プログラム: 内部名についての素晴らしいコメントを残された匿名のポスター. それを必ずお読みください。.

イベント レシーバーとオブジェクト モデルを介しての SharePoint リスト アイテムを参照する他のコードを使用する場合, 私は多くの場合、この実行時エラーを生成ミスします。:

読み込みエラーとイベント レシーバー Conchango.xyzzyEventReceiver xyzzy で実行, バージョン 1.0.0.0 を =, カルチャ ニュートラル =, PublicKeyToken = 0dc50a750396c3ac. 詳細は以下、します。. : 値が予想される範囲に該当しません。.

これは多くの異なる方法を引き起こされる可能性がある非常に一般的なエラーだと思う. ただし, 1 つの簡単な説明は、私を参照することがないフィールド正しく. フィールドの名前が「期日」の場合, 私はこのようなイベント レシーバーで参照する必要があります。:

プロパティ。ListItem[[期日]]

とき私はスペルミスまたはフィールドを参照するとき、間違ったケースを使用, SharePoint を上記生成するランタイム エラーに言及. たとえば, これは間違っています。:

プロパティ。ListItem[[期日]]

</終了>

私のブログを購読します。.

Technorati のタグ:

クイック & 簡単: フォルダーを作成し、コンテンツの種類を割り当てる (または, あなたの Kpi があるし、あまりにもそれらを食べる)

KPI の問題を回避するために ここを書いた, 私はいくつかのテストを行なったし、彼らがドキュメントに対して作業またはリスト アイテムは、同じ方法でフォルダーとメタ データに対してその KPI の仕事を発見しました。. 私は、新しいコンテンツ タイプを作成することによってそれはフォルダー コンテンツ タイプに基づいて、いくつかのフィールドを追加しを証明しました。. 私はいくつかの指標を作成し、Kpi は、期待どおりに動作ことを自分自身に証明. これは歓迎すべきニュース. それは完璧ではないです。, ドリル ダウンをから得るためのフォルダーに対して KPI が正確には何をしたいです。. これで私の場合あまり欠点はないので 1) エンド ユーザは任意のより良いを知っていないと 2) ドリル ダウンは、フォルダーに移動します。. フォルダー名をクリックして、アイテムに. それは 1 つではなく 2 回のクリック, 世界の終わりではないです。.

これはうまくやっていた仕事と流れた. アップロードされるすべてのドキュメントを格納するフォルダーを作成して. これはイベント レシーバーによって. その結果, それは維持するケーキ、 親フォルダー 自体は配管が既に整備されているファイルから KPI 駆動のメタ データとメタ データの同期. これは私が私のKPIのを持って、あまりにもそれらを食べることができます🙂

フォルダーを追加し、この新しいフォルダーのコンテンツ タイプをカスタム KPI 向けコンテンツ タイプに設定するイベント レシーバーを変更されました。. コードのこのビットは、トリックをでした。:

 SPFolderCollection srcFolders = targetWeb.GetFolder("ドキュメント").サブフォルダー;
  SPFolder addedFolder = srcFolders.Add(プロパティ。ListItem.ID.ToString());
  コンテンツ kpiCT = 新機能 コンテンツ("0x0120002A666CAA9176DC4AA8CBAA9DC6B4039F");
  addedFolder.Item[「コンテンツ タイプ ID"] = kpiCT;
  addedFolder.Item.Update();

実際のコンテンツ タイプ ID を検索するには, サイトの設定によってそのコンテンツ タイプにアクセスし、コピー/貼り付けそれのように URL から:

イメージ

</終了>

私のブログを購読します。!

Technorati のタグ: ,

迅速で簡単な: イベント レシーバーで SPListItem の SPFolder を取得します。

それを認めることを憎む, 私はこの 1 つのすべての苦労が、日. 私のイベント レシーバーは、親フォルダーのフィールドを更新する必要があります。. この少しがそれを行う方法を示しています:

プライベート void UpdateParentFolder(SPItemEventProperties プロパティ)
{

SPFolder thisItemFolder プロパティを =。ListItem.File.ParentFolder;
thisItemFolder.Item[「ZZ 承認ステータス"] = 「良いニュース, 誰もが!";
thisItemFolder.Item.Update();


} // UpdateParentFolder

このケースでは, ドキュメント ライブラリを使用して、プロパティが ItemAdded イベントから来ています。.

トリックは、アイテム自体から直接項目の SPFolder を得ることができません。 (すなわち. プロパティ。ListItem.Folder は null です。). 代わりに, リスト アイテムに関連するファイルに移動し、ファイルのフォルダーを取得.

</終了>

私のブログを購読します。!

Technorati のタグ:

まだもう 1 つのイベント レシーバーのデバッグのトリック

私は確信しているこの思い付く最初の人ではないです。. ただし, 誰もこのようなトリックを公開以来、私は昨年 7 月、コミュニティに細心の注意を払って始めたを気づいていません。. だから, この速く、容易なデバッグのヒント ポストイットだと思った.

このエラーを生成を開始するイベント レシーバーに取り組んで、 12 ハイブ:

読み込みエラーとイベント レシーバー Conchango.xyzzyEventReceiver xyzzy で実行, バージョン 1.0.0.0 を =, カルチャ ニュートラル =, PublicKeyToken = blahbalhbalh. 詳細は以下、します。. : オブジェクト参照オブジェクトのインスタンスに設定されていません.

私は私のコード、配置、テストのサイクルの 1 つでも多くのことを行っていたのでこのバグを導入していた私とは知らなかった.

私は試みた このソリューション SharePoint の期待とそこに私の pdb を取得するには 12 ハイブは、スタック トレースを表示, 運. それが可能ならと誰かがわからない, 私に知らせてください。 🙂

それはすることを知っています。 ログ メッセージに書いて、 12 ハイブ. 率直に言って, 少し怖いと実装するより速く何かをしたかった.

それが私は少なくともこのような汎用的な例外を再スローとキャッチによっていくつかの基本的なトレース情報を得ることができるが発生しました:

  してください。 {
    UpdateEditionDate(プロパティ);
  }
  キャッチ (例外 e)
  {
    スロー 新機能 例外(「ディスパッチャー, UpdateEditionDate(): 例外: [" + e.ToString() + "].");
  }

これに現れた、 12 thusly ハイブします。:

読み込みエラーとイベント レシーバー Conchango.xyzzyEventReceiver xyzzy で実行, バージョン 1.0.0.0 を =, カルチャ ニュートラル =, PublicKeyToken = ハント. 詳細は以下、します。. : ディスパッチャー, UpdateEditionDate(): 例外: [通常。: オブジェクト参照オブジェクトのインスタンスに設定されていません. Conchango.xyzzyManagementEventReceiver.UpdateEditionDate で(SPItemEventProperties のプロパティ) Conchango.xyzzyManagementEventReceiver.Dispatcher で(SPItemEventProperties のプロパティ, 文字列 eventDescription)].

それは私の特定の問題を追跡するために必要なすべての詳細を与えたし、たくさん今後それを使用することを期待.

</終了>

私のブログを購読します。!

ソリューション: SPQuery フォルダーは検索されません。

この過去 1 週間だったを実装する、「進化します。" BDC は、SPQuery を使用し、フォルダーを含むドキュメント ライブラリに対して SPQuery を使用していくつかの困難に遭遇したクライアントのためのソリューション. 一番下の行: 「再帰をを割り当てる" クエリの表示属性.

私のシナリオ:

  • 月曜日に, ドキュメントをアップロードし、いくつかのメタ データを提供.
  • 次の週, 新しいファイルをアップロードします。. この新しいドキュメントのメタ データの多く私は月曜日にアップロードされるドキュメントに基づいています (「マスター文書」と呼ばれる).
  • ユーザー タイトル検索を介して月曜日ドキュメントを見つけやすいように一覧を BDC にやさしいインターフェイスを提供する web サービス ファサードを作成しました.
  • BDC のデータ列は、フレンドリーなユーザー インターフェイスを提供します. (これはより友好的なルックアップ列の BDC を使用する私の試みの部分).

最終的な BDC ファサード サービスは、ルックアップを実行このようなクエリを使用してください。:

 // U2U ツールこの CAML クエリを生成する際に支援するために使用.
      oQuery.Query =
        "<どこ>";

      場合 (titleFilter.Length > 0)
        oQuery.Query   =
          "  <と>";

      oQuery.Query   =
        "    <と>" +
        "      <Geq>" +
        "        <FieldRef 名 = "DocumentId" />" +
        "        <値のタイプ = "Text">" + minId + "</値>" +
        "      </Geq>" +
        "      <Leq>" +
        "        <FieldRef 名 = "DocumentId" />" +
        "        <値のタイプ = "Text">" + maxId + "</値>" +
        "      </Leq>" +
        "    </と>";

      場合 (titleFilter.Length > 0)
        oQuery.Query   =
          "    <含まれています>" +
          "      <FieldRef 名 = "Title" />" +
          "      <値のタイプ = "Text">" + titleFilter + "</値>" +
          "    </含まれています>" +
          "  </と>";
      oQuery.Query   =
        "</どこ>";

開発の初期段階, この偉大な仕事. ただし, フォルダーにいくつかの問題を解決するためにディレクトリを導入し、突然, 結果は私の BDC の選択はないです。. SPQuery だろう任意の結果を返すことという事実にこれを追跡. 我々 は主に別のメタ データをアップロードするのに同じ名前を持つ複数のファイルを許可するのにフォルダーを使用. ファイルがアップロードされたとき, 我々 リスト アイテムの ID に基づいてフォルダーを作成し、そこにファイルを移動 (そのことについて書いた ここで; 我々 が持っていた 混在する結果 このアプローチが全体に, それがうまく機能します。). フォルダーについて、実際にはユーザーは気にしません。, 本当にすべてのフォルダーがあることを理解していません。. 我々 はすべてのフォルダーに関係なくアイテムを表示するライブラリ ビューを構成しています。.

私は 2 回進化し、解決の技術的な実装としてそれを毎回違ったこの問題をヒットします。. 最初の時間, クエリで CONTAINS 演算子を使用していなかった. CONTAINS 演算子なし, SPQuery のコンス トラクターにビューを指定することによって、問題を解決することができた. 既定のコンス トラクターを使用する代わりに:

SPList もの web を =。リスト["ドキュメント"];

SPQuery oQuery = 新機能 SPQuery();

私は代わりに、ビューを指定するコンス トラクターを使用:

SPList もの web を =。リスト["ドキュメント"];

SPQuery oQuery = 新機能 SPQuery(oList.Views[「すべてのドキュメント"]);

問題を解決して私の結果を得るために開始.

CONTAINS 演算子をミックスに追加し、それを再度壊した. それが判明したことは CONTAINS 演算子, 私の知る限り, 動作しません、ビューと同じように簡単 GEQ / LEQ 演算子. 私はいくつかの検索を行なったし、クエリの ViewAttributes は、「再帰的」に設定することを学んだ, ように:

oQuery.ViewAttributes = 「スコープ = "Recursive"";

含むのため、問題を解決しました。. 実際, これも私の元の検索の問題を解決し、再帰を指定したかどうか属性は初めて, 私は持っているに実行されない問題再度.

ビュー ベース SPQuery いくつかの演算子のために働くという事実 (GEQ/LEQ) その他 (含まれています), Kpi で全く動作ドキュメント ライブラリのフォルダーを含むリード SPQuery がいくつかの直交性の問題であると信じて私をしていないという事実と相まってください。.

特別な感謝:

  • 善意の人々 U2U そのクエリ ツール.
  • マイケル ・ ホッファーの偉大です "ことにによって学習" ブログの記事, コメントと応答.

</終了>

私のブログを購読します。!

Technorati のタグ: ,

MOSS KPI バグ? ドキュメント ライブラリ フォルダーに関連付けられてリスト インジケーター

更新プログラム 02/29/08: フォルダーを作成して、Kpi の必要なメタ データのあるフォルダーにコンテンツ タイプを割り当てることによってこの問題を解決. ここで、もう少し詳細を記載します。.

ユーザーがドキュメント ライブラリにドキュメントをアップロードする技術的解決策を実施して. イベント レシーバーは、ディレクトリを作成し、そのディレクトリにファイルを移動 (私が書いたものと同様の手法を使用してください。 ここで). 我々 は正常にアップロードされたファイルの名前を変更するイベント レシーバーによる潜在的な問題を回避移動しました。 (ユーザーは決して"新規をクリックしてそのドキュメントを始めるために主に" 代わりにローカルのドキュメントを作成し、それらをアップロードし).

これらのドキュメントのメタデータを含むはい/サイト内の列に"緊急と呼ばれるなし" 別のサイト内の列は「ステータス」と. 私たちは"緊急のパーセントを示すビジネス要件を満たすために必要があります。" ドキュメントのステータスが「保留中」.

これは通常簡単に行うこと 私は非常に SharePoint のビーグル犬でこれのような何かを説明し、 興味があるなら、スクリーン ショットをたっぷりと.

一言で言えば, 次のでした。:

  • 「保留中」と呼ばれるドキュメント ライブラリ ビューを作成します。.
  • フォルダー構造を無視するようにビューを構成します。.
  • KPI リストを作成します。.
  • "保留中ドキュメント ライブラリを指すリストにインジケーターを作成します。" ビュー.

これは単に動作しません. KPI は、私の目標を示しています。 (例えば. 5 緊急の書類) しかし、常にゼロとして緊急ドキュメントの実際の数を示しています. 逆説的に, 場合は、詳細をドリルダウンします。, 一覧に 5 つの緊急の書類を示しています. 2 つのドキュメントの非常に単純なシナリオを作成, 1 つのフォルダー、1 つないです。. ここではスクリーン ショットです。:

イメージ

上記のスクリーン ショットは明らかに"値が、ビューに 2 つのドキュメントがあるを示しています" 1 つは、します。. 」CamlSchema" 空白の文書と共に Id ルート フォルダーであり、他の「84」という名前のフォルダー.

それが私にビューを指定しても, KPI は、"ショーのすべてのアイテム フォルダーなしの名誉します。" 設定し、代わりに, ルート フォルダーに自身を閉じ込め.

間違っている場合, ください私の行を削除またはコメントを残す.

</終了>

私のブログを購読します。!

Technorati のタグ:

問題を解決する: “FileNotFoundException” 私機能レシーバー.

私はいくつかのイベント レシーバーを特定のリスト インスタンスに追加するという機能の最後の週に取り組んでいた. (私はそのリストの受信機について少しブログ).

コマンドラインを使用してください。, 機能がエラーをインストールすること (しかし、次の非表示のエラーを参照してください。). 私はサイトの機能の展開を試みた, MOSS は「FileNotFoundException の不満" エラー. このブログのエントリは、私はそれを解決する方法について説明します.

これは、MOSS は、web ブラウザーで見せてくれたエラーです。:

機能 ' b2cb42e3-4f0a-4380-aaba-1ef9cd526f20’ はインストールされません可能性があるイベント レシーバー アセンブリ」xyzzyFeatureReceiver_0 の読み込み" 失敗しました: System.IO.FileNotFoundException: ファイルまたはアセンブリを読み込むことができません ' xyzzyFeatureReceiver_0’ またはその依存関係の 1 つ. 指定されたファイルが見つかりません。.
ファイル名: ' xyzzyFeatureReceiver_0’
System.Reflection.Assembly.nLoad で(AssemblyName ファイル名, コードベースを文字列します。, 証拠 assemblySecurity, アセンブリ locationHint, StackCrawlMark& stackMark, ブール値の throwOnFileNotFound, ブール値の forIntrospection)
System.Reflection.Assembly.InternalLoad で(AssemblyName assemblyRef, 証拠 assemblySecurity, StackCrawlMark& stackMark, ブール値の forIntrospection)
System.Reflection.Assembly.InternalLoad で(Assemblystring がを文字列します。, 証拠 assemblySecurity, StackCrawlMark& stackMark, ブール値の forIntrospection)
System.Reflection.Assembly.Load で(Assemblystring がを文字列します。)
Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject で()
WRN: アセンブリ バインディング ログになってオフ.
アセンブリ バインドのエラー ログを有効にするには, レジストリ値を設定します。 [HKLMSoftwareMicrosoftFusion!EnableLog] (DWORD) 宛先 1.
メモ: アセンブリ バインドのエラー ログと関連付けられているいくつかパフォーマンスが低下します。.
この機能をオフにする, レジストリ値を削除します。 [HKLMSoftwareMicrosoftFusion!EnableLog].

Windows SharePoint Services をトラブルシューティングします。.

私は意図的にエラーが発生する方法を知っています。: GAC にアセンブリをインストールしないでください。. しかし, それが GAC に格納. 私は通常 c にドラッグして gac にアセンブリをインストールします。:\windows エクスプ ローラーを使用して windowsassembly フォルダー. 感じた事はないです。 100% 私は常に、gacutil を考えたので快適なことは理由の存在 … それを試してみました. 違いが行われません.

インターネットで検索し、この記事を見つけた: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2243677&SiteID=1

ポスター、同じルート ビットのコードを使用するが起こった (この一覧から内部 WSS 本から) 有望な兆しだったので. ただし, アセンブリに飾ることの提案を [アセンブリ: ] ディレクティブは、私に意味を成さなかった. 私はとにかくそれを試して、私は正しかった. 違いが行われません.

私は私のクラスの定義がパブリックでなかったことに気づいたし、. 私はそれを公表し、その違いが行われません.

次, 私は「アセンブリ バインド エラー ログ有効に、トラブルに行きました" (便利と正確な指示に従ってを提供) これは興味深いの取得を開始し、. ランタイムがアセンブリがサーバーどこでも検索はそのログは私を示しています. それも私の薬のキャビネットにそれを検索することが表示されます。. しかし … それは、GAC では検索されません。.

私は私の冬のジャケットを置くと再びインターネットを探して行くし、誰かがあまりにもこの問題を抱えているを見つける. その投稿で長い議論が何にオフ ピーターズし、解決策を見つけることができません。.

1 つのログを検索しているし、もう少し進歩を主張する場所にアセンブリを移動します。. ブラウザーで新しいエラーで報酬を与え午前機能を有効にしよう:

アセンブリから「xyzzyFeatureReceiver_0」の機能レシーバー オブジェクト作成に失敗しました, 「Conchango.xyzzyFeatureReceiver をを入力します。" 機能 b2cb42e3-4f0a-4380-aaba-1ef9cd526f20: System.ArgumentNullException: 値を null にすることはできません。.
パラメーター名: タイプ
System.Activator.CreateInstance で(型, ブール型の非公開)
System.Activator.CreateInstance で(型)
Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject で()

Windows SharePoint Services をトラブルシューティングします。.

1 つの最後の旅行するには、インターネットの時間!

私はこの時間を見つける, 予想どおり十分, アセンブリが GAC にないために、コケがこのエラーを発行します。.

私は何かこれを肯定的な取得、少しに私が作成したことに誇りを感じるようにしようとする、 MSIL アセンブリの逃亡者, しかし、それは働いていません。. ただ困ってください。. 私「卵が先か鶏をつぶやきながら自分自身を見つける" 私の息の下で.

私は最終的にパントすること. 新しいプロジェクトを作成し、この新しいプロジェクトに上の incredible-cloaked-from-the-GAC-assembly の非稼働プロジェクトからコードをコピー/貼り付け. (私は、「アセンブリを GAC にインストールされている場合をバインディングから非表示のような何かと呼ばれるビルド フラグを捜す" 1 つを見つけることはできませんが、).

機能をインストールし、アクティブにして … それは働きます! だから, すべての後, 私は基本的にならなかった ' 再起動’ 私のプロジェクト. これはなぜ私のコンピューターを憎む別の理由です。.

これから役に立つものを知りました. 一日中 stsadm コマンド ラインを使用して、機能をインストールされていたとを使用して、「-力" 癖のオプション. いくつかの理由, 使用していない新しいプロジェクトをインストールされる強制オプション. 今度こそです, 私は実際には, 本当にこの新しいプロジェクトのアセンブリを GAC にコピーすることを忘れないでください。. その結果, その「FielNotFoundException をを受信" エラー. 今度こそです, 私はそれから stsadm, web ブラウザー経由で機能をアクティブ化しようとするとき. だから, -力は実際に 2 つの役割を果たしています。. 既存の機能を再インストールすることができます。. 実行時にエラーの抑制によって働けないバギーの機能をインストールすることもできます。. それはおそらく限りどこかのヘルプで言うが、私はそれに気づいたこと.

</終了>

Technorati のタグ: ,

クイック & 簡単: イベント レシーバーで SharePoint オブジェクト モデルを使用してアップロードされたファイルの名前を変更します。

更新プログラム: これは、作品が、コメントで説明する重要な制限があります。. これはまだいくつかの状況で役に立つかもしれません.

更新プログラム 2: 私の現在のプロジェクトで, ユーザーは、常にドキュメントをアップロードします。. その結果, 私は MS Word を実行しているされ、ファイルがそれに改名されたと考えている問題に実行しないでください。. 問題に遭遇しました, 「ファイルに他の誰かによって変更されました。" 簡単なセマフォ型フラグでこれを解決し、. ユーザー既定値から何かをメタ データ フィールドを変更する必要. Itemupdated() 受信機の有効な値が実際には、名前の変更を実行する前に、その後に見える, 任意の問題を持っていなかった. あなたのマイレージは異なる場合があります。.

私は特定の名前付け規則に準拠する特定のドキュメント ライブラリにアップロードされたファイルの名前を変更するクライアントの要件があります。. API は"名前の変更を行いません。()" メソッド. 代わりに, 私たちを使用します。 「MoveTo(…)". ここではこれを達成するためにコードの最小ビットです。:

 パブリック オーバーライド void ItemAdded(SPItemEventProperties プロパティ)
        {
            SPFile f = プロパティ。ListItem.File;

            f.MoveTo(プロパティ。ListItem.ParentList.RootFolder.Url + 「/xyzzy.doc");
            f.Update();

        }

唯一のトリッキーなビットは」プロパティです。ListItem.ParentList.RootFolder.Url」. [Moveto]() メソッドには、URL が必要です。. 文字列のポイントをマッシュが私で私の現在のドキュメント ライブラリのルート フォルダーに. これにより、私のイベント レシーバーで、ハードコーディングを避けるために.

これは同じ事をするより役に立つのバージョンです。, しかし、「タイトル」に、ファイルの名前を割り当てます:

 パブリック オーバーライド void ItemAdded(SPItemEventProperties プロパティ)
        {
            される DisableEventFiring();

            // ファイル自体の名前をこのアイテムのタイトルを割り当てる.
 // メモ: 我々 は、ファイル自体を変更する前にこの割り当ての場所を取る必要があります。.
 // Update を呼び出す() SPFile のプロパティを無効にするようです。
 // いくつかの意味.  「タイトル更新" 変更されるまでに失敗しました (更新() 呼び出し)
 // 変更前のファイル名に移動されました。.
            プロパティ。ListItem[「タイトル"] プロパティを = します。ListItem.File.Name;

            プロパティ。ListItem.Update();

            SPFile f = プロパティ。ListItem.File;

            // ファイルの拡張子を取得します。.  我々 は後で必要があります。.
 文字列 spfileExt = 新機能 FileInfo(f.Name).拡張機能;

            // リスト アイテムの ID をファイルの名前を変更、ファイルの拡張子を使用して維持するには
 // その部分はそのままの.
            f.MoveTo(プロパティ。ListItem.ParentList.RootFolder.Url +
                "/" + プロパティ。ListItem[「ID"] + spfileExt);

            // 移動をコミットします。.
            f.Update();

            EnableEventFiring();
        }

クイック ヒント: コンテンツのクエリ Web パーツ, ルックアップ列の値と XSL

私は「不動産の場所」という名前のコンテンツ タイプに列名がある.

列の種類「参照」です。.

私は変更しました。 <CommonViewFields> 列を表示する ItemStyle.xsl.

単純な <xsl:値の選択 =…> 戻る序数位置データを含む内部値を返します, など:

1;#マイアミ

人にやさしい値を取得するには, 部分文字列後 xsl を使用します。, 示すように:

<xsl:valuxslf を選択」部分文字列後 =(@ Real_x005F_x0020_Estate_x005F_x0020_Location,’#’)"></xsl:値の>

XSL 変換で参照値で作業しているし、人間に優しい値を取得する必要があるときにこの技法を使用します。.

<終了/>

Technorati のタグ: , ,

迅速で簡単な: サイト内の列の内部列名を確認します。

更新プログラム: ジェレミー Thake このことについてブログに書いているし、いくつか設置 コンソール アプリケーションのコード 内部名を示しています.

期日タスクからを表示するには、コンテンツ クエリ web パーツをしようとしていたと画面ラベル [期日], 私は、想定で使用する列の名前 <CommonViewFields> "Due_x0020_Date".

間違った!

実際の列名この場合は「期限」.

どのようにそれを見つけるか? 私はヘザーを再読み込み CQWP を変更することをソロモンのブログのエントリ データの追加の列を表示するには. 彼女は段階でこのプロセスをについて説明します #13. それを信頼します。. それが正しい. 少なくとも, それは私にとって正しかった. はるかに長い名前を持つ別の列の最初にそれを信用していなかった.

"信頼のそれを言う" 私はそれを信頼していない、おそらく無駄になるので付近の壁に私の頭を突き 2 時間. 決心した「期限後" 名前, 別のフィールドを追加したいのですが。 <CommonViewFields>. ソロモン法を用いた, "XYZ_x0020_Project_x0020_Due_x00"のような列名を得ていた.

自分自身に考えた, 切り捨てられた名前には明らかに. 先、非切り捨てられて行った成功なしでそれ. 私は最後に一見切り捨てられた名前を使用し、働いた.

ボーナスのヒント: CQWP で働いていたとき, 場合に悪い内部名を追加 <CommonViewFields>, CQWP は、クエリが結果を返さないこと教えてください。. しかし, フィールド名にデータ型を追加した場合, それは結果を返すだろう. データを追加する種類実際にマスク問題存在しないフィールドを参照していたので. 私はそれを追加すること, しかし、その値を表示しようとしたとき, 私はいつも空白を得るだろう.

これは、エラーをマスクでした。:

<CommonViewFields>Due_x0020_Date;</CommonViewfields>

これは、エラーをマスクでした。:

<CommonViewFields>Due_x0020_Date,DateTime;</CommonViewfields>

</終了>