この質問は、先日私が尋ねた質問(「重複したレコードを見つける必要があるが、取り消されたトランザクションを除外する必要がある」)のフォローアップです。
顧客の燃料取引を表示する Crystal Report があります。重複したトランザクションが誤ってインポートされる場合があります。このエラーが発見された場合、管理者はトランザクションを取り消すため、元の 2 つの重複と取り消し用の「負の」トランザクションが残ります。例:
Date; Qty; Value; Reversal
1/14/08 5 20 N
1/14/08 5 20 N
1/14/08 -5 -20 Y
1/20/08 8 56 N
1/22/08 9 62 N
1/22/08 9 62 N
理想的には、お客様には 1 つのトランザクション (またはまだ取り消されていない重複トランザクション) のみが表示されます。トランザクションが取り消された場合、元の一意のレコードのみを表示する必要があります。例 (上記のデータに基づく):
Date; Qty; Value;
1/14/08 5 20
1/20/08 8 56
1/22/08 9 62
1/22/08 9 62
先ほど説明した方法でデータを返すクエリが既にありますが、それを他のテーブルへの結合を必要とする Crystal レポートと統合する必要があります。既に持っているSQLを使用するとパフォーマンスがひどいので、他のテーブルに結合されたテーブルとしてSQLコマンドを使用する代わりに、Crystalの式内で重複(逆)トランザクションを非表示にできるかどうかを確認しようとしています.
不明な点がある場合はお知らせください。事前にあなたの知恵に感謝します!