Exemplo n.º 1
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            var ret = new InqDefineSourceMDX(SelectedFields, SelectedMetrics, SelectedFilters)
            {
                PreffixDimTable = "AR",
                OlapCubeName    = Helpers.GetCubeName(GlobalVar.DbOLAP_ConnectionStr_Tiny)
            };

            lsttbl_DashboardSource objDs = new lsttbl_DashboardSource()
            {
                Code       = Lib.IfNOE(MySession.DSDefine_CurEditing, "ds_" + DateTime.Now.ToString("yyyyMMddHHmmss")),
                NameVI     = txtDataSourceName.Text,
                NameEN     = txtDataSourceName.Text,
                JsonStr    = ret.ToJsonStr(),
                WHCode     = Lib.NTE(cbDataWarehouse.Value),
                SettingCat = GlobalVar.SettingCat_DS
            };

            MyBI.Me.Save_DashboardSource(objDs);
            if (objDs.Code == MySession.DSDefine_CurEditing)
            {
                cbDataSource.Text = txtDataSourceName.Text;
            }
            else
            {
                MySession.DSDefine_CurEditing = objDs.Code;
                // Reload Data Source
                m_WHCode = cbDataWarehouse.Value.ToString();
                var dsItems = MyBI.Me.Get_DashboardSource(m_WHCode, GlobalVar.SettingCat_DS);
                Helpers.SetDataSource(cbDataSource, dsItems, "Code", "NameEN");
                cbDataSource.Value = MySession.DSDefine_CurEditing;
            }
        }
Exemplo n.º 2
0
 public InqDefineSourceMDX Get_DefineSource()
 {
     try
     {
         //var top = string.IsNullOrEmpty(this.cboTop.Text) ? 0 : int.Parse(this.cboTop.Text);
         var fields    = this.lbxFieldSelected.DataSource as List <InqFieldInfoMDX>;
         var summaries = this.lbxMetricFieldSelected.DataSource as List <InqSummaryInfoMDX>;
         var filters   = new List <InqFilterInfoMDX>();
         foreach (FilterCtrlBase ctrl in this.ctrlCollect.Controls)
         {
             var filter = ctrl.Get_FilterInfo();
             if (filter == null)
             {
                 continue;
             }
             // Set lại hàm tính toán trên field filter giống với hàm của field đó trong Summaries
             if (filter.HasHavingKey())
             {
                 var objSummary = summaries.FirstOrDefault(p => p.Field.KeyField == filter.HavingKey.Field.KeyField);
                 if (objSummary != null)
                 {
                     filter.HavingKey.FuncName = objSummary.FuncName;
                 }
             }
             filters.Add(filter);
         }
         var ret = new InqDefineSourceMDX(fields, summaries, filters);
         ret.PreffixDimTable = this.WHCode;
         ret.OlapCubeName    = string.Format("[{0}Cube]", ret.PreffixDimTable);
         return(ret);
     }
     catch { return(new InqDefineSourceMDX()); }
 }
Exemplo n.º 3
0
        protected void dsGridPreviewData_CustomCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewCustomCallbackEventArgs e)
        {
            var inq = new InqDefineSourceMDX(SelectedFields, SelectedMetrics, SelectedFilters)
            {
                PreffixDimTable = "AR",
                OlapCubeName    = Helpers.GetCubeName(GlobalVar.DbOLAP_ConnectionStr_Tiny)
            };

            var ds = (new MdxExecuter(GlobalVar.DbOLAP_ConnectionStr_Tiny)).ExecuteDataSet(inq.ToMDX());

            dsGridPreviewData.DataSource = ds;
            dsGridPreviewData.DataBind();
        }
Exemplo n.º 4
0
        protected void cbDataSource_ValueChanged(object sender, EventArgs e)
        {
            Cleanup();

            // re-init information
            ASPxComboBox cb = (ASPxComboBox)sender;
            object       selectedItemValue = cb.SelectedItem != null ? cb.SelectedItem.Value : null;

            if (selectedItemValue != null)
            {
                m_DSCode = selectedItemValue.ToString();
                lsttbl_DashboardSource datasource = MyBI.Me.Get_DashboardSourceBy(m_DSCode);
                if (datasource != null)
                {
                    MySession.DSDefine_CurEditing = datasource.Code;

                    txtDataSourceName.Text = datasource.NameEN;
                    if (datasource.WHCode != Lib.NTE(cbDataWarehouse.Value))
                    {
                        cbDataWarehouse.Value = datasource.WHCode;
                    }

                    InqDefineSourceMDX inq = datasource.JsonObjMDX;
                    Helpers.SetDataSource(lbSelectedFields, inq.Fields, "UniqueName", "Caption");
                    Helpers.SetDataSource(lbSelectedMetricFields, inq.Summaries, "UniqueName", "Caption");
                    foreach (InqFilterInfoMDX filter in inq.Filters)
                    {
                        FilterCtrlBase ctrl = GenerateFilterControl(filter.FilterType, String.Empty);
                        ctrl.Set_Info(filter);
                        m_Filters.Add(new FilterControlInfo(ctrl)
                        {
                            Type = filter.FilterType
                        });
                    }
                }
            }
            else
            {
                m_DSCode = String.Empty;
            }

            // refress kpi tab
            if (!IsPostBack && MyPage != null)
            {
                MyPage.My_wcKPISetting.DSCode = m_DSCode;
                //MyPage.My_wcKPISetting.Raise_OnChange(String.Empty, EventArgs.Empty);
            }
        }
Exemplo n.º 5
0
        public static InqDefineSourceMDX Get_InqDefineSourceMDX()
        {
            var iqr = new InqDefineSourceMDX("bcd");

            iqr.OlapCubeName    = "[ARCube2]";
            iqr.PreffixDimTable = "AR";
            iqr.Top             = new InqTopMDX(3, "Quantity");
            // Select
            iqr.AddField("DimItem", "ItemCode", 1);
            iqr.AddField("DimItem", "ItemName", 1);
            iqr.AddField("DimItem", "ItemGroupName", 0);
            // Summary
            iqr.AddSummary("FACTAR", "Quantity", "SUM");
            iqr.AddSummary("FACTAR", "Quantity", "SUM");
            iqr.AddSummary(new InqSummaryInfoMDX(new InqFieldInfoMDX("FACTAR", "Quantity"), "SUM")
            {
                InnerFilters = new List <InqFilterInfoMDX>()
                {
                    new InqFilterInfoMDX(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), "=", "KHAC"),
                    new InqFilterInfoMDX(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"), "=", "201108"),
                }
            });
            //iqr.AddSummary("FACTAR", "VatSum", "SUM");
            // Filter
            iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), ">=", "KHAC");
            iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), "<=", "TUI");
            //iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), "=", "Chiết khấu");
            iqr.AddFilter(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"), ">=", "201108");
            iqr.AddFilter(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"), "<=", "201110");
            iqr.AddFilter(iqr.Summaries[0], ">", "-10");
            iqr.AddFilter(iqr.Summaries[1], ">", "-10");

            iqr.Fields[0].OrderName          = "ASC";
            iqr.Summaries[0].Field.OrderName = "DESC";
            return(iqr);
        }
Exemplo n.º 6
0
        public static InqDefineSourceMDX Get_InqDefineSourceMDX()
        {
            var iqr = new InqDefineSourceMDX("bcd");
            iqr.OlapCubeName = "[ARCube]";
            iqr.PreffixDimTable = "AR";
            iqr.Top = new InqTopMDX(3, "Quantity");
            // Select
            iqr.AddField("DimItem", "ItemCode",1);
            iqr.AddField("DimItem", "ItemName",1);
            iqr.AddField("DimItem", "ItemGroupName", 0);
            // Summary
            iqr.AddSummary("FACTAR", "Quantity", "SUM");
            iqr.AddSummary("FACTAR", "Quantity", "SUM");
            iqr.AddSummary(new InqSummaryInfoMDX(new InqFieldInfoMDX("FACTAR", "Quantity"), "SUM")
            {
                InnerFilters = new List<InqFilterInfoMDX>()
                {
                    new InqFilterInfoMDX(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"),"=","KHAC"),
                    new InqFilterInfoMDX(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"),"=","201108"),
                }
            });
            //iqr.AddSummary("FACTAR", "VatSum", "SUM");
            // Filter
            iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), ">=", "KHAC");
            iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), "<=", "TUI");
            //iqr.AddFilter(new InqFieldInfoMDX("DimItem", "ItemGroupName", "NTEXT"), "=", "Chiết khấu");
            iqr.AddFilter(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"), ">=", "201108");
            iqr.AddFilter(new InqFieldInfoMDX("DimTime", "Period", "NTEXT"), "<=", "201110");
            iqr.AddFilter(iqr.Summaries[0], ">", "-10");
            iqr.AddFilter(iqr.Summaries[1], ">", "-10");

            iqr.Fields[0].OrderName = "ASC";
            iqr.Summaries[0].Field.OrderName = "DESC";
            return iqr;
        }
 public InqDefineSourceMDX Get_DefineSource()
 {
     try
     {
         //var top = string.IsNullOrEmpty(this.cboTop.Text) ? 0 : int.Parse(this.cboTop.Text);
         var fields = this.lbxFieldSelected.DataSource as List<InqFieldInfoMDX>;
         var summaries = this.lbxMetricFieldSelected.DataSource as List<InqSummaryInfoMDX>;
         var filters = new List<InqFilterInfoMDX>();
         foreach (FilterCtrlBase ctrl in this.ctrlCollect.Controls)
         {
             var filter = ctrl.Get_FilterInfo();
             if (filter == null) continue;
             // Set lại hàm tính toán trên field filter giống với hàm của field đó trong Summaries
             if (filter.HasHavingKey())
             {
                 var objSummary = summaries.FirstOrDefault(p => p.Field.KeyField == filter.HavingKey.Field.KeyField);
                 if (objSummary != null)
                     filter.HavingKey.FuncName = objSummary.FuncName;
             }
             filters.Add(filter);
         }
         var ret = new InqDefineSourceMDX(fields, summaries, filters);
         ret.PreffixDimTable = this.WHCode;
         ret.OlapCubeName = Helpers.GetCubeName(GlobalVar.DbOLAP_ConnectionStr_Tiny);// string.Format("[{0}Cube2]", ret.PreffixDimTable);
         return ret;
     }
     catch { return new InqDefineSourceMDX(); }
 }
        protected void dsGridPreviewData_CustomCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewCustomCallbackEventArgs e)
        {
            var inq = new InqDefineSourceMDX(SelectedFields, SelectedMetrics, SelectedFilters)
            {
                PreffixDimTable = "AR",
                OlapCubeName = Helpers.GetCubeName(GlobalVar.DbOLAP_ConnectionStr_Tiny)
            };

            var ds = (new MdxExecuter(GlobalVar.DbOLAP_ConnectionStr_Tiny)).ExecuteDataSet(inq.ToMDX());
            dsGridPreviewData.DataSource = ds;
            dsGridPreviewData.DataBind();
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            var ret = new InqDefineSourceMDX(SelectedFields, SelectedMetrics, SelectedFilters)
            {
                PreffixDimTable = "AR",
                OlapCubeName = Helpers.GetCubeName(GlobalVar.DbOLAP_ConnectionStr_Tiny)
            };

            lsttbl_DashboardSource objDs = new lsttbl_DashboardSource()
            {
                Code = Lib.IfNOE(MySession.DSDefine_CurEditing, "ds_" + DateTime.Now.ToString("yyyyMMddHHmmss")),
                NameVI = txtDataSourceName.Text,
                NameEN = txtDataSourceName.Text,
                JsonStr = ret.ToJsonStr(),
                WHCode = Lib.NTE(cbDataWarehouse.Value),
                SettingCat = GlobalVar.SettingCat_DS
            };
            MyBI.Me.Save_DashboardSource(objDs);
            if (objDs.Code == MySession.DSDefine_CurEditing)
            {
                cbDataSource.Text = txtDataSourceName.Text;
            }
            else
            {
                MySession.DSDefine_CurEditing = objDs.Code;
                // Reload Data Source
                m_WHCode = cbDataWarehouse.Value.ToString();
                var dsItems = MyBI.Me.Get_DashboardSource(m_WHCode, GlobalVar.SettingCat_DS);
                Helpers.SetDataSource(cbDataSource, dsItems, "Code", "NameEN");
                cbDataSource.Value = MySession.DSDefine_CurEditing;
            }
        }