グループフッタを設定し1つのグループに255以上の行が含まれると、グループ化操作が有効にならない場合がある

文書番号 : 39850     文書種別 : 制限事項     登録日 : 2017/01/18     最終更新日 : 2017/01/18
文書を印刷する
対象製品
SPREAD for ASP.NET 8.0J
詳細
グループフッタを設定し1つのグループに255以上の行が含まれると、グループ化操作が有効にならない場合があります。これはSUBTOTAL関数を利用したグループフッタ集計機能の制限(当該関数の引数の最大の数は255個まで)事項です。

SUBTOTAL
http://docs.grapecity.com/help/spread-aspnet-formula-8/#FunctionSUBTOTAL.html

なお、グループ化列で同一データが連続する場合、これらはセル範囲として関数に渡すためより多くの行のグループ化が可能です。

【再現手順】
1.新規Webフォームに下記の再現コードを貼り付け、プロジェクトを起動します
2.列BをSPREAD上部にドロップし、グループ化を試みます
--- グループ化が行われません

【再現コード】
------------------------------------
Webフォームクラス
------------------------------------
Public Class WebForm1
  Inherits System.Web.UI.Page

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    If Page.IsPostBack Then Return

    ' テスト用データの設定
    FpSpread1.ActiveSheetView.RowCount = 600
    For i As Integer = 0 To FpSpread1.ActiveSheetView.RowCount - 1
      FpSpread1.ActiveSheetView.SetValue(i, 0, i)
      FpSpread1.ActiveSheetView.SetValue(i, 1, i Mod 2)
      FpSpread1.ActiveSheetView.SetValue(i, 2, i Mod 3)
      FpSpread1.ActiveSheetView.SetValue(i, 3, i Mod 4)
    Next

    ' ページングの禁止
    FpSpread1.ActiveSheetView.AllowPage = False

    ' グループ化
    FpSpread1.ActiveSheetView.AllowGroup = True
    FpSpread1.ActiveSheetView.GroupBarVisible = True

    ' グループフッタの設定
    FpSpread1.ActiveSheetView.GroupFooterVisible = True
    FpSpread1.ActiveSheetView.Columns(0).AggregationType = FarPoint.Web.Spread.Model.AggregationType.Count
  End Sub

End Class
回避方法
グループ化後の1つのグループの行数が254以下になるようデータを調整する、もしくはグループフッタにおける数式の利用を中止する方法が考えられます。