SharePoint 2010 CQWPおよびManaged Metada列
-
16-10-2019 - |
質問
SharePoint 2010サーバーでコンテンツクエリWebパーツを使用し、「管理されたメタデータ」タイプのサイト列でフィルターを使用しようとしています。これらの列は、使用可能な列がフィルター構成にドロップダウンすることをintに表示しません。誰かが理由を知っていますか?これはバグ/デザインですか?
解決
私はついに、プロパティデータマッピングとDataMappingViewFieldsにそれらを設定することにより、マネージドメタデータフィールドをXSLTに送信することができました。 CommonViewFieldsでそれらを設定しても機能しませんでした。また、ListUrlとListNameを定義する必要があります。
この方法を使用してリストのGUIDは必要ありませんが、管理されたメタデータフィールドのGUIDが必要です。
したがって、本質的なピースは次のようになります:
<property name="WebUrl" type="string">~sitecolection/someplace/myweb</property>
<property name="ListUrl" type="string">~sitecolection/someplace/myweb</property>
<property name="ListName" type="string">Pages</property>
<property name="DataMappings" type="string">NameUsedInXSLT:{guid-that-belongs-to-managed-metadata-field},NameOfManagedMetadataField,TaxonomyFieldMulti;</property>
<property name="DataMappingViewFields" type="string">{guid-that-belongs-to-managed-metadata-field},TaxonomyFieldTypeMulti;</property>
以上です。
管理されたメタデータフィールドにGUIDを使用しない方法は見つかりませんでした。
また、プロパティCommonViewFieldsで使用している他の非管理メタデータコラムを指定できます
他のヒント
確かではありませんが、管理されたメタデータ列は、複数の値を保存できるため、CQWPでフィルタリングできないという複数の選択列タイプのようなものであると確信しています。
(考えてみると、データベースクエリは、データベースフィールドにシリアル化されている値の一部のみで一致する必要があるため、本当に遅くなります)
私は思う... ...私がチェックしたとは言えません。
管理されたメタデータ列は、CQWPで、サイト列の下で定義するときに複数の値を許可するように選択されないまで使用できます。複数の値を許可するように選択したら、CQWPはそれらをMulitple選択列タイプとして扱い、許可された列のドロップダウンの下に表示されません...
特定のライブラリ/リストを指定したときに、フィルタードロップダウンに「管理されたメタデータ」列を表示することができました。
次のソースのいずれかが選択されているときに表示されません。
- すべてのサイトからアイテムを表示します
- 次のサイトとすべてのサブサイトからアイテムを表示します
私は常にMMサイトの列をマルチの価値がないと考えていますが、それらが使用されているライブラリでは、多値にします。したがって、CQWPは値を選択するときに常にそのシナリオで機能します
うーん、私はCQWPの一部として何度も管理されたメタデータ列を使用しました。実際、CQWPの新機能の1つです。
CQWPのクエリには間違ったものがあるかもしれないと思います。他のすべての列が見えますか?
乾杯