0

データベースに直接クエリを実行できるレポート ライターがありますが、クエリは SQL ビューから選択する必要があります。多くの追跡ソリューションを開発する必要がありますが、ロジックが関係しているため、これまでのところこれを達成できた唯一の方法は、SQL ステートメントがレポート ライターを離れる前にハイジャックし、ビューではなく関数に向けることです。 )。

これを達成するには、よりユーザーフレンドリーな方法を開発する必要があります。最初に、レポート作成者が表示するビューに、テーブルの 1 つからアイテムとロット番号を入力し、アイテムとロット番号を使用して関数を呼び出し、元のビューにそのアイテムの使用量と消費トランザクションを何らかの方法で追加することでした/多く。レポート ライターがどのように設計されているかにより、アイテム/ロットのみを返す元のビューは、最終的にトランザクションが取り込まれるビューと同じオブジェクトである必要があります。

クエリの一部として、alter view ステートメントを使用する方法はありますか? この目標を達成するためのより良い方法はありますか? 私はここで少し迷っています。

4

1 に答える 1

0

コメントする評判がなく、これが SQL Server であることを確認して、次のことを行うことができますか?:

SELECT st.*
, dbo.ufn_usage_and_consumption(st.item_number, st.lot_number)
from some_table st

基本的に、ビューとビューの FOR EACH ROW の両方を呼び出して、SQL Server 関数を呼び出します。

これは最適ではないことに注意してください。基本的に、RBAR 処理 (Row by Agonizing Row) を実行し、すべての行に対して関数を呼び出します。

本当に、レポート ライターがそれをサポートし、パラメーターを渡してクエリを呼び出し、結果を返す場合は、ストアド プロシージャの作成について確認します。

私は次の仮定を立てています: 1) 関数から返されるデータはスカラー (1 つの値のみ) です。そうでない場合は、コンマ区切りの文字列として返すことができます。

それが役立つかどうかはわかりませんが、クエリで頑張ってください!

于 2013-11-13T20:46:39.793 に答える