2011-01-11 19 views
0

セットアップ:クエリの問題

私は、SharePointサイト上に2つのリストを持って、AとBリストA、リストBのIDフィールドへの参照である列「B」を持っているI

を私はSharePointのWebサービスを使用して、リストA内の項目のクエリを実行することができるよ、とさえに基づいてクエリをフィルタリングすることができています:どのような作品B.

にAで500K +を記録し、約6Kの記録を持っています列「b」の特定の「ルックアップ」値。たとえば、列bが1234(... <値タイプ= "参照" /値> ...)と一致するAのアイテムを照会することができます。

何動作しません: - のみルックアップ列を

問合せは、私のクエリはどのような方法で日付を伴わないにもかかわらず、特定の日付より古いアイテムのために動作しません。 2年以上経過したデータのクエリは正常に動作しますが、それより古いものは失敗します。 SharePointのWebページからアイテムを表示すると、そのアイテムは正常に表示され、Bの子レコードからAの親レコードまでのすべてのリンクが正常に機能します。ルックアップの列はそのまま表示されます。

質問:

などのシステムの復元、同様に、動作を停止するために、ルックアップIDに基づいてクエリを防ぐことができ壊れるためにいくつかの基礎となるデータを引き起こす可能性がありSharePointで保守作業のいくつかの種類がありますか?言い換えると、ルックアップ列のデータは、Webブラウザのサーフェス上で正しく表示されます。しかし、SharePointは、この値をGUIDなどの非同期または同期外の不可視データで表現していますか?

ありがとうございました。

+0

この問題は、http://blog.qumsieh.ca/2009/05/12/spquery-value-type-lookup-fails-on-indexed-columns/に関連しています。 – Dan

+0

おそらく、その列を非索引から索引に変更した日は、すべてが地獄に行った日です。 – Dan

答えて

1

多分あなたは別の制限を打つでしょう。クエリで取得されるアイテムの最大数?

は、あなたのするFieldRef要素にLookupId =」TRUE」属性を追加することにより、IDによってlist throttling

+0

いいえ、またはdefaultviewに最大アイテム/フィルタが適用されているかどうかを確認してください... – Colin

+0

ありがとうございました。とにかく各クエリが(50未満の)いくつかの項目しか返さないという事実を除けば、それは理にかなっています。問題の行のIDはマジックナンバーでも日付でもありません。これはマジックではありません。私の唯一の疑念は、間違っていたシステムの復元が何かを壊してしまったということでした。 – Dan

0
+0

悪い日付以上の項目を照会すると、LookupIDなしでうまく動作するので、必要ではないことは分かっていました。しかし、私はとにかく試しました - 運はありません。それでも動作しませんでした。私は数値、テキストなどの値の種類を使用してクエリを試みました...何も動作しません。 – Dan

0

問題は、問題の列が索引付けされたという事実に関連しているようです。インデックスを削除すると、すべてが機能し始めました。私が指数を再適用したとき、すべてが機能し続けました。私はこの問題を壊れたインデックスに帰しています。