TehcKnowledge コンテンツ
問題
ディストリビューションのように 1 つのレコードにロールアップし、合計 $0.00 でロールアップするディストリビューションを除外する高度な ODBC クエリ。
解決策
これを行うには、次の手順に従います。
1. 通常のクエリヘッダーを作成します。
2. [スタート] に移動|設定 |[コントロール パネル] |ODBC。
3. [追加] をクリックします。
4. Microsoft テキスト ドライバーを選択し、[完了] をクリックします。
5. データソースに名前と説明を入力します。
6. [現在のディレクトリを使用する] チェック ボックスをオフにして、[ディレクトリの選択] ボタンをクリックします。
7. ソース ファイルがあるディレクトリにパスアウトします。
8. [OK] をクリックしてデータソースを保存します。 [ODBC データソース管理者] ウィンドウの一覧にデータソースが表示されます。
9. Integration Manager で、新しいクエリを作成します。
10. クエリは Advanced ODBC クエリです。
11. クエリに名前と説明を入力します。
12. [データ ソース] ドロップダウンから、作成したデータソースを選択します。
13. 次の SELECT ステートメントを入力します (列名とソース ファイル参照は、実際の名前を反映するように変更する必要があります)。
Select * from (SELECT SUM (Amount) As SumAmt, [Document Number], Customer, Account, Type from rmdist.txt GROUP BY [Document Number], Customer, Type, Account ORDER BY [Document Number], Customer, Type, Account) Where SumAmt <> 0
*[金額] フィールドは、合計するデビットまたはクレジットの金額です。
* As ステートメントを使用して、この集計フィールドに SumAmt などの名前を付け、最後の Where 句で使用する名前を 0 の条件で指定 <> 必要があります。
*名前にスペースを含むフィールドは、[ドキュメント番号] などの角かっこで囲む必要があります。
* マッピング先のマッピング ウィンドウで、マップするフィールドをすべて選択する必要があります。
* Group By ステートメントと Order By ステートメントには、[金額] フィールドを除き、選択されているすべてのフィールドが含まれる必要があります。
*続行する前に、必ずクエリをプレビューしてください。 アカウントは、クエリで適切にロールアップする必要があります。
14. 統合の設定を完了し、実行します。
この記事は TechKnowledge Document ID: 27956 でした