SharePoint に 2 つのリスト、クイズ、およびクイズの質問があります。クイズの質問には、クイズを指すルックアップ列があり、元のリストの行 ID (クイズ ID) の列が含まれています。カスタム XSLT を使用してデータ ビューアー パーツを作成したいと考えており、ほぼ完成していますが、最終的なクエリを正しく動作させることができないため、クイズ ID のすべてのクイズの質問を取得したいと考えています。
まず、SPD でデータソースを作成し、両方のリスト (リンク) を含めました。次に、ページに新しいデータ ビューを挿入し、データ ソースを含めました。フィールドの階層は SPD で正しく表示されます。
/dsQueryResponse/QuizQuestions/Rows/Row/@Quiz_x003a_ID
私の XSLT では、フィルターを次のように記述しています。
<xsl:variable name="Rows" select="/dsQueryResponse/QuizQuestions/Rows/Row[@Quiz_x003a_ID=10]"/>
この場合の 10 は単なるテスト データであり、一覧にあることを確認しました。ただし、このクエリを実行すると、次のように結果が返されません。
Count: <xsl:value-of select="count($Rows)"/>
フィルターを外すと、リスト内のすべての行が取得されます。ここで、関連する場合と関連しない場合がある 2 つの考慮事項があります。
SPD では、現在の DataSource 階層を見るたびに、この ID フィールドの整数値が表示されません (SP UI では表示されますが)。代わりに、「
行の値をループするループでは、@Title フィールドの変数を取得して表示できますが、@Quiz_x003a_ID フィールドの変数を取得して表示することはできません。予期しないエラーと関連付け ID (これは SharePoint Online 2013 にあります) が表示されるため、これ以上簡単にトラブルシューティングすることはできません。このフィールドは明確に表示され、SPD の階層ナビゲーションから同じように XPATH をコピーできます。
前もって感謝します!