0

I次のクエリを持っている:クリスタルレポートテーブルのソース難易

SELECT * 
FROM tbl_Muffins 
WHERE OvenLoadId IN (
    SELECT OvenLoadId 
    FROM tbl_Muffins 
    WHERE OrderId = ? 
    GROUP BY OvenLoadId 
) 
ORDER BY OvenLoadId, LocationNumber ASC 
クエリのアイデアは、私はOrderIdでを指定したい、と私はそれからアイテムを持っているすべてのオーブンのロードをしたいということです

他のオーダーからのものであっても、それらの荷物内の他のアイテムと同様に、これらの荷物に含まれるすべてのアイテムを含む。

クエリは期待通りに機能しますが、私はそれを作成したCrystal Reportには使用できません。

私はこのクエリをユーザー定義関数に入れましたが、Crystal Reportのテーブルソースとしてこの関数の呼び出しを使用することはできません。私はVisual Studio 2003を使用しています(古いですが、クライアントはアップグレードを拒否しています)。

私は間違っていますか?以降のCrystal Reportsのバージョン9から

おかげで、

jnsohnumr

+0

これをビューまたはストアドプロシージャに変えて、それをCrystal Reportsのソースとして使用できませんか? –

+0

これを行う方法がわかりません。それはパラメータを取る必要があるので、ビューにすることはできません。 Crystal Reportsのテーブルソースとしてストアドプロシージャを使用するにはどうすればよいですか? – jnsohnumr

答えて

1

は、それがクリスタルの"Add Command"機能を使用して、カスタムクエリからレポートすることが可能となりました。

コマンドクエリhereにパラメータを追加する方法について説明します。

+0

私はそれを試してみましょう。 Visual Studio 2003バージョン9に同梱されているバージョンはありますか?このページによると:http://msdn.microsoft.com/en-us/library/ms225607(v=vs.80).aspx – jnsohnumr

+0

私は知らない - 私はVS 2003を持っていない。最も簡単なCrystal Reportsデザイナを開き、メニューから[ヘルプ] - [Crystal Reportsについて]を選択する方法があります。 –

+0

そのような作品です。パラメータを指定せずにクエリを取得できます。ときどき動作するパラメータを持つものがあります。私はコマンドを保存し、検証DBを実行しようとすると、アクセス違反が発生し続ける。幸いなことにクライアントがこのレポートをキャンセルしたので、私は別のものに移ります。クリスタルレポートがかなりフレークであるようです。 – jnsohnumr