public GridViewSummary(string col, string formatString, SummaryOperation op, GridViewGroup grp) : this(col, grp) { this._formatString = formatString; this._operation = op; this._customOperation = null; this._getSummaryMethod = null; }
public GridViewSummary(string col, string formatString, CustomSummaryOperation op, SummaryResultMethod getResult, GridViewGroup grp) : this(col, grp) { this._formatString = formatString; this._operation = SummaryOperation.Custom; this._customOperation = op; this._getSummaryMethod = getResult; }
///<summary>Defaults: Font Tahoma 8pt Bold, summary group 1.</summary> public void AddGroupSummaryField(string staticText,Color color,string columnName,string dataFieldName,SummaryOperation summaryOperation) { AddGroupSummaryField(staticText,color,columnName,dataFieldName,summaryOperation,new List<int>() { 1 },new Font("Tahoma",8,FontStyle.Bold),0,0); }
///<summary>Default Font is Tahoma 8pt Bold.</summary> public void AddGroupSummaryField(string staticText,Color color,string columnName,string dataFieldName,SummaryOperation summaryOperation,List<int> queryGroupValues,int offSetX,int offSetY) { AddGroupSummaryField(staticText,color,columnName,dataFieldName,summaryOperation,queryGroupValues,new Font("Tahoma",8,FontStyle.Bold),offSetX,offSetY); }
///<summary></summary> public void AddGroupSummaryField(string staticText,Color color,string columnName,string dataFieldName,SummaryOperation summaryOperation,List<int> queryGroupValues,Font font) { AddGroupSummaryField(staticText,color,columnName,dataFieldName,summaryOperation,queryGroupValues,font,0,0); }
///<summary>Adds a summary value to a group of QueryObjects.</summary> public void AddGroupSummaryField(string staticText,Color color,string columnName,string dataFieldName,SummaryOperation summaryOperation,List<int> queryGroupValues,Font font,int offSetX,int offSetY) { Graphics grfx=Graphics.FromImage(new Bitmap(1,1)); Point location=GetObjectByName(columnName+"Header").Location; Size labelSize=new Size((int)(grfx.MeasureString(staticText,font).Width/grfx.DpiX*100+2) ,(int)(grfx.MeasureString(staticText,font).Height/grfx.DpiY*100+2)); int i=_reportObjects.Add(new ReportObject(columnName+"GroupSummaryLabel","Group Footer",new Point(location.X-labelSize.Width,0),labelSize,staticText,font,ContentAlignment.MiddleLeft,offSetX,offSetY)); _reportObjects[i].DataField=dataFieldName; _reportObjects[i].SummaryGroups=queryGroupValues; _sections["Group Footer"].Height+=(int)((grfx.MeasureString(staticText,font)).Height/grfx.DpiY*100+2)+offSetY; i=_reportObjects.Add(new ReportObject(columnName+"GroupSummaryText","Group Footer",location,new Size(0,0),color,columnName,dataFieldName,font,summaryOperation,offSetX,offSetY)); _reportObjects[i].SummaryGroups=queryGroupValues; grfx.Dispose(); }
///<summary>Overload for GroupSummary ReportObject</summary> public ReportObject(string name,string sectionName,Point location,Size size,Color color,string summarizedFieldName,string datafield,Font font,SummaryOperation summaryOperation,int offSetX,int offSetY) { _name=name; _sectionName=sectionName; _location=location; _size=size; _dataFieldName=datafield; _font=font; _fieldDefKind=FieldDefKind.SummaryField; _fieldValueType=FieldValueType.Number; _summaryOperation=summaryOperation; _summarizedFieldName=summarizedFieldName; _offSetX=offSetX; _offSetY=offSetY; _foreColor=color; //defaults: _contentAlignment=ContentAlignment.MiddleRight; _reportObjectKind=ReportObjectKind.TextObject; }
///<summary>Overload for SummaryField ReportObject</summary> public ReportObject(string name,string sectionName,Point location,Size size,SummaryOperation summaryOperation,string summarizedFieldName,Font font,ContentAlignment contentAlignment,string stringFormat) { _name=name; _sectionName=sectionName; _location=location; _size=size; _font=font; _contentAlignment=contentAlignment; _stringFormat=stringFormat; _fieldDefKind=FieldDefKind.SummaryField; _fieldValueType=FieldValueType.Number; _summaryOperation=summaryOperation; _summarizedFieldName=summarizedFieldName; //defaults: _foreColor=Color.Black; _reportObjectKind=ReportObjectKind.FieldObject; }
private double GetGroupSummaryValue(string columnName,List<int> summaryGroups,SummaryOperation operation) { double retVal=0; for(int i=0;i<MyReport.ReportObjects.Count;i++) { if(MyReport.ReportObjects[i].ReportObjectKind!=ReportObjectKind.QueryObject) { continue; } QueryObject queryObj=(QueryObject)MyReport.ReportObjects[i]; if(!summaryGroups.Contains(queryObj.QueryGroupValue)) { continue; } for(int j=0;j<queryObj.ReportTable.Rows.Count;j++) { if(operation==SummaryOperation.Sum) { //This could be enhanced in the future to only sum up the cells that match the column name within the current query group. //Right now, if multiple query groups share the same column name that is being summed, the total will include both sets. if(queryObj.IsNegativeSummary) { retVal-=PIn.Double(queryObj.ReportTable.Rows[j][queryObj.ReportTable.Columns.IndexOf(columnName)].ToString()); } else { retVal+=PIn.Double(queryObj.ReportTable.Rows[j][queryObj.ReportTable.Columns.IndexOf(columnName)].ToString()); } } else if(operation==SummaryOperation.Count) { retVal++; } } } return retVal; }
public GridViewSummary(string col, SummaryOperation op, GridViewGroup grp) : this(col, String.Empty, op, grp) { }
public GridViewSummary RegisterSummary(string column, string formatString, SummaryOperation operation, string groupName) { if (operation == SummaryOperation.Custom) { throw new Exception(USE_ADEQUATE_METHOD_TO_REGISTER_THE_SUMMARY); } GridViewGroup group = mGroups[groupName]; if (group == null) { throw new Exception(String.Format(GROUP_NOT_FOUND, groupName)); } // TO DO: Perform column validation... GridViewSummary s = new GridViewSummary(column, formatString, operation, group); group.AddSummary(s); return s; }
public GridViewSummary RegisterSummary(string column, SummaryOperation operation, string groupName) { return this.RegisterSummary(column, String.Empty, operation, groupName); }
public GridViewSummary RegisterSummary(string column, string formatString, SummaryOperation operation) { if (operation == SummaryOperation.Custom) { throw new Exception(USE_ADEQUATE_METHOD_TO_REGISTER_THE_SUMMARY); } // TO DO: Perform column validation... GridViewSummary s = new GridViewSummary(column, formatString, operation, null); mGeneralSummaries.Add(s); // if general summaries are displayed in the footer, it must be set to visible if (useFooter) mGrid.ShowFooter = true; return s; }
public GridViewSummary RegisterSummary(string column, SummaryOperation operation) { return(this.RegisterSummary(column, String.Empty, operation)); }
///<summary>Overload for SummaryField ReportObject</summary> public ReportObject(string thisSectionName,Point thisLocation,Size thisSize ,SummaryOperation thisOperation,string thisSummarizedField ,Font thisFont,ContentAlignment thisTextAlign,string thisFormatString) { sectionName=thisSectionName; location=thisLocation; size=thisSize; font=thisFont; textAlign=thisTextAlign; formatString=thisFormatString; fieldKind=FieldDefKind.SummaryField; valueType=FieldValueType.Number; operation=thisOperation; summarizedField=thisSummarizedField; //defaults: foreColor=Color.Black; objectKind=ReportObjectKind.FieldObject; }
///<summary>Default Font is Tahoma 8pt Bold. Summary group is set to 1., Color is set to Black.</summary> public void AddGroupSummaryField(string staticText,string columnName,string dataFieldName,SummaryOperation summaryOperation,int offSetX,int offSetY) { AddGroupSummaryField(staticText,Color.Black,columnName,dataFieldName,summaryOperation,new List<int>() { 1 },new Font("Tahoma",8,FontStyle.Bold),offSetX,offSetY); }
///<summary>Summary group is set to 1.</summary> public void AddGroupSummaryField(string staticText,Color color,string columnName,string dataFieldName,SummaryOperation summaryOperation,Font font,int offSetX,int offSetY) { AddGroupSummaryField(staticText,color,columnName,dataFieldName,summaryOperation,new List<int>() { 1 },font,offSetX,offSetY); }