フィルターが適用されたときにフォルダー内のドキュメントが表示されないのはなぜですか?

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/6129

質問

プロジェクト(String)というカスタム列をドキュメントリストに追加しました。次に、異なるページに異なるビューを設定して、その列でフィルタリングします。

問題は、フィルターを適用する場合、プロジェクト列の値がフィルターの1つのセットに対応していても、フォルダー内に保存されたドキュメントが表示されないことです。

この問題を解決する方法を知っていますか?

役に立ちましたか?

解決

最後のコメントに基づいています

特定のページにドキュメントリストを表示するWebパートを作成し、列コンテンツにフィルターを適用して、特定のドキュメントのみを表示しました。しかし、そのようにして、フォルダー構造が失われ、すべてのドキュメントがフラットに表示されます。

私は今あなたの質問に答えることができると思います。

新しいビューを作成し、フィルターセクションで選択する場合

コンテンツタイプはフォルダーに等しくなります

また

次に、ドキュメントに適用する追加の条件を追加します。

このようにして、フォルダーは常に表示されますが、その内容は追加の制約に基づいてフィルタリングされます。

これにより、フォルダーが追加の制約に合った子供が含まれているかどうかにかかわらず、フォルダーが表示されますが、階層をナビゲートできるようになります。

他のヒント

コードでビューを作成した場合、scope = "Recursive" ViewAttributeを指定する必要があります

ここにいくつかの例が示されています

http://sharepointmagazine.net/technical/development/writing-caml-queries-for-retrieving-list-items-from-a-sharepoint-list

SharePoint UIでビューを作成した場合、

  1. ビューを変更します。
  2. 編集ビューページで「フォルダ」セクションを展開します
  3. 「フォルダーなしですべてのアイテムを表示する」を選択します

これにより、再帰クエリが実行されます。

指定 ViewAttributes Scope='Recursive' 機能していないようで、むしろSPViewのスコーププロパティを再帰的に設定する必要があります。

SPView view = list.Views.Add(“TestView”, fields, string.Empty, 100, true, false);
view.Scope = SPViewScope.Recursive;

ここに完全な例があります:

http://sharepointnadeem.blogspot.in/2012/02/create-view-to-show-all-items-without.html

この応答は非常に遅れていることに気付きますが、次の人に役立つ可能性があります。この質問は次のように理解しています。フィルターがフォルダーの属性に適用され、フォルダーがビューで適切にフィルターをかけている間、特定のフォルダーにアクセスしたときにフォルダーの内容は表示されません。

これはとても簡単です。ビューを変更し、フォルダーのグループ化を展開し、このビューを表示します。「上位レベルフォルダーで」を選択します。これにより、フィルターが最上位フォルダーのみに適用されます。コンテンツにアクセスするフォルダーを選択すると、フィルターは適用されず、それにより内部のコンテンツが表示されます。

パーティーにも遅れていますが、最も簡単な答えは、「フォルダー」という名前のビュー設定を「フォルダーなしですべてのアイテムを表示する」に調整することだと思います。デフォルトでは、フォルダー内のアイテムは フォルダ この場合、技術的にはそうではないフィルター条件を満たしていません。これは、直感的でないMicrosoftwareの標準的な例です。

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top