protected void cbKPI_ValueChanged(object sender, EventArgs e) { ASPxComboBox _sender = (ASPxComboBox)sender; lsttbl_DashboardSource _Kpi = Kpi; if (_Kpi == null) { return; } MySession.KPIDefine_CurEditing = _Kpi.Code; txtKPIDisplayName.Text = _Kpi.NameVI; var kpi = _Kpi.JsonObjKPI; // Set value to control if (!string.IsNullOrEmpty(kpi.CtrlTypeDefault) && !string.IsNullOrEmpty(kpi.VisibleTypeDefault)) { cbCtrlType.Value = kpi.CtrlTypeDefault; cbCtrlType_ValueChanged(cbCtrlType, EventArgs.Empty); cbCtrl.Value = string.Format("{0}-{1}", kpi.CtrlTypeDefault, kpi.VisibleTypeDefault); } // Add new Part controls of KPI is selected foreach (var part in kpi.Dimensions) { KPIPartCtrlBase ctrl = AddKPIPartControl("dimension", String.Empty); ctrl.Set_Info(part); m_PartControls.Add(new PartControlInfo() { ID = ctrl.ID, ControlType = ctrl.PartType }); } /** * foreach (var part in kpi.Measures) * { * var myCtrl = this.Add_PartControl("measure", false); * myCtrl.Set_Info(part); * } * foreach (var part in kpi.Contexts) * { * var type = ""; * if (part.HasCalcFields()) * type = "context-Calc"; * else * type = "context-Normal"; * var myCtrl = this.Add_PartControl(type, false); * myCtrl.Set_Info(part); * } * foreach (var part in kpi.Filters) * { * var myCtrl = this.Add_FilterControl(part.GetTinyType(), false); * myCtrl.Set_Info(part); * } * // Raise Event OnChange. * this.MyPage.My_wcLayoutSetting.Raise_OnChange("KPI", null); * this.MyPage.My_wcDSSetting.Raise_OnChange("KPI", new HTLBIEventArgs(item.ParentCode)); */ }
protected void popMenAddCalcField_ItemClick(object source, DevExpress.Web.ASPxMenu.MenuItemEventArgs e) { KPIPartCtrlBase ctrl = AddKPIPartControl(String.Format("context-{0}", e.Item.Name).ToLower(), string.Empty); m_PartControls.Add(new PartControlInfo() { ID = ctrl.ID, ControlType = ctrl.PartType }); }
protected void btnAddMeasure_Click(object sender, EventArgs e) { KPIPartCtrlBase ctrl = AddKPIPartControl("measure", string.Empty); m_PartControls.Add(new PartControlInfo() { ID = ctrl.ID, ControlType = ctrl.PartType }); }
private KPIPartCtrlBase AddKPIPartControl(String type, String id) { if (String.IsNullOrWhiteSpace(type)) { return(null); } Control container = null; KPIPartCtrlBase ctrl = null; switch (type) { case "dimension": ctrl = LoadControl("~/App/Setting/wcKPIDimension.ascx") as KPIPartCtrlBase; container = tabPageDimensionsContainer; break; case "measure": ctrl = LoadControl("~/App/Setting/wcKPIMeasure.ascx") as KPIPartCtrlBase; container = measureContainer; break; case "context-normal": ctrl = this.LoadControl("~/App/Setting/wcKPIContextMetric.ascx") as KPIPartCtrlBase; container = kpiContextMetricContainer; break; case "context-calc": ctrl = this.LoadControl("~/App/Setting/wcKPIContextMetric_Calc.ascx") as KPIPartCtrlBase; container = kpiContextMetricContainer; break; case "filter-normal": ctrl = this.LoadControl("~/App/Setting/wcNormalFilter.ascx") as KPIPartCtrlBase; ctrl.PartType = "filter-normal"; container = kpiFilterContainer; break; case "filter-num": ctrl = this.LoadControl("~/App/Setting/wcNumFilter.ascx") as KPIPartCtrlBase; ctrl.PartType = "filter-num"; break; default: // date ctrl = this.LoadControl("~/App/Setting/wcTimeFilter.ascx") as KPIPartCtrlBase; ctrl.PartType = "filter-date"; break; } if (string.IsNullOrWhiteSpace(id)) { id = Guid.NewGuid().ToString(); } ctrl.ID = id; ctrl.OnRemove += new EventHandler(KPIPartControl_OnRemove); container.Controls.Add(ctrl); return(ctrl); }
private KPIPartCtrlBase Add_PartControl(string type, bool isReCreate) { if (string.IsNullOrEmpty(this.DSCode_Target)) { this.tabCtrl_PortletSetting.ActiveTabIndex = 0; return(null); } try { var guiID = Guid.NewGuid().ToString(); var ctrlID = string.Format("gen_{1}_{0}", guiID, type); var ctrlID_Store = string.Format("{0},{1}", ctrlID, type); KPIPartCtrlBase ctrl = null; Control ctrlContainer = null; if (isReCreate) { foreach (var iD_Type in this.CtrlKPIPartIDs) { var arr = iD_Type.Split(',', StringSplitOptions.RemoveEmptyEntries); ctrlID = arr.First(); var ctrlType = arr.Last(); if (ctrlType.StartsWith("dimension")) { ctrl = this.LoadControl("wcKPIDimension.ascx") as KPIPartCtrlBase; ctrlContainer = this.ctrl_Dimensions; } else if (ctrlType.StartsWith("measure")) { ctrl = this.LoadControl("wcKPIMeasure.ascx") as KPIPartCtrlBase; ctrlContainer = this.ctrl_Measures; } else if (ctrlType.StartsWith("context")) { var childCtrlType = ctrlType.Split('-', StringSplitOptions.RemoveEmptyEntries).LastOrDefault(); if (childCtrlType == "Normal") { ctrl = this.LoadControl("wcKPIContextMetric.ascx") as KPIPartCtrlBase; } else if (childCtrlType == "Calc") { ctrl = this.LoadControl("wcKPIContextMetric_Calc.ascx") as KPIPartCtrlBase; } ctrlContainer = this.ctrl_ContextMetric; } ctrl.ID = ctrlID; ctrl.OnRemove += this.PartCtrl_Remove; // Set datasource. var ds = this.Get_Datasource(); if (ds != null) { ctrl.Set_Source(ds); } ctrlContainer.Controls.Add(ctrl); } return(null); } if (string.IsNullOrEmpty(type)) { return(null); } if (type.StartsWith("dimension")) { ctrl = this.LoadControl("wcKPIDimension.ascx") as KPIPartCtrlBase; ctrlContainer = this.ctrl_Dimensions; } else if (type.StartsWith("measure")) { ctrl = this.LoadControl("wcKPIMeasure.ascx") as KPIPartCtrlBase; ctrlContainer = this.ctrl_Measures; } else if (type.StartsWith("context")) { var childType = type.Split('-', StringSplitOptions.RemoveEmptyEntries).LastOrDefault(); if (childType == "Normal") { ctrl = this.LoadControl("wcKPIContextMetric.ascx") as KPIPartCtrlBase; } else if (childType == "Calc") { ctrl = this.LoadControl("wcKPIContextMetric_Calc.ascx") as KPIPartCtrlBase; } ctrlContainer = this.ctrl_ContextMetric; } ctrl.ID = ctrlID; this.CtrlKPIPartIDs.Add(ctrlID_Store); ctrl.OnRemove += this.PartCtrl_Remove; // Set datasource. var ds1 = this.Get_Datasource(); if (ds1 != null) { ctrl.Set_Source(ds1); } ctrlContainer.Controls.Add(ctrl); return(ctrl); } catch { } return(null); }