SharePoint Query Builder Tool の MOSS 版が公開されていました。
以前に紹介していた SPS 2003 用の検索クエリー作成用ツール (→ SharePoint Query Builder Tool) の MOSS 版が既に公開されていました。
作者は SharePoint Query Builder Tool と同じようです。
・GotDotNet User Sample: MOSS Query Tool
<http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=89b3cda7-aad9-4919-8faf-34ef9b28c57b>
ちなみに、SharePoint Query Builder Tool でも SPS 2003 上でサーバー名を MOSS 2007 に指定することで実行することは可能でした。
しばらく、このツールが公開されていることを知らずに、無理矢理使っていました。
SPS 2003 と MOSS 2007 では検索 SQL 文の仕様が一部変更になっているので、MOSS 2007 に対応したツールがあることは有難いです。
・FROM Clause in Enterprise Search SQL Syntax
<http://msdn2.microsoft.com/en-us/library/ms547531.aspx>
特にセットアップは無くて、圧縮ファイルを解凍して、MossQueryTool.exe を MOSS 2007 が動いているサーバー上で実行するだけです。
実際にクエリーを投げる方法についても、SharePoint Query Builder Tool に比べてシンプルになっています。
まずは右上の「Get」ボタンを選択します。 そうすると、「Scopes」リストとプロパティ一覧が展開されます。
次に、「Keywords」テキストボックスに、任意の検索キーワードを入力します。
そして、「Scopes」リストの下の「Make SQL」ボタンを選択します。 そうすると、「Scopes」リストの斜め横のテキストボックスに SQL 文が展開されます。
後は、「Run Query」ボタンを選択するだけです。
なお、「Scopes」リストは特に選択する必要はありません。
また、プロパティも選択する必要はありません。 自動的に、Title, Rank, Size, Description, Write, Path が選択されます。
検索キーワードには日本語を指定することも出来ます。
利用する際の注意点としては、検索条件やキーワードの設定を変更した際には必ず「Make SQL」ボタンを選択する必要があります。
そうしないと検索 SQL 文がアップデートされません。
検索結果を XML で表示するだけでなく、データセットで表示することが出来たり、検索 Web サービスへのリクエストボディも展開されてくれたりと、使い勝手も良くなっています。
検索クエリーを試す際はもちろん、カスタム検索を利用するアプリケーション開発には必須のツールと言えます。
2007年02月12日
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/3333976
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/3333976
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。
この記事へのトラックバック
SharePoint初心者のyasuです。
今回以下のようは依頼が飛び込み、どうしたらよいかわからず、藁をも掴む気持ちで書き込みをさせていただきました。
依頼は、SharePointのWebサービスを使用して、リストaからIDが1〜10のアイテムのフィールド「Title」を取得する。
サーバー側に手を加えることができない環境ということと、.Netを使用できない環境なため、JavaScriptを使用して実装しようと思っているのですが、
文献を探してもなかなか見つからず困っています。
一応「[サイト]/_vti_bin/Lists.asmx」のQueryEXを使用すればよさそうことまでは、わかったのですが、sendするXMLの形式がわからず行き詰まってしまっています。
ご存知でしたらご教授ください。
GetListItems メソッドでは?
http://[site]/_vti_bin/lists.asmx にアクセスして、GetListItems を選択すると、何を渡せば良いか判るのですけど。
恐らく、XmlHttp を使ってリクエストすると思いますが・・・
基本的には、Web サービスでは以下のフォーマットになります。
<soap:Envelope 〜 >
<soap:Body>
本体
</soap:Body>
</soap:Envelope>
本体部分は、メソッドによって異なりますが、以下のような内容を作成します。
<GetListItems 〜 >
</GetListItems>
後は、スキーマに従って、リスト名、クエリ内容を作成して、リクエストすれば良いはずですけど。
ちなみに、XML内容はきちんとエスケープしないと駄目です。
「GetListItems」ですね、早速調べてチャレンジしてみます。