0

請求書のバッチを実行する SQL Server Reporting Services レポートがあります。各請求書には、ヘッダー、本文、およびフッターがあります。各請求書が別のページに印刷されるように、レポートは請求書番号によってグループ化されます。

私の問題は、請求書の本文が 1 ページにまたがると、各ページでフッターが繰り返されることです。請求書 (グループ) の最後のページにのみ表示したい。

オプション「ページフッター:最初のページに表示」のチェックを外してみましたが、これはグループではなく、バッチ全体の最初のページからのみフッターを削除します。

フッター情報を本文に入れることも試みましたが、これらの請求書は印刷済みの紙に印刷されるため、フッターがページの一番下にあることが重要です。

4

2 に答える 2

0

私はなんとか自分の望むことを達成することができましたが、それは回避策にすぎません。私が知る限り、SSRS2005ではこれを行う方法はありません。

私の解決策は、グループごとに返される行数をカウントし、各ページの行を制限することでした。これにより、ストアドプロシージャのページ番号を推測し、行ごとのグループページ番号と最大グループページ番号を返すことができました。

SELECT CEILING((sum(1) over (Partition by sClientInvoiceNo))/ @MaxRowsPerPage) as GroupMaxPage,CEILING((row_number() over (Partition by sClientInvoiceNo order by iSortOrder,apportionmentID desc))/ @MaxRowsPerPage) as GroupPage

次に、レポート内のグループページ番号でデータをグループ化し、最後のページのフッターデータを具体的に確認しました。

=IIF(fields!GroupPage.Value <> fields!GroupMaxPage.Value, "", Fields!iBalanceDue.Value
于 2011-12-13T17:42:27.323 に答える