バックエンド システムの設計が非常に悪く、変更できません。この質問の目的を簡単にするために、データは次のようになります。
VendorNumber, ItemNumber, PONumber, DocumentNumber, PiecesToDistribute1, PiecesToDistribute2, PiecesToDistribute3, PiecesToDistribute4, ..... PiecesToDistribute300
PiecesToDistribute## の末尾の数字は店舗番号です。
フィールドが0ではない各場所に配布するためにレポートの一部を表示する必要がありますが、300の潜在的な列幅で、これを機能させるためのアイデアに苦労しています。コマンド テーブルとして 300 行のユニオンを使用してサブ レポートを実行しようとしました (OK、最初は 5 行だけで試しました)。SQL にパラメータを入力しましたが、レポート ウィザードの「リンク」画面で SQL からのパラメータが表示されないようです。リンクするオプションとして。
店舗番号の表があります (時間の経過とともに変わる可能性があります)。
店舗番号を含むテーブルへのリンクに基づいて、(繰り返しによっても) フィールドを動的に選択する方法はありますか? たとえば、フィールドの名前を動的に作成します (Excel の indirect() 関数に似ています)。
私は基本的に私の出力を次のようにしたい:
ItemNum Description Item Cost Retail
ABCD1234 Some Widget My Company Has Here 25.00 35.00
Loc 1: 4 Loc 7: 3
Loc 2: 3 Loc 9: 8
Loc 3: 2 Loc 16: 5
Loc 4: 2 Loc 98: 8
分配線とは別のテーブルがあれば、これは問題ではありませんが、現在のように、私は少し困惑しています。即時の解決策 アクティブなストアのみに対してこれをハードコーディングできますが、それは長期的には維持できません。
何が欠けているか、または良いアイデアはありますか? (バックエンド システムを変更することはオプションではありません。購入システムのベンダーがすぐにスキーマを変更するとは思えません。おそらく 20 年間このようになっています)