削除する特定のドキュメントエントリ番号を抽出できるクエリを実行する必要があります。(SQL Server 2008)最初のクエリは、テーブルOINVからの結果を提供します。
SELECT DocEntry AS "DocEntryINV" , Comments, DocTotal
FROM OINV WHERE DocDate BETWEEN '10-27-2012' AND '10-29-2012' AND Comments IS NOT NULL
ORDER BY DocTotal ASC, Comments
テーブルからの2番目ORIN
SELECT DocEntry AS "DocEntryCN" , Comments, JrnlMemo, DocTotal
FROM ORIN WHERE DocDate BETWEEN '10-27-2012' AND '10-29-2012' AND Comments IS NOT NULL
ORDER BY DocTotal ASC, Comments
OINVサンプル結果
DocEntryINV JrnlMemo DocTotal
1 kaka-19 500
3 kaka-19 500
5 kaka-19 500
6 kaka-19 500
7 Rob-23 750
9 Rob-23 750
10 Alex-09 1000
11 Olma-08 1150
12 Paul-17 1250
13 Paul-17 1250
16 Paul-17 1250
17 Rita-99 1300
19 Rita-99 1300
ORINサンプル結果
DocEntryCN Comments JrnlMemo DocTotal
67 reverse kaka-19 500
69 reverse kaka-19 500
70 reverse kaka-19 500
71 reverse kaka-19 500
74 reverse kaka-19 500
75 reverse Rob-23 750
77 reverse Rob-23 750
78 reverse Rob-23 750
79 reverse Rob-23 750
84 reverse Paul-17 1250
86 reverse Paul-17 1250
87 reverse Paul-17 1250
テーブルOINVの場合、重複は、請求書の重複をERPデータベーステーブルOINVにプッシュするPOSソフトウェアから発生しました。請求書を無効にするためにクレジットノートを作成することによって状況を修正することを目的としたプログラムはうまく機能せず、最初から請求書よりも多くのクレジットノートを作成することがありました。(請求書は合計で45,000以上になります)。請求書の複製に必要な場所にクレジットノートが作成されない場合がありました。
ORINテーブルの余分なエントリが存在する場合、それらを元に戻すことができる両方のテーブルを使用してクエリを作成するにはどうすればよいですか?上記のシナリオの次の結果のように、逆にするDocEntryCN番号の結果を返すクエリが必要です。
DocEntryCN Comments JrnlMemo DocTotal
67 reverse kaka-19 500
69 reverse kaka-19 500
75 reverse Rob-23 750
77 reverse Rob-23 750
78 reverse Rob-23 750
84 reverse Paul-17 1250
90 reverse Rita-99 1300
NB。コメントには、一意の請求書番号が格納されます。OINVテーブルの2つのコメントが同じである場合は、重複エラーがあることを意味します。ORINテーブルのJrnlMemoフィールドには、OINV請求書番号が格納されます。請求書の繰り返しについてはありません。k、取り消すクレジットノートの正しい数はk-1である必要があります。