private void BuildDataFormat(out RptViewGridDataFormat gridDataFormat, out RptViewDataFormat dataFormat, string formatType, string columnName, string groupSeq, string styleValue) { gridDataFormat = new RptViewGridDataFormat(); dataFormat = new RptViewDataFormat(); string strId = System.Guid.NewGuid().ToString(); dataFormat.FormatID = strId; gridDataFormat.FormatID = strId; if (formatType == "header") { gridDataFormat.StyleType = ReportStyleType.Header; gridDataFormat.ColumnName = columnName; } else if (formatType == "groupdata") { gridDataFormat.StyleType = ReportStyleType.SubTotal; gridDataFormat.ColumnName = columnName; gridDataFormat.GroupSequence = decimal.Parse(groupSeq); } else if (formatType == "itemdata") { gridDataFormat.StyleType = ReportStyleType.Item; gridDataFormat.ColumnName = columnName; } dataFormat = (new ReportViewFacade(this.DataProvider)).BuildDataFormatByStyle(styleValue); dataFormat.FormatID = strId; dataFormat.MaintainUser = this.GetUserCode(); }
protected override void UpdateReportDesignView() { ArrayList listGridFormat = new ArrayList(); ArrayList listDataFormat = new ArrayList(); for (int i = 1; i < this.tbFormat.Rows.Count; i++) { for (int n = 1; n < this.tbFormat.Rows[i].Cells.Count; n++) { HtmlInputHidden hidVal = this.GetFormatInputField(this.tbFormat.Rows[i].Cells[n]); if (hidVal == null) { continue; } string strFormatType = hidVal.Attributes["FormatType"]; string strColumnName = hidVal.Attributes["ColumnName"]; string strGroupSeq = hidVal.Attributes["GroupSeq"]; RptViewGridDataFormat gridFormat = null; RptViewDataFormat dataFormat = null; this.BuildDataFormat(out gridFormat, out dataFormat, strFormatType, strColumnName, strGroupSeq, hidVal.Value); listGridFormat.Add(gridFormat); listDataFormat.Add(dataFormat); } } ArrayList listExtText = new ArrayList(); SortedList <int, int> listRptTitleList = new SortedList <int, int>(); for (int i = 0; i < Request.Form.AllKeys.Length; i++) { if (Request.Form.AllKeys[i].StartsWith("hidRptTitle") == true) { int iTmp = int.Parse(Request.Form.AllKeys[i].Substring(11)); listRptTitleList.Add(iTmp, iTmp); } } decimal iAdjExtId = 0; foreach (int iIdx in listRptTitleList.Keys) { string strVal = Request.Form["hidRptTitle" + iIdx.ToString()]; iAdjExtId++; RptViewExtendText extendText = null; RptViewDataFormat dataFormat = null; this.BuildExtendTextObject(out extendText, out dataFormat, strVal); extendText.Sequence = iAdjExtId; listDataFormat.Add(dataFormat); listExtText.Add(extendText); } RptViewGridDataFormat[] gridFormats = new RptViewGridDataFormat[listGridFormat.Count]; listGridFormat.CopyTo(gridFormats); RptViewDataFormat[] dataFormats = new RptViewDataFormat[listDataFormat.Count]; listDataFormat.CopyTo(dataFormats); RptViewExtendText[] extendTexts = new RptViewExtendText[listExtText.Count]; listExtText.CopyTo(extendTexts); this.designView.GridDataFormats = gridFormats; this.designView.DataFormats = dataFormats; this.designView.ExtendText = extendTexts; }
protected override void DisplayDesignData() { if (this.designView.DefinedReportStyle != null) { this.drpDefinedStyle.SelectedValue = this.designView.DefinedReportStyle.StyleID.ToString(); this.ApplyDefinedStyle(this.designView.DefinedReportStyle.StyleID); } if (this.designView.GridDataFormats != null) { Dictionary <string, RptViewDataFormat> formatList = new Dictionary <string, RptViewDataFormat>(); for (int i = 0; i < this.designView.GridDataFormats.Length; i++) { RptViewGridDataFormat dataFormat = this.designView.GridDataFormats[i]; string strKey = dataFormat.StyleType + ":" + dataFormat.ColumnName + ":" + dataFormat.GroupSequence.ToString(); for (int n = 0; this.designView.DataFormats != null && n < this.designView.DataFormats.Length; n++) { if (this.designView.DataFormats[n].FormatID == dataFormat.FormatID) { formatList.Add(strKey, this.designView.DataFormats[n]); break; } } } for (int i = 1; i < this.tbFormat.Rows.Count; i++) { for (int n = 1; n < this.tbFormat.Rows[i].Cells.Count; n++) { HtmlInputHidden hidVal = this.GetFormatInputField(this.tbFormat.Rows[i].Cells[n]); if (hidVal == null) { continue; } string strFormatType = hidVal.Attributes["FormatType"]; if (strFormatType == "header") { strFormatType = ReportStyleType.Header; } else if (strFormatType == "groupdata") { strFormatType = ReportStyleType.SubTotal; } else if (strFormatType == "itemdata") { strFormatType = ReportStyleType.Item; } string strColumnName = hidVal.Attributes["ColumnName"]; string strGroupSeq = hidVal.Attributes["GroupSeq"]; if (strGroupSeq == null || strGroupSeq == "") { strGroupSeq = "0"; } string strKey = strFormatType + ":" + strColumnName + ":" + strGroupSeq; if (formatList.ContainsKey(strKey) == false) { continue; } RptViewDataFormat dataFormat = formatList[strKey]; string strVal = (new ReportViewFacade(this.DataProvider)).BuildStyleValueFromDataFormat(dataFormat); hidVal.Value = strVal; } } } }