コード例 #1
0
        // 08-22-2011 Scott
        public bool UpdateEffFilter()
        {
            this.C_LBAdvFilters.Items.Clear();

            this.txtValue.Text = string.Empty;

            ScFilterList scFilterList = Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters;

            AdvFilterConvertor convert = new AdvFilterConvertor();

            sectionFilters = convert.GetEffFilters(scFilterList);

            if (sectionFilters.Count > 0)
            {
                foreach (SectionFilter filter in sectionFilters)
                {
                    this.C_LBAdvFilters.Items.Add(filter);
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #2
0
        public HorizontalGridColumn(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
        {
            try
            {
                _Filter = info.GetValue("_Filter", typeof(DBFilter)) as DBFilter;

                this._Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Filter);
            }
            catch
            {
                _Filter = new DBFilter();
            }

            try
            {
                _TitleField = info.GetString("_TitleField");
            }
            catch
            {
                _TitleField = string.Empty;
            }

            try
            {
                _Title = info.GetString("_Title");
            }
            catch
            {
                _Title = string.Empty;
            }


            _RowIndicator = -1;
        }
コード例 #3
0
        public HitChartField(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
        {
            try
            {
                name = (string)info.GetValue("name", typeof(string));
            }
            catch
            {
                name = string.Empty;
            }
            try
            {
                text = (string)info.GetValue("text", typeof(string));
            }
            catch
            {
                text = string.Empty;
            }
            try
            {
                position = (System.Drawing.PointF)info.GetValue("position", typeof(System.Drawing.PointF));
            }
            catch
            {
                position = PointF.Empty;
            }
            try
            {
                size = (System.Drawing.SizeF)info.GetValue("size", typeof(System.Drawing.SizeF));
            }
            catch
            {
                size = SizeF.Empty;
            }
            try
            {
                filter = (Webb.Data.DBFilter)info.GetValue("filter", typeof(Webb.Data.DBFilter));

                filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this.filter);    //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                filter = new DBFilter();
            }
            try
            {
                tag = (object)info.GetValue("tag", typeof(object));
            }
            catch
            {
            }
            try
            {
                exControlViews = (Webb.Reports.ExControls.Views.ExControlViewCollection)info.GetValue("exControlViews", typeof(Webb.Reports.ExControls.Views.ExControlViewCollection));
            }
            catch
            {
                exControlViews = new ExControlViewCollection();
            }
        }
コード例 #4
0
        /// <summary>
        /// Calculate grouped result
        /// </summary>
        /// <param name="i_Table">data source</param>
        public override void CalculateResult(DataTable i_Table)
        {
            //If have no data source ,clear group struct
            if (i_Table == null)
            {
                this.RootGroupInfo.ClearGroupResult(this._RootGroupInfo);

                _HaveData = false;

                return;
            }

            _HaveData = true;

            if (this.RootGroupInfo.Summaries == null)
            {
                this.RootGroupInfo.Summaries = new GroupSummaryCollection();
            }
            if (this.RootGroupInfo.SubGroupInfos == null || this.RootGroupInfo.SubGroupInfos.Count == 0)
            {
                this.RootGroupInfo.SubGroupInfos = new GroupInfoCollection();

                this.RootGroupInfo.SubGroupInfos.Add(new FieldGroupInfo(""));
            }
            if (MatrixInfo == null)
            {
                this.MatrixInfo = new MatrixInfo(RootGroupInfo, RootGroupInfo.SubGroupInfos[0], null, null);
            }
            else
            {
                this.MatrixInfo = MatrixInfo.CopyFrom(RootGroupInfo, MatrixInfo);
            }

            this.MatrixInfo.MatrixDisplay = this.MatrixDisplay;
            this.MatrixInfo.GridInfo.Apply(this.GridInfo);

            //Filter rows
            Webb.Collections.Int32Collection m_Rows = new Int32Collection();

            if (this.ExControl != null && this.ExControl.Report != null)
            {
                m_Rows = this.ExControl.Report.Filter.GetFilteredRows(i_Table);                        //2009-5-25 11:02:57@Simon Add this Code
            }


            m_Rows = this.OneValueScFilter.Filter.GetFilteredRows(i_Table, m_Rows);

            m_Rows = this.RepeatFilter.Filter.GetFilteredRows(i_Table, m_Rows);

            this.Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this.Filter); //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

            m_Rows = this.Filter.GetFilteredRows(i_Table, m_Rows);                                                          //06-04-2008@Scott

            m_Rows.CopyTo(this.FilteredRows);

            MatrixInfo.CalculateMatrixResult(i_Table, m_Rows);
        }
コード例 #5
0
        public bool LoadAdvSectionFilters(string strUserFolder, ReportScType rsctype)
        {//Modified at 2009-1-19 14:23:11@Scott
            AdvFilterConvertor convertor = new AdvFilterConvertor();

            this.SectionFilters = convertor.GetReportFilters(Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters, rsctype); //add 1-19-2008 scott

            this.SectionFiltersWrapper.SectionFilters = this.SectionFilters;                                                            //Modified at 2009-1-15 10:43:11@Scott

            return(true);
        }
コード例 #6
0
        //fuction
        public override void CalculateResult(DataTable i_Table)
        {
            ChangeTypesFor3D();

            if (i_Table != null)
            {
                Webb.Collections.Int32Collection rows = new Int32Collection();

                Webb.Data.DBFilter dbFilter = this.Filter.Copy();

                if (this.ExControl != null && this.ExControl.Report != null)
                {
                    rows = this.ExControl.Report.Filter.GetFilteredRows(i_Table);                    //2009-5-25 11:02:57@Simon Add this Code

                    dbFilter.Add(this.ExControl.Report.Filter);
                }

                if (this.DenominatorFilter == null)
                {
                    if (this.Repeat)
                    {
                        this.DenominatorFilter = dbFilter;
                    }
                    else if (this.ExControl != null && this.ExControl.Report != null && this.ExControl.Report.OneValuePerPage)
                    {
                        this.DenominatorFilter = dbFilter;
                    }
                    else
                    {
                        this.DenominatorFilter = new Webb.Data.DBFilter();
                    }
                }

                rows = this.OneValueScFilter.Filter.GetFilteredRows(i_Table, rows);

                rows = this.RepeatFilter.Filter.GetFilteredRows(i_Table, rows);                                                 //Added this code at 2008-12-26 12:22:40@Simon

                this.Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this.Filter); //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

                rows = this.Filter.GetFilteredRows(i_Table, rows);

                this._Chart = this.Settings.CreateChart(i_Table, rows);
            }
            else
            {
                this._Chart = this.Settings.CreateChart(null, null);
            }
        }
コード例 #7
0
        public new bool Update()
        {
            this.C_LBAdvFilters.Items.Clear();

            this.txtValue.Text = string.Empty;

            ScFilterList scFilterList = Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters;

//			if(scFilterList==null)
//			{
//				object objUserFolder = RegKey.GetValue(KeyName);
//
//				if(objUserFolder == null) return false;
//
//				string strUserFolder = objUserFolder.ToString();
//
//				if(strUserFolder.EndsWith("\\")) strUserFolder = strUserFolder.Remove(strUserFolder.Length - 1,1);
//
//				int index = strUserFolder.LastIndexOf('\\');
//
//				strUserFolder = strUserFolder.Remove(index + 1,strUserFolder.Length - index - 1);
//
//				strUserFolder += @"WebbRpt\ScFilter.dat";
//
//				if(!scFilterList.ReadOldFiltersFromDisk(strUserFolder))return false;
//			}

            AdvFilterConvertor convert = new AdvFilterConvertor();

            sectionFilters = convert.GetReportFilters(scFilterList);

            if (sectionFilters.Count > 0)
            {
                foreach (SectionFilter filter in sectionFilters)
                {
                    this.C_LBAdvFilters.Items.Add(filter);
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #8
0
        /// <summary>
        /// Calculate grouped result
        /// </summary>
        /// <param name="i_Table">data source</param>
        public override void CalculateResult(DataTable i_Table)
        {
            //If have no data source ,clear group struct
            if (i_Table == null)
            {
                this.RootGroupInfo.ClearGroupResult(this._RootGroupInfo);

                return;
            }

            //Filter rows
            Webb.Collections.Int32Collection m_Rows = new Int32Collection();

            if (this.ExControl != null && this.ExControl.Report != null)
            {
                m_Rows = this.ExControl.Report.Filter.GetFilteredRows(i_Table);  //2009-5-25 11:02:57@Simon Add this Code
            }

            m_Rows = this.OneValueScFilter.Filter.GetFilteredRows(i_Table, m_Rows);                                         //06-04-2008@Scott

            m_Rows = this.RepeatFilter.Filter.GetFilteredRows(i_Table, m_Rows);                                             //Added this code at 2008-12-26 12:22:40@Simon

            this.Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this.Filter); //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

            m_Rows = this.Filter.GetFilteredRows(i_Table, m_Rows);                                                          //06-04-2008@Scott

            DataTable table = this.GradingSectionCollection.CalcualteGradeTable(i_Table, m_Rows);

            Webb.Data.DBFilter filter = new Webb.Data.DBFilter();

            Int32Collection rows = filter.GetFilteredRows(table);

            this._RootGroupInfo.CalculateGroupResult(table, rows, rows, this._RootGroupInfo);

            GradingSectionCollection.TruncateRowIdIntoPlayId(table, this._RootGroupInfo);
        }
コード例 #9
0
        private void CheckSectionFilters()
        {        //need change
            if (this.ExControl == null)
            {
                return;
            }
            if (this.ExControl.Report == null)
            {
                return;
            }
            WebbReport m_WebbReport = this.ExControl.Report as WebbReport;

            if (m_WebbReport == null)
            {
                return;
            }
            if (m_WebbReport.Template.SectionFilters.Count <= 0)
            {
                this.RemoveSectionFilters();
            }
            else
            {
                SectionFilterCollection reportSections = m_WebbReport.Template.SectionFilters;

                AdvFilterConvertor convertor = new AdvFilterConvertor();

                if (DataProvider.VideoPlayBackManager.AdvSectionType != AdvScoutType.None && m_WebbReport.Template.ReportScType != ReportScType.Custom)
                {
                    ReportScType sctype = AdvFilterConvertor.GetScType(m_WebbReport.Template.ReportScType, DataProvider.VideoPlayBackManager.AdvSectionType);   //2009-6-16 10:18:47@Simon Add this Code

                    reportSections = convertor.GetReportFilters(Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters, sctype);                       //add 1-19-2008 scott
                }

                this.CreateSectionGroupInfo(reportSections);
            }
        }
コード例 #10
0
        public StatControlView(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            // TODO:  Add ExControlView.GetObjectData implementation
            try
            {
                this._ColumnsWidth = info.GetValue("_ColumnsWidth", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._ColumnsWidth = new Int32Collection();
            }

            try
            {
                this._Fitler = info.GetValue("Filter", typeof(Webb.Data.DBFilter)) as Webb.Data.DBFilter;

                this._Fitler = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Fitler);                 //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._Fitler = new Webb.Data.DBFilter();
            }

            try
            {
                this._StatInfos = info.GetValue("StatInfos", typeof(StatInfoCollection)) as StatInfoCollection;
            }
            catch
            {
                this._StatInfos = new StatInfoCollection();

                this._StatInfos.Add(new StatInfo());
            }

            try
            {
                this._Styles = info.GetValue("Styles", typeof(ExControlStyles)) as ExControlStyles;
            }
            catch
            {
                this._Styles = new ExControlStyles();

                this._Styles.RowStyle.Sides = DevExpress.XtraPrinting.BorderSide.None;

                this._Styles.AlternateStyle.Sides = DevExpress.XtraPrinting.BorderSide.None;
            }

            try
            {
                this._Multiline = info.GetBoolean("Multiline");
            }
            catch
            {
                this._Multiline = true;
            }
            try
            {
                this._Multiline = info.GetBoolean("Multiline");
            }
            catch
            {
                this._Multiline = true;
            }

            try
            {
                this._AdjustWidth = info.GetBoolean("_AdjustWidth");
            }
            catch
            {
                this._AdjustWidth = false;
            }
        }
コード例 #11
0
        public override void CalculateGroupResult(DataTable i_Table, Webb.Collections.Int32Collection i_OuterRows, Webb.Collections.Int32Collection i_InnerRows, GroupInfo i_GroupInfo)
        {
            i_GroupInfo.UpdateSectionSummaries();                                                                             //Modified at 2009-1-21 15:08:49@Scott

            this._Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Filter); //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

            #region Modified Area
            if (this._GroupResults == null)
            {
                this._GroupResults = new GroupResultCollection();
            }

            this._GroupResults.Clear();

            i_InnerRows = this.Filter.GetFilteredRows(i_Table, i_InnerRows); //Added this code at 2008-12-24 8:26:50@Simon

            if (this.SectionFilters.Count > 0)                               //modify this code at 2009-2-6 10:15:01@Simon
            {
                int LimitCount = 0;

                foreach (SectionFilter m_Section in this.SectionFilters)
                {
                    if (this.TopCount > 0 && LimitCount >= this.TopCount)
                    {
                        break;                                                                  //Added this code at 2009-2-9 9:36:32@Simon
                    }
                    GroupResult m_Result = new GroupResult();
                    m_Result.GroupValue      = m_Section.FilterName;
                    m_Result.Filter          = m_Section.Filter.Copy();
                    m_Result.ParentGroupInfo = this;
                    m_Result.ClickEvent      = i_GroupInfo.ClickEvent;

                    m_Result.CalculateRowIndicators(i_Table, i_InnerRows);

                    if (m_Result.RowIndicators.Count == 0 && !this.ShowZero)
                    {
                        continue;
                    }

                    if (this.Summaries != null)
                    {
                        m_Result.Summaries = this.Summaries.CopyStructure();
                        m_Result.CalculateSummaryResult(i_Table, i_OuterRows, i_InnerRows);
                    }

                    this._GroupResults.Add(m_Result);

                    LimitCount++;
                }
            }
            else
            {
                GroupResult m_GroupResult = new GroupResult();

                m_GroupResult.GroupValue = string.Empty;

                m_GroupResult.ParentGroupInfo = this;

                m_GroupResult.RowIndicators = new Int32Collection();
                i_InnerRows.CopyTo(m_GroupResult.RowIndicators);
                m_GroupResult.ClickEvent = i_GroupInfo.ClickEvent;
                this._GroupResults.Add(m_GroupResult);

                if (this.Summaries != null)
                {
                    m_GroupResult.Summaries = this.Summaries.CopyStructure();

                    m_GroupResult.CalculateSummaryResult(i_Table, i_OuterRows, i_InnerRows);
                }
            }


            if (i_GroupInfo.SubGroupInfos.Count > 0)
            {
                foreach (GroupResult m_GroupResult in this._GroupResults)
                {
                    if (m_GroupResult.RowIndicators == null)
                    {
                        continue;
                    }
                    m_GroupResult.SubGroupInfos = i_GroupInfo.SubGroupInfos.Copy();

                    for (int i = 0; i < m_GroupResult.SubGroupInfos.Count; i++)
                    {
                        GroupInfo resultGroupInfo = m_GroupResult.SubGroupInfos[i];
                        GroupInfo subGroupInfo    = i_GroupInfo.SubGroupInfos[i];

                        resultGroupInfo.IsSectionOutSide = false;
                        subGroupInfo.IsSectionOutSide    = false;

                        System.Diagnostics.Trace.Assert(resultGroupInfo != null && subGroupInfo != null, "Calculate Section Group Error");
                        resultGroupInfo.CalculateGroupResult(i_Table, i_OuterRows, m_GroupResult.RowIndicators, subGroupInfo);
                    }
                }
            }
            #endregion                    //Modify at 2008-11-4 11:29:27@Scott
        }
コード例 #12
0
//        public override void CalculateGroupResult(DataTable i_Table, Webb.Collections.Int32Collection i_OuterRows, Webb.Collections.Int32Collection i_FilterRows, Webb.Collections.Int32Collection i_InnerRows, GroupInfo i_GroupInfo)
//        {
//            i_GroupInfo.UpdateSectionSummaries();	//Modified at 2009-1-21 15:08:49@Scott

//            this._Filter=AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters,this._Filter);    //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

//            //Added this code at 2008-12-22 8:29:27@Simon
//            #region Modified Area
//            if(this._GroupResults == null) this._GroupResults = new GroupResultCollection();
//            this._GroupResults.Clear();

//            i_InnerRows=this.Filter.GetFilteredRows(i_Table,i_InnerRows);   //Added this code at 2008-12-24 8:26:50@Simon

//            i_FilterRows=this.Filter.GetFilteredRows(i_Table,i_FilterRows);   //Added this code at 2008-12-24 8:26:50@Simon

//            if(this.SectionFilters.Count>0)
//            {
//                if (this.AddTotal)
//                {
//                    GroupResult m_GroupResult = new GroupResult();

//                    m_GroupResult.Filter = new Webb.Data.DBFilter();

//                    m_GroupResult.GroupValue = this.TotalTitle;

//                    m_GroupResult.ParentGroupInfo = this;  //Add at 2009-2-19 14:23:47@Simon

//                    m_GroupResult.ClickEvent = i_GroupInfo.ClickEvent;

//                    this._GroupResults.Add(m_GroupResult);
//                }

//                int LimitCount=0;

//                foreach(SectionFilter m_Section in this.SectionFilters)
//                {
//                   if(this.TopCount>0&&LimitCount>=this.TopCount)break;   //Added this code at 2009-2-9 9:36:32@Simon

//                    GroupResult m_Result = new GroupResult();

//                    m_Result.GroupValue = m_Section.FilterName;

//                    m_Result.Filter = m_Section.Filter;

//                    m_Result.ParentGroupInfo = this;

//                    m_Result.ClickEvent = i_GroupInfo.ClickEvent;

//                    this._GroupResults.Add(m_Result);

//                    LimitCount++;
//                }

//                foreach(GroupResult m_GroupResult in this.GroupResults)
//                {
//                    m_GroupResult.ClickEvent = this.ClickEvent;	//12-28-2007@Scott

//                    m_GroupResult.CalculateRowIndicators(i_Table,i_InnerRows);

//                    if(this.Summaries != null)
//                    {
//                        m_GroupResult.Summaries = this.Summaries.CopyStructure();
//                        m_GroupResult.CalculateSummaryResult(i_Table,i_OuterRows,i_InnerRows);
//                    }
//                }
//            }
//            else
//            {
//                GroupResult m_GroupResult = new GroupResult();
//                m_GroupResult.GroupValue = string.Empty;

//                m_GroupResult.ParentGroupInfo = this;

//                m_GroupResult.RowIndicators = new Int32Collection();
//                i_InnerRows.CopyTo(m_GroupResult.RowIndicators);
//                m_GroupResult.ClickEvent = i_GroupInfo.ClickEvent;
//                this._GroupResults.Add(m_GroupResult);

//                if(this.Summaries != null)
//                {
//                    m_GroupResult.Summaries = this.Summaries.CopyStructure();
//                    m_GroupResult.CalculateSummaryResult(i_Table,i_OuterRows,i_InnerRows);
//                }
//            }

//            if(i_GroupInfo.SubGroupInfos.Count > 0)
//            {
//                foreach(GroupResult m_GroupResult in this._GroupResults)
//                {
////					if(m_GroupResult.RowIndicators==null)continue;
////					m_GroupResult.SubGroupInfos = i_GroupInfo.SubGroupInfos.Copy();
////					foreach(GroupInfo subGroupinfo in m_GroupResult.SubGroupInfos)
////					{
////						subGroupinfo.CalculateGroupResult(i_Table, i_OuterRows,i_FilterRows, m_GroupResult.RowIndicators,subGroupinfo);
////					}

//                    if(m_GroupResult.RowIndicators==null)continue;

//                    m_GroupResult.SubGroupInfos = i_GroupInfo.SubGroupInfos.Copy();

//                    for(int i = 0; i < m_GroupResult.SubGroupInfos.Count; i++)
//                    {
//                        GroupInfo resultGroupInfo = m_GroupResult.SubGroupInfos[i];

//                        GroupInfo subGroupInfo = i_GroupInfo.SubGroupInfos[i];

//                        resultGroupInfo.IsSectionOutSide = false;
//                        subGroupInfo.IsSectionOutSide = false;

//                        System.Diagnostics.Trace.Assert(resultGroupInfo != null && subGroupInfo != null,"Calculate Section Group Error");
//                        resultGroupInfo.CalculateGroupResult(i_Table,i_OuterRows,i_FilterRows,m_GroupResult.RowIndicators,subGroupInfo);
//                    }
//                    //End Edit

//                }
//            }
//            #endregion        //Modify at 2008-12-19 11:29:27@Simon
//        }

        public override void CalculateGroupResult(DataTable i_Table, Webb.Collections.Int32Collection i_OuterRows, Webb.Collections.Int32Collection i_FilterRows, Webb.Collections.Int32Collection i_InnerRows, GroupInfo i_GroupInfo)
        {
            i_GroupInfo.UpdateSectionSummaries();                                                                             //Modified at 2009-1-21 15:08:49@Scott

            this._Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Filter); //2009-4-29 11:37:37@Simon Add UpdateAdvFilter

            //Added this code at 2008-12-22 8:29:27@Simon
            #region Modified Area

            if (this._GroupResults == null)
            {
                this._GroupResults = new GroupResultCollection();
            }
            this._GroupResults.Clear();

            i_InnerRows = this.Filter.GetFilteredRows(i_Table, i_InnerRows);   //Added this code at 2008-12-24 8:26:50@Simon

            i_FilterRows = this.Filter.GetFilteredRows(i_Table, i_FilterRows); //Added this code at 2008-12-24 8:26:50@Simon

            if (this.SectionFilters.Count > 0)
            {
                if (this.AddTotal)
                {
                    #region Add total
                    GroupResult m_GroupResult = new GroupResult();

                    m_GroupResult.Filter = new Webb.Data.DBFilter();

                    m_GroupResult.GroupValue = this.TotalTitle;

                    m_GroupResult.ParentGroupInfo = this;  //Add at 2009-2-19 14:23:47@Simon

                    m_GroupResult.ClickEvent = i_GroupInfo.ClickEvent;

                    i_InnerRows.CopyTo(m_GroupResult.RowIndicators);

                    this._GroupResults.Add(m_GroupResult);
                    #endregion
                }

                int LimitCount = 0;

                foreach (SectionFilter m_Section in this.SectionFilters)
                {
                    #region Add group Result

                    if (this.TopCount > 0 && LimitCount >= this.TopCount)
                    {
                        break;                                                     //Added this code at 2009-2-9 9:36:32@Simon
                    }
                    GroupResult m_Result = new GroupResult();

                    m_Result.GroupValue = m_Section.FilterName;

                    m_Result.Filter = m_Section.Filter;

                    m_Result.ParentGroupInfo = this;

                    m_Result.ClickEvent = i_GroupInfo.ClickEvent;

                    m_Result.RowIndicators = new Int32Collection();

                    m_Result.ClickEvent = this.ClickEvent;      //12-28-2007@Scott

                    this._GroupResults.Add(m_Result);

                    LimitCount++;
                    #endregion
                }
                #region Calculate result Rows

                foreach (int row in i_InnerRows)
                {
                    if (row < 0 || row >= i_Table.Rows.Count)
                    {
                        continue;
                    }

                    DataRow dataRow = i_Table.Rows[row];

                    foreach (GroupResult m_GroupResult in this.GroupResults)
                    {
                        if (m_GroupResult.Filter.CheckResultWithBracket(dataRow))        //Modified at 2009-2-16 16:38:31@Scott
                        {
                            if (m_GroupResult.Filter.PlayAfter && i_Table.Rows.Count > row + 1)
                            {
                                m_GroupResult.RowIndicators.Add(row + 1);
                            }
                            else
                            {
                                m_GroupResult.RowIndicators.Add(row);
                            }
                        }
                    }
                }
                #endregion
            }
            else
            {
                GroupResult m_GroupResult = new GroupResult();
                m_GroupResult.GroupValue = string.Empty;

                m_GroupResult.ParentGroupInfo = this;

                m_GroupResult.RowIndicators = new Int32Collection();

                i_InnerRows.CopyTo(m_GroupResult.RowIndicators);

                m_GroupResult.ClickEvent = i_GroupInfo.ClickEvent;

                this._GroupResults.Add(m_GroupResult);
            }

            foreach (GroupResult m_GroupResult in this.GroupResults)
            {
                if (this.Summaries != null)
                {
                    m_GroupResult.Summaries = this.Summaries.CopyStructure();
                    m_GroupResult.CalculateSummaryResult(i_Table, i_OuterRows, i_InnerRows);
                }
            }

            if (i_GroupInfo.SubGroupInfos.Count > 0)
            {
                foreach (GroupResult m_GroupResult in this._GroupResults)
                {
                    if (m_GroupResult.RowIndicators == null)
                    {
                        continue;
                    }

                    m_GroupResult.SubGroupInfos = i_GroupInfo.SubGroupInfos.Copy();

                    for (int i = 0; i < m_GroupResult.SubGroupInfos.Count; i++)
                    {
                        GroupInfo resultGroupInfo = m_GroupResult.SubGroupInfos[i];

                        GroupInfo subGroupInfo = i_GroupInfo.SubGroupInfos[i];

                        resultGroupInfo.IsSectionOutSide = false;
                        subGroupInfo.IsSectionOutSide    = false;

                        System.Diagnostics.Trace.Assert(resultGroupInfo != null && subGroupInfo != null, "Calculate Section Group Error");

                        resultGroupInfo.CalculateGroupResult(i_Table, i_OuterRows, i_FilterRows, m_GroupResult.RowIndicators, subGroupInfo);
                    }
                    //End Edit
                }
            }
            #endregion        //Modify at 2008-12-19 11:29:27@Simon
        }
コード例 #13
0
        public WebbChartExView(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            try
            {
                this._Settings = info.GetValue("Settings", typeof(WebbChartSetting)) as WebbChartSetting;
            }
            catch
            {
                this._Settings = new WebbChartSetting();
            }

            try
            {
                this._Filter = info.GetValue("Filter", typeof(Webb.Data.DBFilter)) as Webb.Data.DBFilter;

                this._Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Filter);                 //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch { this._Filter = new Webb.Data.DBFilter(); }

            try
            {
                this._ClickAreas = info.GetValue("ClickAreas", typeof(ArrayList)) as ArrayList;
            }
            catch
            {
                this._ClickAreas = new ArrayList();
            }

            #region Modify codes at 2008-11-18 16:49:14@Simon
            this.HaveExisted = true;
            #endregion                    //End Modify


            try
            {
                this.ShowAxesMode = info.GetBoolean("ShowAxesMode");                        //Added this code at 2008-12-17 9:28:25@Simon
            }
            catch
            {
                this.ShowAxesMode = true;
            }
            try
            {
                this.AutoFitSize = info.GetBoolean("AutoFitSize");                        //Added this code at 2008-12-17 9:28:25@Simon
            }
            catch
            {
                this.AutoFitSize = false;
            }
            try
            {
                this.TopCount = info.GetInt32("TopCount");                        //Added this code at 2008-12-17 9:28:25@Simon
            }
            catch
            {
                this.TopCount = 0;
            }
            try
            {
                this.Relative = info.GetBoolean("Relative");                        //2009-6-19 11:01:33@Simon Add this Code
            }
            catch
            {
                this.Relative = this.AutoFitSize;
            }
        }
コード例 #14
0
        public WebbChartView(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            try
            {
                this._RootGroupInfo = info.GetValue("RootGroupInfo", typeof(GroupInfo)) as GroupInfo;
            }
            catch
            {
                this._RootGroupInfo = new Webb.Reports.ExControls.Data.FieldGroupInfo(Webb.Data.PublicDBFieldConverter.AvialableFields[0].ToString());

                this._RootGroupInfo.GroupTitle = "New Group";
            }

            try
            {
                this._Filter = info.GetValue("Filter", typeof(Webb.Data.DBFilter)) as Webb.Data.DBFilter;

                this._Filter = AdvFilterConvertor.UpdateAdvFilter(this._Filter);                  //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._Filter = new Webb.Data.DBFilter();
            }

            try
            {
                this._Series = info.GetValue("Series", typeof(ChartSeriesCollection)) as ChartSeriesCollection;
            }
            catch
            {
                this._Series = new ChartSeriesCollection();

                this._Series.Add(new ChartSeries());
            }

            try
            {
                this._AppearanceType = (ChartAppearanceType)info.GetValue("AppearanceType", typeof(ChartAppearanceType));
            }
            catch
            {
                this._AppearanceType = ChartAppearanceType.Bar;
            }

            try
            {
                this._StatType = (SummaryTypes)info.GetValue("StatType", typeof(SummaryTypes));
            }
            catch
            {
                this._StatType = SummaryTypes.Frequence;
            }

            try
            {
                this._Combine = info.GetBoolean("Combine");
            }
            catch
            {
                this._Combine = false;
            }

            try
            {
                this._BackColor = (Color)info.GetValue("BackColor", typeof(Color));
            }
            catch
            {
                this._BackColor = Color.Transparent;
            }


            this._StringFormat = new StringFormat();

            this._StringFormat.Alignment = StringAlignment.Center;

            this._StringFormat.LineAlignment = StringAlignment.Center;

            try
            {
                this._Font = info.GetValue("Font", typeof(Font)) as Font;
            }
            catch
            {
                this._Font = new Font(AppearanceObject.DefaultFont.FontFamily, 8f);
            }

            try
            {
                this._AxisTextFont = info.GetValue("AxisTextFont", typeof(Font)) as Font;
            }
            catch
            {
                this._AxisTextFont = new Font(AppearanceObject.DefaultFont.FontFamily, 10f);
            }

            try
            {
                this._Step = info.GetInt32("Step");
            }
            catch
            {
                this._Step = 2;
            }

            try
            {
                this._AxisXText = info.GetString("AxisXText");
            }
            catch
            {
                this._AxisXText = string.Empty;
            }

            try
            {
                this._AxisYText = info.GetString("AxisYText");
            }
            catch
            {
                this._AxisYText = string.Empty;
            }

            try
            {
                this._AxisXGridLine = info.GetBoolean("AxistXGridLine");
            }
            catch
            {
                this._AxisXGridLine = false;
            }

            try
            {
                this._AxisYGridLine = info.GetBoolean("AxisYGridLine");
            }
            catch
            {
                this._AxisYGridLine = false;
            }

            try
            {
                this._BarValueAlignment = (BarValueAlignment)info.GetValue("BarValueAlignment", typeof(BarValueAlignment));
            }
            catch
            {
                this._BarValueAlignment = BarValueAlignment.Top;
            }

            try
            {
                this._BarValueFormat = (StringFormatFlags)info.GetValue("BarValueFormat", typeof(StringFormatFlags));
            }
            catch
            {
                this._BarValueFormat = 0;
            }

            try
            {
                this._TopSpace    = info.GetInt32("TopSpace");
                this._LeftSpace   = info.GetInt32("LeftSpace");
                this._RightSpace  = info.GetInt32("RightSpace");
                this._BottomSpace = info.GetInt32("BottomSpace");
            }
            catch
            {
                this.SetDefaultLocation();
            }

            try
            {
                this._TextPosition = (ChartTextPosition)info.GetValue("TextPosition", typeof(ChartTextPosition));
            }
            catch
            {
                this._TextPosition = ChartTextPosition.Inside;
            }

            try
            {
                this._GradientText = info.GetBoolean("GradientText");
            }
            catch
            {
                this._GradientText = false;
            }
        }
コード例 #15
0
        public string CreateReport(string strInwFile, string strFile, string dllpath)
        {
            Webb.Utility.CurReportMode = 2;

            strFile = AdjustPDFFile(strFile);

            string[] args = InwManager.ReadInwFile(strInwFile);

            if (args == null)
            {
                return("Failed");
            }


            CommandManager m_CmdManager = new CommandManager(args);

            DBSourceConfig m_Config = m_CmdManager.CreateDBConfig();

            WebbDataProvider m_DBProvider = new WebbDataProvider(m_Config);

            WebbDataSource m_DBSource = new WebbDataSource();

            try
            {
                m_DBProvider.GetDataSource(m_Config, m_DBSource);

                ArrayList m_Fields = new ArrayList();

                foreach (System.Data.DataColumn m_col in m_DBSource.DataSource.Tables[0].Columns)
                {
                    if (m_col.Caption == "{EXTENDCOLUMNS}" && m_col.ColumnName.StartsWith("C_"))
                    {
                        continue;
                    }

                    m_Fields.Add(m_col.ColumnName);
                }

                Webb.Data.PublicDBFieldConverter.SetAvailableFields(m_Fields);

                Webb.Reports.DataProvider.VideoPlayBackManager.DataSource = m_DBSource.DataSource;      //Set dataset for click event

                Webb.Reports.DataProvider.VideoPlayBackManager.PublicDBProvider = m_DBProvider;

                Webb.Reports.DataProvider.VideoPlayBackManager.LoadAdvScFilters();      //Modified at 2009-1-19 13:48:30@Scott

                m_DBProvider.UpdateEFFDataSource(m_DBSource);

                Webb.Reports.DataProvider.VideoPlayBackManager.ReadPictureDirFromRegistry();
            }
            catch (Exception e)
            {
                return("Failed:at addding datasouce|" + e.Message);
            }

            FilterInfoCollection filterInfos = m_DBSource.Filters;  //2009-7-1 11:09:08@Simon Add this Code  For Union Print

            if (filterInfos == null)
            {
                filterInfos = new FilterInfoCollection();
            }

            if (m_Config.Templates.Count <= 0)
            {
                return("Failed:No tempaltes");
            }

            string strTemplate = m_Config.Templates[0];

            string strTemplateName = m_CmdManager.GetTemplateName(strTemplate, '@');    //Modified at 2009-2-3 9:17:34@Scott

            WebbReport m_Report = null;

            try
            {
                m_Report = m_CmdManager.CreateReport(dllpath, strTemplateName); //1 //create report with template
            }
            catch (Exception ex)
            {
                return("Failed:Can't load report template" + ex.Message);
            }

            //Add attached filter here
            #region Modified Area

            m_DBSource.Filters = filterInfos.Copy();  //2009-7-1 11:09:04@Simon Add this Code  For Union Print

            string strFilterName = m_CmdManager.GetAttachedFilter(strTemplate, '@');

            if (strFilterName != string.Empty)  //2009-7-1 11:09:04@Simon For display Filternames In GameListInfo
            {
                if (!m_DBProvider.DBSourceConfig.Filters.Contains(strFilterName))
                {
                    FilterInfo filterInfo = new FilterInfo();

                    filterInfo.FilterName = strFilterName;

                    m_DBSource.Filters.Add(filterInfo);
                }
            }

            ScAFilter scaFilter = Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters.GetFilter(strFilterName);     //Modified at 2009-1-19 14:25:30@Scott

            AdvFilterConvertor convertor = new AdvFilterConvertor();

            DBFilter AdvFilter = convertor.GetReportFilter(scaFilter).Filter;

            if (AdvFilter != null || AdvFilter.Count > 0)  //2009-5-6 9:38:37@Simon Add this Code
            {
                AdvFilter.Add(m_Report.Template.Filter);
                m_Report.Template.Filter = AdvFilter;
            }

            SectionFilterCollection sectionFilter = m_Report.Template.SectionFilters.Copy();

            if (m_Report.Template.ReportScType == ReportScType.Custom)
            {
                m_Report.Template.SectionFilters = AdvFilterConvertor.GetCustomFilters(Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters, sectionFilter);
            }

            #endregion        //Modify at 2008-11-24 16:04:05@Scott

            try
            {
                if (System.IO.File.Exists(strFile))
                {
                    System.IO.File.Delete(strFile);
                }

                m_Report.LoadAdvSectionFilters(m_Config.UserFolder);

                m_Report.SetWatermark(m_Config.WartermarkImagePath);    //06-19-2008@Scott

                m_Report.SetDataSource(m_DBSource);

                m_Report.CreatePdfDocument(strFile);

                if (!System.IO.File.Exists(strFile))
                {
                    return("Failed:dll path " + dllpath);
                }
            }
            catch (Exception ex2)
            {
                return("Failed:in create PDf Documnet|" + ex2.Message);
            }

            return(strFile);
        }
コード例 #16
0
        public SimpleGroupView(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            // TODO:  Add ExControlView.GetObjectData implementation
            //this.MainStyle = info.GetValue("MainStyle",typeof(BasicStyle)) as BasicStyle;
            try
            {
                this._RootGroupInfo = info.GetValue("_RootGroupInfo", typeof(GroupInfo)) as GroupInfo;
            }
            catch
            {
                this._RootGroupInfo = new Webb.Reports.ExControls.Data.FieldGroupInfo(Webb.Data.PublicDBFieldConverter.AvialableFields[0].ToString());
                this._RootGroupInfo.ColumnHeading = "New Group";
            }

            try
            {
                this._ShowRowIndicators = info.GetBoolean("_ShowRowIndicators");
            }
            catch
            {
                this.ShowRowIndicators = false;
            }

            try
            {
                this._OneValuePerPage = info.GetBoolean("_OneValuePerPage");
            }
            catch
            {
                this._OneValuePerPage = false;
            }

            try
            {
                this._SizeSelfAdapting = info.GetBoolean("_SizeSelfAdapting");
            }
            catch
            {
                this._SizeSelfAdapting = false;
            }

            try
            {
                this._FootballType = (FootballTypes)info.GetInt32("_FootballType");
            }
            catch
            {
                this._FootballType = FootballTypes.Both;
            }

            try
            {
                this._Fitler = info.GetValue("_Fitler", typeof(Webb.Data.DBFilter)) as Webb.Data.DBFilter;
                this._Fitler = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Fitler);         //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._Fitler = new Webb.Data.DBFilter();
            }

            try
            {
                this._ColumnsWidth = info.GetValue("_ColumnsWidth", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._ColumnsWidth = new Int32Collection();
            }

            try
            {
                this._RowsHight = info.GetValue("_RowsHight", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._RowsHight = new Int32Collection();
            }

            try
            {
                this._Styles = info.GetValue("_Styles", typeof(Styles.ExControlStyles)) as Styles.ExControlStyles;
            }
            catch
            {
                this._Styles = new ExControlStyles();
                this._Styles.LoadDefaultStyle();    //08-14-2008@Scott
            }

            try
            {
                this._BreakRows = info.GetValue("_BreakRows", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._BreakRows = new Int32Collection();
            }

            try
            {
                this._HaveHeader = info.GetBoolean("_HaveHeader");
            }
            catch
            {
                this._HaveHeader = true;
            }

            try
            {
                this._CellSizeAutoAdapting = (CellSizeAutoAdaptingTypes)info.GetValue("_CellSizeAutoAdapting", typeof(CellSizeAutoAdaptingTypes));
            }
            catch
            {
                this._CellSizeAutoAdapting = CellSizeAutoAdaptingTypes.WordWrap;
            }

            try
            {
                this._TopCount = info.GetInt32("_TopCount");
            }
            catch
            {
                this._TopCount = 0;
            }

            try
            {
                this._Total = info.GetBoolean("_Total");
            }
            catch
            {
                this._Total = false;
            }

            try
            {
                this._SectionTitle = info.GetString("_SectionTitle");
            }
            catch
            {
                this._SectionTitle = string.Empty;
            }

            try
            {
                this._SectionInOneRow = info.GetBoolean("_SectionInOneRow");
            }
            catch
            {
                this._SectionInOneRow = true;
            }

            try
            {
                this._TotalTitle = info.GetString("_TotalTitle");
            }
            catch
            {
                this._TotalTitle = "Total";
            }

            try
            {
                this._TotalColumns = info.GetValue("_TotalColumns", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._TotalColumns = new Int32Collection();
            }

            try
            {
                this._HeightPerPage = info.GetInt32("_HeightPerPage");
            }
            catch
            {
                this._HeightPerPage = 0;
            }

            try
            {
                this._AcrossPage = info.GetBoolean("_AcrossPage");
            }
            catch
            {
                this._AcrossPage = false;
            }
        }
コード例 #17
0
        public string ExportUnionReportToPdf(string strInwFile, string DestinationPdfFile)
        {
            Webb.Utility.CurReportMode = 2;

            DestinationPdfFile = AdjustPDFFile(DestinationPdfFile);

            string[] args = InwManager.ReadInwFile(strInwFile);

            if (args == null)
            {
                return("Failed");
            }

            CommandManager m_CmdManager = new CommandManager(args);

            DBSourceConfig m_Config = m_CmdManager.CreateDBConfig();

            WebbDataProvider m_DBProvider = new WebbDataProvider(m_Config);

            WebbDataSource m_DBSource = new WebbDataSource();

            try
            {
                m_DBProvider.GetDataSource(m_Config, m_DBSource);


                ArrayList m_Fields = new ArrayList();

                foreach (System.Data.DataColumn m_col in m_DBSource.DataSource.Tables[0].Columns)
                {
                    if (m_col.Caption == "{EXTENDCOLUMNS}" && m_col.ColumnName.StartsWith("C_"))
                    {
                        continue;
                    }

                    m_Fields.Add(m_col.ColumnName);
                }

                Webb.Data.PublicDBFieldConverter.SetAvailableFields(m_Fields);

                Webb.Reports.DataProvider.VideoPlayBackManager.DataSource = m_DBSource.DataSource;      //Set dataset for click event

                Webb.Reports.DataProvider.VideoPlayBackManager.PublicDBProvider = m_DBProvider;

                //Webb.Reports.DataProvider.VideoPlayBackManager.ReadPictureDirFromRegistry();

                Webb.Reports.DataProvider.VideoPlayBackManager.LoadAdvScFilters();      //Modified at 2009-1-19 13:48:30@Scott

                m_DBProvider.UpdateEFFDataSource(m_DBSource);
            }
            catch (Exception e)
            {
                return("Failed:at addding datasouce|" + e.Message);
            }

            FilterInfoCollection filterInfos = m_DBSource.Filters;  //2009-7-1 11:09:08@Simon Add this Code  For Union Print

            if (filterInfos == null)
            {
                filterInfos = new FilterInfoCollection();
            }

            if (m_Config.Templates.Count <= 0)
            {
                return("Failed");
            }

            XtraReport[] preparedReports = new WebbReport[m_Config.Templates.Count];

            if (System.IO.File.Exists(DestinationPdfFile))
            {
                System.IO.File.Delete(DestinationPdfFile);
            }

            System.Reflection.Assembly asm = System.Reflection.Assembly.GetExecutingAssembly();

            string dllPath = System.IO.Path.GetDirectoryName(asm.Location);

            if (!dllPath.EndsWith(@"\"))
            {
                dllPath += @"\";
            }

            for (int i = 0; i < m_Config.Templates.Count; i++)
            {
                string strTemplate = m_Config.Templates[i];

                string strTemplateName = m_CmdManager.GetTemplateName(strTemplate, '@');        //Modified at 2009-2-3 9:17:34@Scott

                WebbReport m_Report = null;

                try
                {
                    m_Report = m_CmdManager.CreateReport(dllPath, strTemplateName);     //1 //create report with template
                }
                catch (Exception ex)
                {
                    return("Failed:in create report" + ex.Message);
                }

                //Add attached filter here
                #region Modified Area

                m_DBSource.Filters = filterInfos.Copy();  //2009-7-1 11:09:04@Simon Add this Code  For Union Print

                string strFilterName = m_CmdManager.GetAttachedFilter(strTemplate, '@');

                if (strFilterName != string.Empty)  //2009-7-1 11:09:04@Simon For display Filternames In GameListInfo
                {
                    if (!m_DBProvider.DBSourceConfig.Filters.Contains(strFilterName))
                    {
                        FilterInfo filterInfo = new FilterInfo();

                        filterInfo.FilterName = strFilterName;

                        m_DBSource.Filters.Add(filterInfo);
                    }
                }

                ScAFilter scaFilter = Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters.GetFilter(strFilterName); //Modified at 2009-1-19 14:25:30@Scott

                AdvFilterConvertor convertor = new AdvFilterConvertor();

                DBFilter AdvFilter = convertor.GetReportFilter(scaFilter).Filter;

                if (AdvFilter != null || AdvFilter.Count > 0)  //2009-5-6 9:38:37@Simon Add this Code
                {
                    AdvFilter.Add(m_Report.Template.Filter);
                    m_Report.Template.Filter = AdvFilter;
                }
                #endregion        //Modify at 2008-11-24 16:04:05@Scott

                try
                {
                    m_Report.LoadAdvSectionFilters(m_Config.UserFolder);

                    m_Report.SetWatermark(m_Config.WartermarkImagePath);        //06-19-2008@Scott

                    m_Report.SetDataSource(m_DBSource);

                    preparedReports[i] = m_Report;
                }
                catch (Exception ex2)
                {
                    return("Failed:load report|" + ex2.Message);
                }
            }
            try
            {
                XtraReport.UnionReportsToPdf(preparedReports, DestinationPdfFile);
            }
            catch (Exception ex3)
            {
                return("Failed:in create PDf Documnet|" + ex3.Message);
            }

            if (!System.IO.File.Exists(DestinationPdfFile))
            {
                return("Failed:file didn't exist");
            }

            return(DestinationPdfFile);
        }
コード例 #18
0
        public StatInfo(SerializationInfo info, StreamingContext context)
        {
            try
            {
                this._ClickEvent = (ClickEvents)(info.GetValue("_ClickEvent", typeof(ClickEvents)));
            }
            catch
            {
                this._ClickEvent = ClickEvents.PlayVideo;
            }

            try
            {
                this._Title = info.GetString("_Title");
            }
            catch
            {
                this._Title = "New Stat";
            }

            try
            {
                this._FieldName = info.GetString("_FieldName");
            }
            catch
            {
                this._FieldName = string.Empty;
            }

            try
            {
                this._StatTypes = info.GetValue("_StatTypes", typeof(StatTypesCollection)) as StatTypesCollection;
            }
            catch
            {
                this._StatTypes = new StatTypesCollection();
            }

            try
            {
                this._Filter = info.GetValue("_Filter", typeof(DBFilter)) as DBFilter;

                this._Filter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Filter);    //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._Filter = new DBFilter();
            }

            try
            {
                this._DenominatorFilter = info.GetValue("_DenominatorFilter", typeof(DBFilter)) as DBFilter;

                this._DenominatorFilter = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._DenominatorFilter);    //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._DenominatorFilter = new DBFilter();
            }
            try  //Added this code at 2009-1-5 8:21:00@Simon
            {
                this._FollowedStatTypes = info.GetValue("_FollowedStatTypes", typeof(FollowedStatTypesCollection)) as FollowedStatTypesCollection;
            }
            catch
            {
                this._FollowedStatTypes = new FollowedStatTypesCollection(this._StatTypes);
            }
        }
コード例 #19
0
        static void Main(string[] args)
        {
            if (args == null || (args.Length != 1 && args.Length != 10))
            {
                return;
            }

            ReportFileType fileType = ReportFileType.Report;

            DataSet dsDataset = null;

            if (args.Length == 1)
            {
                string filename = args[0];

                if (filename.IndexOf("\n") > 0)
                {
                    args = filename.Split("\n".ToCharArray());

                    if (args.Length != 10)
                    {
                        return;
                    }
                }
                else if (filename.EndsWith(".wmks"))
                {
                    wmksFileManager.WriteFile(filename);

                    return;
                }
                else if (filename.EndsWith(".repx"))
                {
                    string Inwfilename = filename.Replace(".repx", ".inw");

                    args = InwManager.ReadInwFile(Inwfilename);

                    fileType = ReportFileType.InwFile;

                    if (args == null)
                    {
                        args = ConfigFileManager.ReadDataConfig(filename);

                        fileType = ReportFileType.BaseXmlFile;
                    }
                }
                else if (filename.EndsWith(".repw"))
                {
                    string Inwfilename = filename.Replace(".repw", ".inw");

                    args = InwManager.ReadInwFile(Inwfilename);

                    fileType = ReportFileType.InwFile;

                    if (args == null)
                    {
                        args = ConfigFileManager.ReadDataConfig(filename);

                        fileType = ReportFileType.BaseXmlFile;
                    }
                }
                else if (filename.EndsWith(".inw"))
                {
                    args = InwManager.ReadInwFile(filename);

                    fileType = ReportFileType.InwFile;
                }
                else if (filename.EndsWith(".wrdf"))
                {
                    WrdfFileManager.ReadDataConfig(filename, out dsDataset, out args);

                    fileType = ReportFileType.WebbDataFile;
                }
                else
                {
                    return;
                }
                if (args == null)
                {
                    return;
                }
            }

            if (args[3] == "DBConn:" && args[8] == @"Files:")
            {
                return;
            }

            Webb.Utility.CurReportMode = 1;             //set browser mode

            ThreadStart ts = new ThreadStart(LoadingThreadProc);

            Thread thread = new Thread(ts);

            thread.Start();

            CommandManager m_CmdManager = new CommandManager(args);

            //Calculate data source
            if (thread.IsAlive)
            {
                LoadingForm.MessageText = "Loading Data Source...";
            }

            DBSourceConfig m_Config = m_CmdManager.CreateDBConfig();

            if (m_Config.Templates.Count == 0)
            {
                if (thread.IsAlive)
                {
                    LoadingForm.Close();

                    thread.Abort();
                }

                Webb.Utilities.TopMostMessageBox.ShowMessage("Invalid template report name!", MessageBoxButtons.OK);

                Environment.Exit(0);
            }


            if (m_CmdManager.PrintDirectly)
            {
                if (PrinterSettings.InstalledPrinters.Count == 0)
                {
                    if (thread.IsAlive)
                    {
                        LoadingForm.Close();

                        thread.Abort();
                    }

                    Webb.Utilities.TopMostMessageBox.ShowMessage("No printer driver is installed!", MessageBoxButtons.OK);

                    Environment.Exit(0);
                }
            }

            WebbDataProvider m_DBProvider = new WebbDataProvider(m_Config);

            WebbDataSource m_DBSource = new WebbDataSource();

            if (fileType == ReportFileType.WebbDataFile && dsDataset == null)
            {
                m_DBSource.DataSource = dsDataset.Copy();
            }
            else
            {
                m_DBProvider.GetDataSource(m_Config, m_DBSource);
            }

            ArrayList m_Fields = new ArrayList();

            foreach (System.Data.DataColumn m_col in m_DBSource.DataSource.Tables[0].Columns)
            {
                if (m_col.Caption == "{EXTENDCOLUMNS}" && m_col.ColumnName.StartsWith("C_"))
                {
                    continue;
                }

                m_Fields.Add(m_col.ColumnName);
            }


            Webb.Reports.DataProvider.VideoPlayBackManager.PublicDBProvider = m_DBProvider;

            Webb.Data.PublicDBFieldConverter.SetAvailableFields(m_Fields);

            Webb.Reports.DataProvider.VideoPlayBackManager.LoadAdvScFilters();  //Modified at 2009-1-19 13:48:30@Scott

            Webb.Reports.DataProvider.VideoPlayBackManager.ReadPictureDirFromRegistry();

            m_DBProvider.UpdateEFFDataSource(m_DBSource);

            Webb.Reports.DataProvider.VideoPlayBackManager.DataSource = m_DBSource.DataSource;  //Set dataset for click event


            //Loading report template
            if (thread.IsAlive)
            {
                LoadingForm.MessageText = "Loading Report Template...";
            }

            #region Modified Area
            ArrayList printedReports = new ArrayList();

            ArrayList invalidateReports = new ArrayList();

            bool unionprint = m_CmdManager.UnionPrint;

            #endregion                    //End Modify at 2008-10-10 14:29:49@Simon


            FilterInfoCollection filterInfos = m_DBSource.Filters;            //2009-7-1 11:09:08@Simon Add this Code  For Union Print

            if (filterInfos == null)
            {
                filterInfos = new FilterInfoCollection();
            }

            string printerName = m_CmdManager.PrinterName;

            foreach (string strTemplate in m_Config.Templates)
            {
                string strTemplateName = m_CmdManager.GetTemplateName(strTemplate, '@');                //Modified at 2009-2-3 9:17:34@Scott

                WebbReport m_Report = null;

                try
                {
                    m_Report = m_CmdManager.CreateReport(Application.ExecutablePath, strTemplateName);                          //1 //create report with template

                    //09-01-2011@Scott
                    if (m_Config.WebbDBType == WebbDBTypes.WebbPlaybook)
                    {
                        SetReportHeader(m_Config, m_Report, m_Config.HeaderName);  //Add this code at 2011-7-28 16:23:41@simon
                    }
                    else
                    {
                        string strHeader = m_CmdManager.GetAttachedHeader(strTemplate, '@');

                        SetReportHeader(m_Config, m_Report, strHeader);
                    }
                    //End
                }
                catch (Exception ex)
                {
                    Webb.Utilities.TopMostMessageBox.ShowMessage("Error", "Can't load report template!\r\n" + ex.Message, MessageBoxButtons.OK);

                    m_Report = new WebbReport();
                }

                bool Canopen = CheckedUserRight(m_Report.LicenseLevel, m_Config.WebbDBType);

                string filename = System.IO.Path.GetFileNameWithoutExtension(strTemplateName);

                if (!Canopen)
                {
                    invalidateReports.Add(filename);
                }
                else
                {
                    //Add attached filter here
                    #region Modified Area

                    m_DBSource.Filters = filterInfos.Copy();                     //2009-7-1 11:09:04@Simon Add this Code  For Union Print

                    string strFilterName = m_CmdManager.GetAttachedFilter(strTemplate, '@');

                    if (strFilterName != string.Empty)                   //2009-7-1 11:09:04@Simon For display Filternames In GameListInfo
                    {
                        if (!m_DBProvider.DBSourceConfig.Filters.Contains(strFilterName))
                        {
                            FilterInfo filterInfo = new FilterInfo();

                            filterInfo.FilterName = strFilterName;

                            m_DBSource.Filters.Add(filterInfo);
                        }
                    }

                    ScAFilter          scaFilter = Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters.GetFilter(strFilterName);            //Modified at 2009-1-19 14:25:30@Scott
                    AdvFilterConvertor convertor = new AdvFilterConvertor();
                    DBFilter           AdvFilter = convertor.GetReportFilter(scaFilter).Filter;

                    if (AdvFilter != null || AdvFilter.Count > 0)               //2009-5-6 9:38:37@Simon Add this Code
                    {
                        AdvFilter.Add(m_Report.Template.Filter);
                        m_Report.Template.Filter = AdvFilter;
                    }

                    SectionFilterCollection sectionFilter = m_Report.Template.SectionFilters.Copy();

                    if (m_Report.Template.ReportScType == ReportScType.Custom)
                    {
                        m_Report.Template.SectionFilters = AdvFilterConvertor.GetCustomFilters(Webb.Reports.DataProvider.VideoPlayBackManager.AdvReportFilters, sectionFilter);
                    }

                    #endregion                            //Modify at 2008-11-24 16:04:05@Scott

                    //Set data source
                    if (thread.IsAlive)
                    {
                        LoadingForm.MessageText = "Set Data Source...";
                        LoadingForm.ProcessText = Webb.Utility.GetCurFileName();
                    }

                    m_Report.LoadAdvSectionFilters(m_Config.UserFolder);

                    m_Report.SetWatermark(m_Config.WartermarkImagePath);                        //06-19-2008@Scott

                    m_Report.SetDataSource(m_DBSource);
                }

                if (m_CmdManager.PrintDirectly)
                {
                    if (!Canopen)
                    {
                        if (!unionprint)
                        {
                            Webb.Utilities.TopMostMessageBox.ShowMessage("LicenseLevel Error", "This report is not designed for your Webb application!" + "", MessageBoxButtons.OK);
                        }
                        continue;
                    }
                    else
                    {
                        printedReports.Add(m_Report);
                    }

                    #region Modified Area
                    if (unionprint)
                    {
                        continue;                                       //Modified at 2008-10-10 10:04:37@Simon
                    }
                    //Print
                    if (Webb.Utility.CancelPrint)
                    {
                        if (thread.IsAlive)
                        {
                            LoadingForm.Close();

                            thread.Join();
                        }

                        return;
                    }

                    if (thread.IsAlive)
                    {
                        LoadingForm.MessageText = "Printing...";
                    }

                    if (printerName != string.Empty)
                    {
                        if (!PrinterExist(printerName))
                        {
                            Webb.Utilities.TopMostMessageBox.ShowMessage("Failed to Print", "WRB Cann't Find The Printer '" + printerName + "' in you system,please check the printer setting!",
                                                                         MessageBoxButtons.OK);
                            Environment.Exit(-1);
                        }
                        m_Report.Print(printerName);
                    }
                    else
                    {
                        m_Report.Print();
                    }
                    #endregion                            //End Modify at 2008-10-9 16:54:58@Simon
                }
                else
                {                //Browser
                    //Create report
                    if (thread.IsAlive)
                    {
                        LoadingForm.MessageText = "Creating Report Browser...";
                    }

                    WebbRepBrowser m_Browser = new WebbRepBrowser();

                    //m_Browser.LoadReport(new WebbReport[]{m_Report,m_Report});	//multiply report

                    if (m_Config.WebbDBType.ToString().ToLower().StartsWith("webbvictory"))
                    {
                        m_Browser.TopMost = true;
                    }
                    else
                    {
                        m_Browser.TopMost = false;
                    }
                    if (Canopen)
                    {
                        m_Browser.LoadReport(m_Report);
                    }

                    if (thread.IsAlive)
                    {
                        LoadingForm.Close();

                        thread.Join();
                    }

                    Webb.Reports.DataProvider.VideoPlayBackManager.PublicBrowser = m_Browser;                           //05-04-2008@Scott

                    if (!Canopen)
                    {
                        m_Browser.ReportName = filename;

                        m_Browser.InvertZorder();
//						Webb.Utilities.TopMostMessageBox.ShowMessage("LicenseLevel Error", "This report is not designed for your Webb application!\n So it would not open" + "", MessageBoxButtons.OK);
                    }

                    Application.Run(m_Browser);
                }
            }
            //add these codes for join all reports to print in only one document
            #region Modified Area

            WebbReport[] AllReportsToPrint = new WebbReport[printedReports.Count];

            for (int i = 0; i < printedReports.Count; i++)
            {
                AllReportsToPrint[i] = printedReports[i] as WebbReport;
            }

            if (m_CmdManager.PrintDirectly && unionprint)
            {
                if (AllReportsToPrint.Length == 0)
                {
                    Webb.Utilities.TopMostMessageBox.ShowMessage("No document", "No document could be print!",
                                                                 MessageBoxButtons.OK);
                }
                else
                {
                    if (thread.IsAlive)
                    {
                        LoadingForm.MessageText = "Printing...";

                        LoadingForm.ProcessText = "Union Printing Documents";
                    }

                    if (invalidateReports.Count > 0)
                    {
                        Webb.Utilities.AutoClosedMessageBox.ShowMessage(invalidateReports);
                    }
                    if (printerName != string.Empty)
                    {
                        if (!PrinterExist(printerName))
                        {
                            Webb.Utilities.TopMostMessageBox.ShowMessage("Failed to Print", "WRB Cann'i Find The Printer '" + printerName + "' in you system,\nplease check the printer setting!",
                                                                         MessageBoxButtons.OK);
                            Environment.Exit(-1);
                        }

                        WebbReport.Print(printerName, AllReportsToPrint);
                    }
                    else
                    {
                        WebbReport.Print(AllReportsToPrint);
                    }
                }
            }
            #endregion                    //End Modify at 2008-10-10 9:42:07@Simon

            if (thread.IsAlive)
            {
                LoadingForm.Close();

                thread.Join();
            }
        }
コード例 #20
0
        public MatrixGroupView(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            // TODO:  Add ExControlView.GetObjectData implementation
            //this.MainStyle = info.GetValue("MainStyle",typeof(BasicStyle)) as BasicStyle;
            try
            {
                this._RootGroupInfo = info.GetValue("_RootGroupInfo", typeof(GroupInfo)) as GroupInfo;
            }
            catch
            {
                this._RootGroupInfo = new Webb.Reports.ExControls.Data.FieldGroupInfo(Webb.Data.PublicDBFieldConverter.AvialableFields[0].ToString());
                this._RootGroupInfo.ColumnHeading = "New Group";
            }

            try
            {
                this._ShowRowIndicators = info.GetBoolean("_ShowRowIndicators");
            }
            catch
            {
                this.ShowRowIndicators = false;
            }



            try
            {
                this._FootballType = (FootballTypes)info.GetInt32("_FootballType");
            }
            catch
            {
                this._FootballType = FootballTypes.Both;
            }

            try
            {
                this._Fitler = info.GetValue("_Fitler", typeof(Webb.Data.DBFilter)) as Webb.Data.DBFilter;

                this._Fitler = AdvFilterConvertor.GetAdvFilter(DataProvider.VideoPlayBackManager.AdvReportFilters, this._Fitler);                 //2009-4-29 11:37:37@Simon Add UpdateAdvFilter
            }
            catch
            {
                this._Fitler = new Webb.Data.DBFilter();
            }

            try
            {
                this._ColumnsWidth = info.GetValue("_ColumnsWidth", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._ColumnsWidth = new Int32Collection();
            }

            try
            {
                this._RowsHight = info.GetValue("_RowsHight", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._RowsHight = new Int32Collection();
            }

            try
            {
                this._Styles = info.GetValue("_Styles", typeof(Styles.ExControlStyles)) as Styles.ExControlStyles;
            }
            catch
            {
                this._Styles = new ExControlStyles();
                this._Styles.LoadDefaultStyle();                     //08-14-2008@Scott
            }

            try
            {
                this._BreakRows = info.GetValue("_BreakRows", typeof(Int32Collection)) as Int32Collection;
            }
            catch
            {
                this._BreakRows = new Int32Collection();
            }

            try
            {
                this._HaveHeader = info.GetBoolean("_HaveHeader");
            }
            catch
            {
                this._HaveHeader = true;
            }

            try
            {
                this._CellSizeAutoAdapting = (CellSizeAutoAdaptingTypes)info.GetValue("_CellSizeAutoAdapting", typeof(CellSizeAutoAdaptingTypes));
            }
            catch
            {
                this._CellSizeAutoAdapting = CellSizeAutoAdaptingTypes.WordWrap;
            }

            try
            {
                this._HeightPerPage = info.GetInt32("_HeightPerPage");
            }
            catch
            {
                this._HeightPerPage = 0;
            }

            try
            {
                this.TableHeaders = info.GetValue("TableHeaders", typeof(HeadersData)) as HeadersData;
            }
            catch
            {
                this.TableHeaders = null;
            }

            //added 2008-09-08@Simon
            try
            {
                this.SectionFilters = info.GetValue("SectionFilters", typeof(SectionFilterCollection)) as SectionFilterCollection;
            }
            catch
            {
            }

            //Modified at 2009-1-14 17:27:16@Scott
            try
            {
                this.SectionFiltersWrapper = info.GetValue("SectionFiltersWrapper", typeof(SectionFilterCollectionWrapper)) as SectionFilterCollectionWrapper;
            }
            catch
            {
                //this.SectionFiltersWrapper = new SectionFilterCollectionWrapper();
            }
            try
            {
                this._SectionRoot = info.GetBoolean("_SectionRoot");
            }
            catch
            {
                this._SectionRoot = false;
            }
            try
            {
                this._MatrixInfo = info.GetValue("_MatrixInfo", typeof(MatrixInfo)) as MatrixInfo;
            }
            catch
            {
            }

            try
            {
                this._WidthEnable = info.GetBoolean("_WidthEnable");
            }
            catch
            {
                this._WidthEnable = false;
            }
            try
            {
                this._MatrixDisplay = (ComputedStyle)info.GetValue("_MatrixDisplay", typeof(ComputedStyle));
            }
            catch
            {
                this._MatrixDisplay = ComputedStyle.Group;
            }
            try
            {
                this._GridInfo = info.GetValue("_GridInfo", typeof(GridInfo)) as GridInfo;
            }
            catch
            {
                this._GridInfo      = null;
                this._MatrixDisplay = ComputedStyle.Group;
            }
        }
コード例 #21
0
        //Fill Left List
        private void LoadSectionFilters()
        {
            this.C_ListSecFilters.Items.Clear();

            this.C_ListSelectedSecFilters.Items.Clear();

            ScFilterList scFilterList = new ScFilterList();

            object objUserFolder = RegKey.GetValue(KeyName);

            if (objUserFolder == null)
            {
                return;
            }

            string strUserFolder = objUserFolder.ToString();

            if (strUserFolder.EndsWith("\\"))
            {
                strUserFolder = strUserFolder.Remove(strUserFolder.Length - 1, 1);
            }

            int index = strUserFolder.LastIndexOf('\\');

            strUserFolder = strUserFolder.Remove(index + 1, strUserFolder.Length - index - 1);

            strUserFolder += @"WebbRpt\ScFilter.dat";

            ArrayList arrList = new ArrayList();

            if (this._InitSectionFilters != null)
            {
                foreach (SectionFilter scFilter in this._InitSectionFilters)
                {
                    this.C_ListSelectedSecFilters.Items.Add(scFilter);

                    arrList.Add(scFilter.FilterName);
                }
            }


            if (scFilterList.ReadOldFiltersFromDisk(strUserFolder))
            {
                AdvFilterConvertor convertor = new AdvFilterConvertor();

                SectionFilterCollection sectionFilters = convertor.GetReportFilters(scFilterList);

                foreach (SectionFilter filter in sectionFilters)
                {
                    if (!arrList.Contains(filter.FilterName))
                    {
                        this.C_ListSecFilters.Items.Add(filter);
                    }
                }
            }

            if (this.C_ListSecFilters.Items.Count > 0)
            {
                this.C_ListSecFilters.SelectedIndex = 0;
            }
        }