Show / Hide Table of Contents

Class PercentOfTotalAggregation

Inheritance
Object
AggregationPluginBase
PercentOfTotalAggregation
Implements
IAggregationTwoPassPlugin
IAggregationPlugin
Inherited Members
AggregationPluginBase.HasModifier(String)
AggregationPluginBase.SetModifiers(String[])
AggregationPluginBase.AddItem(ArchiveColumnData[])
Object.Equals(Object)
Object.Equals(Object, Object)
Object.ReferenceEquals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Namespace: SuperOffice.CRM.ArchiveLists.Aggregation
Assembly: SoDataBase.dll
Syntax
[AggregationPlugin("Percent")]
public class PercentOfTotalAggregation : AggregationPluginBase, IAggregationTwoPassPlugin, IAggregationPlugin, IPlugin

Constructors

PercentOfTotalAggregation()

Declaration
public PercentOfTotalAggregation()

Fields

PluginName

Declaration
public const string PluginName = "Percent"
Field Value
Type Description
String

Methods

AddItem(ArchiveColumnData)

Remember the item for use in detail, accumulate sum for use in header

Declaration
public override ArchiveColumnData AddItem(ArchiveColumnData item)
Parameters
Type Name Description
ArchiveColumnData item
Returns
Type Description
ArchiveColumnData
Overrides
AggregationPluginBase.AddItem(ArchiveColumnData)

Clone()

Clone: Called when creating detail level instances; takes snapshot of last item seen by outer level and saves as the sum to be used in calculations

Declaration
public IAggregationTwoPassPlugin Clone()
Returns
Type Description
IAggregationTwoPassPlugin
Remarks

Summary levels accumulate data into SuperOffice.CRM.ArchiveLists.Aggregation.PercentOfTotalAggregation._theSum and that is what should be used as their value; while detail levels receive the SuperOffice.CRM.ArchiveLists.Aggregation.PercentOfTotalAggregation._lastItem, which is what they should use as their value. The lastItem -> sum assignment in this method is where the asymmetry between nested summary levels and the detail level is expressed.

GetAggregatedValue()

Declaration
public override ArchiveColumnData GetAggregatedValue()
Returns
Type Description
ArchiveColumnData
Overrides
AggregationPluginBase.GetAggregatedValue()

SetOutsideValue(IAggregationTwoPassPlugin)

Declaration
public void SetOutsideValue(IAggregationTwoPassPlugin parentInstance)
Parameters
Type Name Description
IAggregationTwoPassPlugin parentInstance

ToString()

String output for debugging

Declaration
public override string ToString()
Returns
Type Description
String
Overrides
Object.ToString()

Implements

IAggregationTwoPassPlugin
IAggregationPlugin

Extension Methods

EnumUtil.MapEnums<From, To>(From)
ObjectExtensions.AssignByReflection<T>(T, T)
ObjectExtensions.GraphCopy<T>(T)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top