/// <summary> /// 初始化 填值 没选择则填充默认值 /// </summary> private void InitData() { try { if (!string.IsNullOrEmpty(iemExceptUse.IemexUseId)) { //当前使用对象已存在该记录则选择相应值 支持手输文本 lookUpEditorIem.CodeValue = iemExceptUse.Value; if (string.IsNullOrEmpty(lookUpEditorIem.CodeValue)) { lookUpEditorIem.Text = iemExceptUse.Value; } } else { Dictionary <string, string> dicstr = DateElementEntity.GetDefaultValue(iemEntity.DateElement); if (dicstr == null) { return; } if (!dicstr.ContainsKey("IsDefault")) { return; } lookUpEditorIem.CodeValue = dicstr["IsDefault"]; } } catch (Exception ex) { throw ex; } }
/// <summary> /// 初始化数据 /// 有默认值则填充默认值 /// </summary> private void InitData() { try { if (!string.IsNullOrEmpty(myIemMainPageExceptUse.IemexUseId)) { this.Text = myIemMainPageExceptUse.Value; } else { Dictionary <string, string> dicStr = DateElementEntity.GetDataSource(iemExcept.DateElement); if (dicStr == null) { return; } //默认值 string defaultValue = dicStr["DefaultValue"]; this.Text = defaultValue; } } catch (Exception ex) { throw ex; } }
/// <summary> /// 初始化控件数据源 /// </summary> private void InitData() { try { Dictionary <string, string> dicstr = DateElementEntity.GetDataSource(iemExceptEntity.DateElement); if (dicstr == null) { return; } decimal minValue; /*最小值*/ decimal maxValue; /*最大值*/ decimal defaultValue; /*默认值*/ bool isMaxvalue = decimal.TryParse(dicstr["MaxValue"], out maxValue); bool isMinValue = decimal.TryParse(dicstr["MinValue"], out minValue); //转换失败则默认选择0 if (!decimal.TryParse(dicstr["DefaultValue"], out defaultValue)) { defaultValue = 0; } if (isMaxvalue && isMaxvalue) { spinEditIem.Properties.MaxValue = maxValue; spinEditIem.Properties.MinValue = minValue; } spinEditIem.Value = defaultValue; } catch (Exception ex) { throw ex; } }
/// <summary> /// 初始化 /// 没有填充值则填充数据元XML指定默认值 /// </summary> private void InitDefault() { try { Dictionary <string, string> dicstr = DateElementEntity.GetDataSource(iemExceptEntity.DateElement); if (dicstr == null) { return; } string defaultValue = dicstr["DefaultValue"]; this.memoEdit1.Text = defaultValue; } catch (Exception ex) { throw ex; } }
/// <summary> /// 初始化数据 /// </summary> private void InitData() { try { DataTable dataTable = DateElementEntity.GetDataSorce(iemMainExcept.DateElement); chkListBoxControlDX.Items.Clear(); foreach (DataRow row in dataTable.Rows) { CheckedListBoxItem chkListBoxItem = new CheckedListBoxItem(row, row["NAME"].ToString()); chkListBoxControlDX.Items.Add(chkListBoxItem); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 根据数据元类型返回相应的用户控件 /// </summary> /// <param name="iemExcept">扩展对象</param> /// <param name="dataEntity">数据元对象实体</param> /// <param name="iemMainPageExceptUse">扩展适用对象</param> /// <returns>对应用户控件</returns> public static UserControl CreateControl(IemMainPageExcept iemExcept, DateElementEntity dataEntity, IemMainPageExceptUse iemMainPageExceptUse) { try { if (dataEntity == null || string.IsNullOrEmpty(dataEntity.ElementId)) { return(null); } UserControl userControl = new UserControl(); string elementType = dataEntity.ElementType.ToUpper().Trim(); switch (elementType.ToLower()) { case "s1": /*普通文本*/ userControl = new UcText(iemExcept, iemMainPageExceptUse); break; case "s2": /*单选类型*/ case "s3": /*单选类型*/ userControl = new UcLookUpEdit(iemExcept, iemMainPageExceptUse); break; case "s4": /*大文本型*/ userControl = new UcMemoEdit(iemExcept, iemMainPageExceptUse); break; case "d": /*日期型*/ userControl = new UcDate(iemExcept, iemMainPageExceptUse); break; case "n": /*数值型*/ userControl = new UcSpinEdit(iemExcept, iemMainPageExceptUse); break; case "s9": /*多选型*/ userControl = new UcPopControl(iemExcept, iemMainPageExceptUse); break; } return(userControl); } catch (Exception ex) { throw ex; } }
/// <summary> /// 初始化下拉列表 /// </summary> /// <param name="dataElement"></param> private void InitLookUpEditor(DateElementEntity dataElement) { try { LookUpWindow lookUpWindow = new LookUpWindow(); lookUpEditorIem.Kind = WordbookKind.Sql; lookUpEditorIem.ListWindow = lookUpWindow; DataTable dt = DateElementEntity.GetDataSorce(dataElement); dt.Columns["ID"].Caption = "编号"; dt.Columns["NAME"].Caption = "名称"; Dictionary <string, int> colWidths = new Dictionary <string, int>(); colWidths.Add("ID", 40); colWidths.Add("NAME", 50); SqlWordbook wordBook = new SqlWordbook("ApplyEmployee", dt, "ID", "NAME", colWidths, "ID//NAME"); lookUpEditorIem.SqlWordbook = wordBook; } catch (Exception ex) { throw ex; } }
/// <summary> /// 抓取所有数据元 DataTable->Dictionary /// Add by xlb 2013-04-12 /// </summary> /// <returns></returns> public Dictionary <string, DateElementEntity> GetDataElement() { try { Dictionary <string, DateElementEntity> dateElement = new Dictionary <string, DateElementEntity>(); SqlParameter p_result = new SqlParameter("@result", SqlDbType.Structured); p_result.Direction = ParameterDirection.Output; SqlParameter[] sqlParams = new SqlParameter[] { new SqlParameter("@ElementId", SqlDbType.VarChar, 50), new SqlParameter("@ElementName", SqlDbType.VarChar, 50), new SqlParameter("@ElementClass", SqlDbType.VarChar, 50), new SqlParameter("@ElementPYM", SqlDbType.VarChar, 50), p_result }; sqlParams[0].Value = ""; sqlParams[1].Value = ""; sqlParams[2].Value = ""; sqlParams[3].Value = ""; DataTable dtData = DS_SqlHelper.ExecuteDataTable("EMR_CommonNote.usp_GetDateElement", sqlParams, CommandType.StoredProcedure); DataTable dtElementEntity = dtData.Clone(); foreach (DataRow row in dtData.Rows) { dtElementEntity.Rows.Clear(); dtElementEntity.Rows.Add(row.ItemArray); DateElementEntity dateElementEntity = DataTableToList <DateElementEntity> .ConvertToModelOne(dtElementEntity); dateElement.Add(row["ELEMENTFLOW"].ToString(), dateElementEntity); } return(dateElement); } catch (Exception ex) { throw ex; } }
/// <summary> /// 根据数据元取值范围返回数据集 /// 最大最小值默认值等 /// Add by xlb 2013-04-15 /// </summary> /// <param name="dataElement">数据元对象</param> /// <returns>数据字典集合</returns> public static Dictionary <string, string> GetDataSource(DateElementEntity dataElement) { try { if (dataElement == null || string.IsNullOrEmpty(dataElement.ElementRange)) { return(null); } Dictionary <string, string> dictData = new Dictionary <string, string>(); XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(dataElement.ElementRange); XmlNode xmlNodeMax = xmlDoc.SelectSingleNode("/ValueRange/MaxValue"); XmlNode xmlNodeMin = xmlDoc.SelectSingleNode("/ValueRange/MinValue"); XmlNode xmlNodeDef = xmlDoc.SelectSingleNode("/ValueRange/DefaultValue"); XmlNode xmlNodeStep = xmlDoc.SelectSingleNode("/ValueRange/StepValue"); if (xmlNodeMax != null) { dictData.Add("MaxValue", xmlNodeMax.InnerText); } if (xmlNodeMin != null) { dictData.Add("MinValue", xmlNodeMin.InnerText); } if (xmlNodeDef != null) { dictData.Add("DefaultValue", xmlNodeDef.InnerText); } if (xmlNodeStep != null) { dictData.Add("StepValue", xmlNodeStep.InnerText); } return(dictData); } catch (Exception ex) { throw ex; } }
/// <summary> /// 抓取数据元数据集合 /// </summary> /// <param name="dateEntiy"></param> public static DataTable GetDataSorce(DateElementEntity dateEntiy) { try { DataColumn dataColoumnId = new DataColumn("ID", typeof(string)); DataColumn dataColumnName = new DataColumn("NAME", typeof(string)); DataTable dataTable = new DataTable(); dataTable.Columns.Add(dataColoumnId); dataTable.Columns.Add(dataColumnName); if (string.IsNullOrEmpty(dateEntiy.ElementRange)) { return(dataTable); } XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(dateEntiy.ElementRange); XmlNodeList xmlNodeList = xmlDoc.SelectNodes("/ValueRange/Option"); if (xmlNodeList == null || xmlNodeList.Count <= 0) { return(dataTable); } foreach (XmlNode item in xmlNodeList) { DataRow dataRow = dataTable.NewRow(); dataRow["ID"] = item.Attributes["Id"].Value; dataRow["NAME"] = item.InnerText; dataTable.Rows.Add(dataRow); } return(dataTable); } catch (Exception ex) { throw ex; } }
/// <summary> /// 获取单选多选默认选项 /// </summary> /// <returns></returns> public static Dictionary <string, string> GetDefaultValue(DateElementEntity dateEntiy) { try { if (dateEntiy == null || string.IsNullOrEmpty(dateEntiy._ElementRange)) { return(null); } /*字典集合记录默认选项的ID和内容*/ Dictionary <string, string> dicstr = new Dictionary <string, string>(); XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(dateEntiy._ElementRange); XmlNodeList nodeList = xmlDoc.SelectNodes("/ValueRange/Option"); if (nodeList == null || nodeList.Count <= 0) { return(dicstr); } foreach (XmlNode xmlNode in nodeList) { if (xmlNode.Attributes["IsDefault"] != null && xmlNode.Attributes["IsDefault"].Value.ToUpper().Trim() == "TRUE") { /*避免维护单选数据源时添加了多项默认选项的情况*/ if (!dicstr.ContainsKey("IsDefault")) { dicstr.Add("IsDefault", xmlNode.Attributes["Id"].Value); } } } return(dicstr); } catch (Exception ex) { throw ex; } }
/// <summary> /// <auth>XLB</auth> /// <date>2013-04-10</date> /// 联动事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void repositoryItemSearchLookUpEdit1_EditValueChanged(object sender, EventArgs e) { try { SearchLookUpEdit searchLookUpEdit = sender as SearchLookUpEdit; DateElementEntity dataElementEntity = searchLookUpEdit.Properties.View.GetFocusedRow() as DateElementEntity; IemMainPageExcept iemMainPageExcept = gvMainPage.GetFocusedRow() as IemMainPageExcept; if (iemMainPageExcept == null || string.IsNullOrEmpty(iemMainPageExcept.IemExId)) { ELEMENTNAME.OptionsColumn.AllowEdit = true; } int count = sqlUtil.GetIsBeenUse(iemMainPageExcept.IemExId); if (count > 0) { ELEMENTNAME.OptionsColumn.AllowEdit = false; return; } else { ELEMENTNAME.OptionsColumn.AllowEdit = true; } if (dataElementEntity != null && iemMainPageExcept != null) { iemMainPageExcept.ElementType = dataElementEntity.ElementType; iemMainPageExcept.DateElementFlow = dataElementEntity.ElementFlow; iemMainPageExcept.DateElement = dataElementEntity; iemMainPageExcept.ElementName = dataElementEntity.ElementName; iemMainPageExcept.IemOtherName = dataElementEntity.ElementName; } } catch (Exception) { throw; } }