4

このカスタムレポートを検討してください。

レポートのレイアウト

そのページ番号をすべてのページで自動的に生成したい。横向きのページがいくつかあります。フッターにページ番号を配置したいのですが、横向きレポートのフッターはページの右側ではなくページ下部に配置されるため、横向きレポートで問題が発生します。ページ番号を本文セクションに配置する必要があります。

本文セクションにページ番号を配置するにはどうすればよいですか?

4

3 に答える 3

5

あなたが創造的にならなければ、これは不可能だと思います。

現時点でプログラムが手元にないので、これがいくつかの考えを始めることができることを願っています。

行数を数えてデータにexrta列を追加し、x行ごとにページ分割を強制してみてください。それがうまくいけば、視覚的に正しくするためにいくつかのフォーマットで遊ぶことができるかもしれません。

頑張ってね!

于 2012-12-04T11:07:36.853 に答える
4

この記事は役に立つかもしれません:SSRSでページ番号を決定する

SSRSでページ番号を決定する

このメソッドは、SQL Serverの新しいランキング関数を利用し、SQLレポートで使用して、レポートの本文のページ番号を決定し、その情報に基づいて列を非表示/表示することもできます。

次の場合にこの方法を使用します。

  1. 1ページに表示されるレコード数に事前設定された制限があります
  2. グループ化があり、各グループが独自のページに表示されます
  3. 各ページのレコード数を正確に計算できます

この記事のソリューションでは、SQLのランキング関数を使用しており、適用可能かどうかを確認する価値があります。

だから私はこれがあなたのために働くことができる3つのシナリオがあると言いました。それぞれを行う方法の例を示し、残りはあなたの創造性に任せます。これは、サンプルの販売テーブルとして使用されます。

name     sales_amount    group_name  Scenario #1     Scenario #2     Scenario#3
A        10              A1          1               1               1
B        20              A1          1               1               1
C        30              A1          2               1               1
D        30              A2          2               2               1
E        40              A3          3               3               2
F        40              A3          3               3               2
G        50              A4          4               4               2
H        60              A5          4               5               2

シナリオ#1:

各ページに配置するプリセット#レコードがあります。SQLクエリは次のようになります。

DECLARE @rows_per_page INT
SET @rows_per_page = 2
SELECT
 employee.name
 ,page = (Row_Number() OVER ( ORDER BY employee.sales_amount ) / @rows_per_page)
FROM
 employee

SSRSでは、Tablix(SSRS 2008)で親グループを作成し、「グループの各インスタンス間」を解除するオプションを設定できます。(SSRS 2008の[ページ分割]タブ)


シナリオ#2:

グループ化があり、各グループが独自のページに表示されます

SELECT
 employee.name
 ,page = Dense_Rank() OVER ( ORDER BY employee.group_name )
FROM
 employee

SSRSのレポートで、table / matrix / tablixのグループプロパティで、「グループの各インスタンス間」を分割するオプションを設定します。(SSRS 2008の[ページ分割]タブ)


シナリオ#3:

各ページのレコード数を正確に計算できます各ページのレコード数を正確に計算できれば、#1と同様の方法で簡単に計算できます。この例では、数は1ページあたり4レコードでした。

于 2012-12-07T14:21:05.830 に答える
1

これを使用します: SSRSのレポート本文のページ番号にアクセスします

またはこれ: http ://social.msdn.microsoft.com/forums/en-US/tfsreporting/thread/b901c9b4-320e-4fbc-afa9-495d5566c168/

レポートのカスタムコードを作成し、必要な場所でそのコードを参照する必要があります(2番目のリンクから参照)。

[データ]または[レイアウト]タブビューをアクティブにして、[レポート]-> [レポートプロパティ]を選択します。[レポートプロパティ]ダイアログで[コード]タブを選択します。[カスタムコード:]に新しい関数を追加して、ページ番号を取得します。

Public Function PageNumber() as String
     Dim str as String
     str = Me.Report.Globals!PageNumber.ToString()
     Return str
End Function

Public Function TotalPages() as String
     Dim str as String
     str = Me.Report.Globals!TotalPages.ToString()
     Return str
End Function

次のように使用します。

="Page " + Code.PageNumber() + " of " + Code.TotalPages()
于 2012-12-07T21:16:00.600 に答える