protected override List <WidgetCtrlBase> Load_Portlets(out ICollection <ParamCtrlBase> lstParams)
        {
            var ret = new List <WidgetCtrlBase>();

            lstParams = new List <ParamCtrlBase>();
            try
            {
                this.Container_Pl1.Controls.Clear();
                this.Container_Pl1_Param.Controls.Clear();

                DashboardDefine objDef = null;
                var             obj    = MyBI.Me.Get_DashboardBy(this.DashboardCode);
                if (obj == null)
                {
                    return(ret);
                }
                objDef = obj.JsonObj;
                var plts = objDef.UsingPortlets;

                var ctrl1 = this.Load_CtrlWidget(plts[0]);
                this.Container_Pl1.Controls.Add(ctrl1);
                var ctrl1_Param = this.Load_CtrlParams(plts[0]);
                ctrl1_Param.WidgetClientInstanceName = ctrl1.MyClientInstanceName;
                this.Container_Pl1_Param.Controls.Add(ctrl1_Param);
                ret.Add(ctrl1);
                lstParams.Add(ctrl1_Param);
                this.Title_Pl1.Text = ctrl1.Sett.DisplayName;
            }
            catch { }
            return(ret);
        }
Example #2
0
        private LayoutPortletCtrlBase Load_Dashboard(bool isReCreate, string newDbrdCode)
        {
            this.ctrl_Dashboard.Controls.Clear();
            LayoutPortletCtrlBase ctrl    = null;
            lsttbl_Dashboard      dbrdObj = null;
            DashboardDefine       dbrdDef = null;

            // ReCreate...
            if (isReCreate)
            {
                if (string.IsNullOrEmpty(this.Ctrl_DashboardID))
                {
                    return(null);
                }
                var tmpl = this.Ctrl_DashboardID.Split('-').Last();
                ctrl    = this.LoadControl(string.Format("wc{0}.ascx", Dashboard.TemplateMap.Find(tl => tl.Key == tmpl).Value)) as LayoutPortletCtrlBase;
                ctrl.ID = this.Ctrl_DashboardID;
            }
            else // Add new...
            {
                dbrdObj = MyBI.Me.Get_DashboardBy(newDbrdCode);
                if (dbrdObj == null)
                {
                    return(null);
                }
                dbrdDef = dbrdObj.JsonObj;
                String templateCtrl = string.Format("wc{0}.ascx", Dashboard.TemplateMap.Find(tl => tl.Key == dbrdDef.Template).Value);
                ctrl    = this.LoadControl(templateCtrl) as LayoutPortletCtrlBase;
                ctrl.ID = string.Format("genDashboard-{0}-{1}", dbrdObj.Code, dbrdDef.Template);
                this.Ctrl_DashboardID = ctrl.ID;
            }
            ctrl.ContainerUpdatePanel = this.udp_Dashboard;
            this.ctrl_Dashboard.Controls.Add(ctrl);
            return(ctrl);
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            DashboardDefine dbDefine = new DashboardDefine()
            {
                DisplayName = txtDashboardName.Text
            };

            // detect template
            if (FourPane_1.Checked)
            {
                dbDefine.Template = "FourPane_1";
            }
            else if (TwoPane_2.Checked)
            {
                dbDefine.Template = "TwoPane_2";
            }
            else if (ThreePane_1.Checked)
            {
                dbDefine.Template = "ThreePane_1";
            }
            else if (ThreePane_2.Checked)
            {
                dbDefine.Template = "ThreePane_2";
            }
            else if (ThreePane_3.Checked)
            {
                dbDefine.Template = "ThreePane_3";
            }
            else if (ThreePane_4.Checked)
            {
                dbDefine.Template = "ThreePane_4";
            }
            else
            {
                // default case
                dbDefine.Template = "TwoPane_1";
            }
            // filters
            dbDefine.Filters = this.ctrl_DashboardFilters.Controls.OfType <wcInteractionFilter>()
                               .Select(p => p.Get_FilterInfo()).ToList();
            // portlets which are used
            dbDefine.UsingPortlets = m_selectedPortlets;

            lsttbl_Dashboard db = new lsttbl_Dashboard()
            {
                Code      = Lib.IfNOE(MySession.DashboardDefine_CurEditing, String.Format("dbrd_{0}_{1}", WHCode, DateTime.Now.ToString("yyyyMMddHHmmss"))),
                Name      = txtDashboardName.Text,
                WHCode    = this.WHCode,
                JsonStr   = dbDefine.ToJsonStr(),
                IsDefault = chkDefault.Checked
            };

            MyBI.Me.Save_Dashboard(db);
            // clean session data
            MySession.DashboardDefine_CurEditing = null;
            MySession.DashboardDefine_UsingPortlet.Clear();
            Response.Redirect("DashboardSetting.aspx?whcode=" + WHCode);
        }
Example #4
0
 private DashboardDefine Get_DefineInfo()
 {
     try
     {
         var ret = new DashboardDefine()
         {
             DisplayName = this.txtDisplayName.Text,
             Template    = Lib.NTE(this.cboTemplate.Value)
         };
         ret.Filters = this.ctrl_DashboardFilters.Controls.OfType <wcInteractionFilter>()
                       .Select(p => p.Get_FilterInfo()).ToList();
         ret.UsingPortlets = MySession.DashboardDefine_UsingPortlet
                             .OfType <COMCodeNameObj>().Select(p => p.Code).ToList();
         return(ret);
     }
     catch { return(null); }
 }
Example #5
0
        public override void Load_InitData()
        {
            if (!IsPostBack)
            {
                // Load Data WareHouse
                Helpers.SetDataSource(this.cboDataDW, MyBI.Me.GetDW(), "Value", "Text");
            }

            // Load template..
            Helpers.SetDataSource(this.cboTemplate, DashboardDefine.Get_Template(), "Code", "Name", this.cboTemplate.Value);

            // Load Portlet by WHCode.
            var ds = MyBI.Me.Get_Widget(this.WHCode).ToList();

            Helpers.SetDataSource(this.lbxAvailablePortlet, ds, "Code", "Name");

            //Tạo lại control....
            if (this.IsPostBack)
            {
                this.Add_FilterControl(true);
            }
        }
        protected override List <WidgetCtrlBase> Load_Portlets(out ICollection <ParamCtrlBase> lstParams)
        {
            var ret = new List <WidgetCtrlBase>();

            lstParams = new List <ParamCtrlBase>();
            try
            {
                this.Container_Pl1.Controls.Clear();
                this.Container_Pl2.Controls.Clear();
                this.Container_Pl3.Controls.Clear();
                this.Container_Pl4.Controls.Clear();
                this.Container_Pl5.Controls.Clear();
                this.Container_Pl6.Controls.Clear();
                this.Container_Pl7.Controls.Clear();
                this.Container_Pl1_Param.Controls.Clear();
                this.Container_Pl2_Param.Controls.Clear();
                this.Container_Pl3_Param.Controls.Clear();
                this.Container_Pl4_Param.Controls.Clear();
                this.Container_Pl5_Param.Controls.Clear();
                this.Container_Pl6_Param.Controls.Clear();
                this.Container_Pl7_Param.Controls.Clear();

                DashboardDefine objDef = null;
                var             obj    = MyBI.Me.Get_DashboardBy(this.DashboardCode);
                if (obj == null)
                {
                    return(ret);
                }
                objDef = obj.JsonObj;
                var plts = objDef.UsingPortlets;

                var ctrl1 = this.Load_CtrlWidget(plts[0]);
                var ctrl2 = this.Load_CtrlWidget(plts[1]);
                var ctrl3 = this.Load_CtrlWidget(plts[2]);
                var ctrl4 = this.Load_CtrlWidget(plts[3]);
                var ctrl5 = this.Load_CtrlWidget(plts[4]);
                var ctrl6 = this.Load_CtrlWidget(plts[5]);
                var ctrl7 = this.Load_CtrlWidget(plts[6]);
                this.Container_Pl1.Controls.Add(ctrl1);
                this.Container_Pl2.Controls.Add(ctrl2);
                this.Container_Pl3.Controls.Add(ctrl3);
                this.Container_Pl4.Controls.Add(ctrl4);
                this.Container_Pl5.Controls.Add(ctrl5);
                this.Container_Pl6.Controls.Add(ctrl6);
                this.Container_Pl7.Controls.Add(ctrl7);

                var ctrl1_Param = this.Load_CtrlParams(plts[0]);
                var ctrl2_Param = this.Load_CtrlParams(plts[1]);
                var ctrl3_Param = this.Load_CtrlParams(plts[2]);
                var ctrl4_Param = this.Load_CtrlParams(plts[3]);
                var ctrl5_Param = this.Load_CtrlParams(plts[4]);
                var ctrl6_Param = this.Load_CtrlParams(plts[5]);
                var ctrl7_Param = this.Load_CtrlParams(plts[6]);
                ctrl1_Param.WidgetClientInstanceName = ctrl1.MyClientInstanceName;
                ctrl2_Param.WidgetClientInstanceName = ctrl2.MyClientInstanceName;
                ctrl3_Param.WidgetClientInstanceName = ctrl3.MyClientInstanceName;
                ctrl4_Param.WidgetClientInstanceName = ctrl4.MyClientInstanceName;
                ctrl5_Param.WidgetClientInstanceName = ctrl5.MyClientInstanceName;
                ctrl6_Param.WidgetClientInstanceName = ctrl6.MyClientInstanceName;
                ctrl7_Param.WidgetClientInstanceName = ctrl7.MyClientInstanceName;
                this.Container_Pl1_Param.Controls.Add(ctrl1_Param);
                this.Container_Pl2_Param.Controls.Add(ctrl2_Param);
                this.Container_Pl3_Param.Controls.Add(ctrl3_Param);
                this.Container_Pl4_Param.Controls.Add(ctrl4_Param);
                this.Container_Pl5_Param.Controls.Add(ctrl5_Param);
                this.Container_Pl6_Param.Controls.Add(ctrl6_Param);
                this.Container_Pl7_Param.Controls.Add(ctrl7_Param);
                ret.Add(ctrl1);
                ret.Add(ctrl2);
                ret.Add(ctrl3);
                ret.Add(ctrl4);
                ret.Add(ctrl5);
                ret.Add(ctrl6);
                ret.Add(ctrl7);
                lstParams.Add(ctrl1_Param);
                lstParams.Add(ctrl2_Param);
                lstParams.Add(ctrl3_Param);
                lstParams.Add(ctrl4_Param);
                lstParams.Add(ctrl5_Param);
                lstParams.Add(ctrl6_Param);
                lstParams.Add(ctrl7_Param);
                this.Title_Pl1.Text = ctrl1.Sett.DisplayName;
                this.Title_Pl2.Text = ctrl2.Sett.DisplayName;
                this.Title_Pl3.Text = ctrl3.Sett.DisplayName;
                this.Title_Pl4.Text = ctrl4.Sett.DisplayName;
                this.Title_Pl5.Text = ctrl5.Sett.DisplayName;
                this.Title_Pl6.Text = ctrl6.Sett.DisplayName;
                this.Title_Pl7.Text = ctrl7.Sett.DisplayName;
            }
            catch { }
            return(ret);
        }
        protected void btnSave_Click(object sender, EventArgs e)
        {
            DashboardDefine dbDefine = new DashboardDefine()
            {
                DisplayName = txtDashboardName.Text
            };
            // detect template
            if (FourPane_1.Checked)
            {
                dbDefine.Template = "FourPane_1";
            }
            else if (TwoPane_2.Checked)
            {
                dbDefine.Template = "TwoPane_2";
            }
            else if (ThreePane_1.Checked)
            {
                dbDefine.Template = "ThreePane_1";
            }
            else if (ThreePane_2.Checked)
            {
                dbDefine.Template = "ThreePane_2";
            }
            else if (ThreePane_3.Checked)
            {
                dbDefine.Template = "ThreePane_3";
            }
            else if (ThreePane_4.Checked)
            {
                dbDefine.Template = "ThreePane_4";
            }
            else
            {
                // default case
                dbDefine.Template = "TwoPane_1";
            }
            // filters
            dbDefine.Filters = this.ctrl_DashboardFilters.Controls.OfType<wcInteractionFilter>()
                    .Select(p => p.Get_FilterInfo()).ToList();
            // portlets which are used
            dbDefine.UsingPortlets = m_selectedPortlets;

            lsttbl_Dashboard db = new lsttbl_Dashboard()
            {
                Code = Lib.IfNOE(MySession.DashboardDefine_CurEditing, String.Format("dbrd_{0}_{1}", WHCode, DateTime.Now.ToString("yyyyMMddHHmmss"))),
                Name = txtDashboardName.Text,
                WHCode = this.WHCode,
                JsonStr = dbDefine.ToJsonStr(),
                IsDefault = chkDefault.Checked
            };
            MyBI.Me.Save_Dashboard(db);
            // clean session data
            MySession.DashboardDefine_CurEditing = null;
            MySession.DashboardDefine_UsingPortlet.Clear();
            Response.Redirect("DashboardSetting.aspx?whcode=" + WHCode);
        }
 private DashboardDefine Get_DefineInfo()
 {
     try
     {
         var ret = new DashboardDefine()
         {
             DisplayName = this.txtDisplayName.Text,
             Template = Lib.NTE(this.cboTemplate.Value)
         };
         ret.Filters = this.ctrl_DashboardFilters.Controls.OfType<wcInteractionFilter>()
             .Select(p => p.Get_FilterInfo()).ToList();
         ret.UsingPortlets = MySession.DashboardDefine_UsingPortlet
             .OfType<COMCodeNameObj>().Select(p => p.Code).ToList();
         return ret;
     }
     catch { return null; }
 }