1

シナリオ - 多数のレポートを格納するサイトを構築しています。メイン Web の下に、さまざまなレポート カテゴリ用の 30 ほどのサブサイトと、各サイトに個別のレポートごとに 1 つずつある複数のライブラリがあります。合計で、30 のレポート カテゴリ (サイト) にわたる約 600 のレポート (ライブラリ)。このデザインは決定済みであり、変更することはできません。

さまざまなカスタム メタデータ列を使用して、すべてのレポートを検索するための単一の高度な検索ページを作成する予定です。それは簡単です。箱から出してすぐに実行できます。

最も重要な検索条件の 1 つは、どのレポートを検索するかということです。前述したように、その中には多くのレポートがあります。レポートの種類を「見えないように」追加することを指示します。レポートのカテゴリを選択し、次にレポートの種類を選択すると、検索ページが表示されます。検索では、どのレポートが検索されているかを「認識」する必要があります。

ライブラリが多すぎるため、スコープの選択は実行可能なオプションではなく、新しいレポートが作成されるとさらに追加されます。

これで、次のように「u」パラメーターを URL に追加すると、結果に必要な結果を取得できます。

results.aspx?k="RunDate=1/23/13"&U=http://site/report_type/library"

(わかりやすくするために、アドレスはエスケープされていません)

私の課題は、そのパラメーターを高度な検索にフィードし、生成されたクエリの最後に追加する方法を見つけることです。

Webパーツを少しいじるだけでできると確信していますが、正しい方向に少し押し込む必要があります。

または、いつものように、もっと素晴らしいアイデアがあれば、それを実行できます。

ここで、さまざまなレポートに独自のさまざまなメタデータ列のセットがあり、レポートごとに正しいものだけを表示したいという 2 番目の問題がありますが、一度に 1 つの危機です。

編集 - さらに調査したところ、シールされたタイプであるため、高度な検索 Web パーツを拡張できないようです。誰かがそれを回避する方法を持っていますか、または私がクラックできるサードパーティの高度な検索ページを持っていますか?

4

2 に答える 2

2

リダイレクトを担当する JavaScript 関数 NavigateTo(url) をオーバーライドすることで、この問題の解決策を見つけることができました。私の解決策はここにあります

于 2014-05-20T16:17:06.337 に答える
0

パラメータがコンテキスト検索スコープuに似ているため、実際に求めているのはコンテキスト検索ボックスです。

標準の検索ボックスを希望どおりに構成できるかどうかわからないため、常にクエリ文字列が追加されますu=<current url>。いくつかの(単純であっても)コードに頼る必要があると思います。

ここにある例:コンテンツ エディター Web パーツで SharePoint コンテキスト検索ボックスを作成する。もちろん、サーバー側のコードでも同じことができますが、querytring パラメーターを追加するだけなので、JavaScript で十分です。

于 2013-03-07T07:23:26.383 に答える