Ben calculation/summary alan yerine number alan tercih ediyorum, replace ile (loop çok daha yavaş çalışır) değeleri giriyorum. Değerler çok sık değişmiyorsa bu sıra numaralarının number alanda kayıtlı olması performans açısından faydalı.
Her grupda değişecek alan ismimiz grup olsun. Kayıtları gruba göre sıraladıktan sonra, replace için şöyle bir formül işimizi görecektir;
SubSummaryAlani =
Case (
Get(RecordNumber) = 1 ; 1 ;
GetNthRecord ( Grup ; Get(RecordNumber) -1 ) = Grup ; GetNthRecord ( SubSummaryAlani ; Get(RecordNumber) -1 ) ;
GetNthRecord ( SubSummaryAlani ; Get(RecordNumber) -1 ) + 1
)