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; } }
public void Set_DataSource(lsttbl_DashboardSource ds) { try { this.Reset_Info(); if (ds == null) { return; } if (ds.SettingCat == GlobalVar.SettingCat_DS) { var obj = ds.JsonObjMDX; var dsUnion = obj.Fields.Union(obj.Summaries.Select(p => p.Field)).Distinct(); Helpers.SetDataSource(this.cboField, dsUnion, "ColName", "ColAliasVI", this.cboField.Value); this.txtVisibleIndex.Text = (GlobalSsn.WidgetGrid_SsnModel.Columns.Count + 1).ToString(); } else if (ds.SettingCat == GlobalVar.SettingCat_KPI) { var obj = ds.JsonObjKPI; var dsX = obj.Dimensions.Select(p => new COMCodeNameObj(p.FieldName, p.DisplayName)).ToList(); var dsY = obj.Get_SummaryFields(); var dsUnion = dsX.Union(dsY); Helpers.SetDataSource(this.cboField, dsUnion, "Code", "Name", this.cboField.Value); this.txtVisibleIndex.Text = (GlobalSsn.WidgetGrid_SsnModel.Columns.Count + 1).ToString(); } } catch { } }
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 cbp_Callback(object sender, DevExpress.Web.ASPxClasses.CallbackEventArgsBase e) { try { var cbp = sender as ASPxCallbackPanel; if (cbp == null) { return; } if (cbp.ID == this.cbpPreViewSQL.ID || cbp.ID == this.cbpSavingMsg.ID) { var objSett = this.Get_DefineInfo(); if (objSett == null) { return; } if (cbp.ID == this.cbpPreViewSQL.ID) { var inqObj = objSett.ReFilter_InqMDX(); this.Set_PreViewMDX(inqObj.ToMDX(true)); } else if (cbp.ID == this.cbpSavingMsg.ID) { var actionName = Lib.IsNOE(MySession.KPIDefine_CurEditing) ? "Add new " : "Update "; try { // Gọi hàm save var obj = new lsttbl_DashboardSource() { Code = Lib.IfNOE(MySession.KPIDefine_CurEditing, "kpi_" + DateTime.Now.ToString("yyyyMMddHHmmss")), ParentCode = objSett.DatasourceID, JsonStr = objSett.ToJsonStr(), NameVI = this.txtKPIDisplayName.Text, NameEN = this.txtKPIDisplayName.Text, WHCode = this.WHCode, SettingCat = GlobalVar.SettingCat_KPI }; MyBI.Me.Save_DashboardSource(obj); MySession.KPIDefine_CurEditing = obj.Code; } catch { this.Set_SaveMsgText(string.Format("{0} failed!", actionName), true); } // Gửi trạng thái về client; this.Set_SaveMsgText(string.Format("{0} success!", actionName), false); } } else if (cbp.ID == this.cbp_Header.ID) { if (!string.IsNullOrEmpty(MySession.KPIDefine_CurEditing)) { var kpis = MyBI.Me.Get_DashboardKPI_ByWH(this.WHCode).ToList(); Helpers.SetDataSource(this.cboKPI, kpis, "Code", "NameVI", MySession.KPIDefine_CurEditing); this.cboKPI.Enabled = true; this.TrDataSource.Visible = false; } } } catch { } }
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); } }
protected void cbp_Callback(object sender, DevExpress.Web.ASPxClasses.CallbackEventArgsBase e) { var cbp = sender as ASPxCallbackPanel; if (cbp == null) { return; } var inq = this.Get_DefineSource(); if (cbp.ID == this.cbpPreViewSQL.ID) { this.Set_PreViewMDX(inq.ToMDX(true)); } else if (cbp.ID == this.cbpSavingMsg.ID) { var actionName = string.IsNullOrEmpty(MySession.DSDefine_CurEditing) ? "Add new " : "Update "; try { // Gọi hàm save var objDs = new lsttbl_DashboardSource() { Code = Lib.IfNOE(MySession.DSDefine_CurEditing, "ds_" + DateTime.Now.ToString("yyyyMMddHHmmss")), NameVI = this.txtDisplayNameDS.Text, NameEN = this.txtDisplayNameDS.Text, JsonStr = inq.ToJsonStr(), WHCode = Lib.NTE(this.cboDataDW.Value), SettingCat = GlobalVar.SettingCat_DS }; MyBI.Me.Save_DashboardSource(objDs); MySession.DSDefine_CurEditing = objDs.Code; } catch { this.Set_SaveMsgText(string.Format("{0} failed!", actionName), true); } // Gửi trạng thái về client; this.Set_SaveMsgText(string.Format("{0} success!", actionName), false); } else if (cbp.ID == this.cbp_Header.ID) { if (!string.IsNullOrEmpty(MySession.DSDefine_CurEditing)) { var ds = MyBI.Me.Get_DashboardSource(this.WHCode, GlobalVar.SettingCat_DS).ToList(); Helpers.SetDataSource(this.cboDatasource, ds, "Code", "NameVI", MySession.DSDefine_CurEditing); } } }
public void Save_DashboardSource(lsttbl_DashboardSource info) { var db = GlobalVar.DbBI; try { var objFound = db.lsttbl_DashboardSources.FirstOrDefault(p => p.Code == info.Code); if (objFound == null) { db.lsttbl_DashboardSources.InsertOnSubmit(info); } else { objFound.UpdateOnSubmit(info); } db.SubmitChanges(); } catch { } }