2017-11-29 3 views
0

SSRSレポートをグループ化して、各ページが11インチの周りに自然に壊れるようにしようとしています。SSRSグループのn回後のブレーク

Interactive Heightプロパティを動的に設定できないように見えるので、0に設定してデータセットにページ区切りを適用しています。

私は約3人のユーザーが1ページ分を占めると仮定しています。私は3つのEmployeeIDグループごとに壊れてしまいたい。私はRowCountを考慮するブレークを見ただけであり、これは私のデータセットのユーザーごとに一貫性がありません。ユーザーは、1または複数の行を持つことができます。

SSRSサブグループが3回発生した後にどのように壊れますか?私はすべての新しいページに表示されるヘッダー(タイトル、期間と空白行)が必要 SSRS Grouping

:ここ

は、私が持っている現在のグループのイメージです。 私はできるだけ多くの11インチを取りたいと思いますが、私は EmployeeIDグループが3回出現するたびに休憩すると述べています。

EmployeeID2グループは、私がRowNumber休憩を試していたときに実装されている必要はありません。

私はそれを見るように、私の問題には2つの可能な解決策があります。

  1. 誰かが
  2. 誰かがすべてのブレークパラメータ化ページを設定する方法を私に伝え、すべての11インチをブレークパラメータ化ページを設定する方法を私に指示

    :SSRSのサブグループ

最後に、追加の明確化のn出現

PageBreakをトグルするパラメータが必要です。 PageBreak ParameterFalseに設定されている場合、ヘッダーは1回だけ表示され、すべての従業員はInterActive Height = 0のように表示されます。 PageBreak ParameterTrueに設定されている場合、ヘッダーはすべての新しいページの先頭に表示され、すべてのページには3人の従業員が含まれます。私はしかし、3秒で実行します。このクエリは、今SSRSを凍結されているので、私はグループ化を達成するために期待しています、以下のコードを使用して、すべての3人の従業員インクリメントグループIDが割り当てられている私のStored Procedureにグループ化フィールドを実装しようとした

SSRS関数を使用します。

TSQLグループ化ロジック:

,EmpRank AS (
    SELECT DISTINCT 
     EmployeeID 
     ,DENSE_RANK() OVER(ORDER BY FormattedName) AS 'EmpCounter' 
    FROM FilteredData 
) 

,EmpGrouping AS (
    SELECT 
     EmployeeID 
     ,((EmpCounter -1)/3) AS 'EmpGroup' 
    FROM EmpRank 
    GROUP BY ((EmpCounter - 1)/3) 
     ,EmployeeID 
) 

SELECT 
    FilteredData.* 
    ,EmpGrouping.EmpGroup 
FROM FilteredData 
    LEFT OUTER JOIN EmpGrouping 
     ON EmpGrouping.EmployeeID = FilteredData.EmployeeID 
ORDER BY EmpGroup, EmployeeID 

はTSQLグループ化ロジックが終わりで働いていた、事前に

+0

そのイメージリンクをインラインイメージに変更してください。ここのほとんどの視聴者はそれを好む。ありがとう –

+0

@ KashifQureshiあなたはそれを自分で行うことができますが、今必要はありません:) – Archer

+0

@Archer笑、私は、通常、私は知っている。しかし、今日私は気分ではない –

答えて

0

、ありがとうございました。昨日のグループ化を試みたところ、Visual Studioはクラッシュしていましたが、今日はそうではありません。

いずれにしても、私が望むように従業員をグループ化した解決策がありました。 SSRS。ページの高さに基づいてグループ化する方法はまだ分かりませんが、少なくともサブグループの出現に基づいてグループ化することができました

関連する問題