/// <summary> /// 콤보박스 초기화 - 공통코드를 사용하지 않는 콤보박스를 설정한다. /// </summary> private async void InitComboBoxInfo() { #region ++ 공통코드 사용하지 않는 콤보박스 설정 var strWrkPlanYmd = this.BaseClass.GetCalendarValue(this.deWrkPlanWmd); // 출고일자 // (공통코드 사용하지 않음) DataTable dtComboData = await Utility.HelperClass.GetSP_OPT_QPS_DATA_SET_LIST_INQ(strWrkPlanYmd); // 조회 데이터가 없는 경우 구문을 리턴한다. if (dtComboData.Rows.Count == 0) { this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); return; } // 콤보박스 설정을 위해 컬럼명을 변경한다. dtComboData = this.BaseClass.ModifyComboBoxColumnHeaderName(dtComboData); // DATA 그룹 데이터가 1개 컬럼으로 조회되기 때문에 콤보박스 설정을 위해 컬럼을 추가 생성한 후 데이터를 복사한다. dtComboData.Columns.Add("NAME", typeof(string)); for (int i = 0; i < dtComboData.Rows.Count; i++) { dtComboData.Rows[i]["NAME"] = dtComboData.Rows[i]["CODE"].ToString(); } this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); if (this.BaseClass.ComboBoxItemCount(this.cboDataSetID) > 0) { this.cboDataSetID.SelectedIndex = 0; } #endregion }
/// <summary> /// 콤보박스 바인딩 (센터코드) - 공통 콤보박스 사용하지 않음 /// </summary> private void BindingComboBoxCenter() { #region 중복 센터 정보를 필터링 하기 위해 GroupBy 처리한다. var query = from p in this.g_dtDatabaseConnectionInfo.AsEnumerable() group p by new { CNTR_CD = p.Field <string>("CNTR_CD"), CNTR_NM = p.Field <string>("CNTR_NM"), DB_TYPE = p.Field <string>("DB_CONN_TYPE") } into q where q.Key.DB_TYPE.Equals(this.g_strConfigDBConnectType) select new { CODE = q.Key.CNTR_CD, NAME = q.Key.CNTR_NM, DB_CONN_TYPE = q.Key.DB_TYPE }; #endregion // 콤보박스 바인딩을 위해 데이터를 저장하기 위한 데이터테이블 DataTable dtNewTable = null; // 데이터테이블 스키마를 정의한다. (공통코드 형식) dtNewTable = this.BaseClass.CreateDataTableSchema(dtNewTable, BaseEnumClass.CreateTableSchemaKind.COMMON_CODE); // GroupBy 처리한 데이터를 데이터 테이블에 저장한다. foreach (var itemCenterInfo in query) { var aaa = itemCenterInfo.CODE; var bbb = itemCenterInfo.NAME; DataRow drNewRow = dtNewTable.NewRow(); drNewRow["CODE"] = itemCenterInfo.CODE; drNewRow["NAME"] = itemCenterInfo.NAME; dtNewTable.Rows.Add(drNewRow); } // 데이터테이블에 저장한 센터정보를 콤보박스 바인딩을 위해 List형식으로 저장한다. var liComboBoxInfo = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtNewTable); // 센터 정보를 콤보박스에 바인딩한다. this.cboCenter.ItemsSource = liComboBoxInfo; // 바인딩 데이터가 있는 경우 첫번째 Row를 선택하도록 한다. if (liComboBoxInfo.Count > 0) { if (this.BaseClass.LoginCenterCD.Length > 0) { this.cboCenter.SelectedIndex = this.BaseClass.MatchComboIndex(this.cboCenter, this.BaseClass.LoginCenterCD); } else { this.cboCenter.SelectedIndex = 0; } } }
public CommonCodeExtensions(string _strCommonCode, string[] _arrComboBoxInputParam, bool _isfirstRowEmpty) { if (_strCommonCode.Length > 0) { var dtComboBoxInfo = SMART.WCS.Common.Control.CommonComboBox.GetCommonData(_strCommonCode, _arrComboBoxInputParam, _isfirstRowEmpty); if (dtComboBoxInfo != null && dtComboBoxInfo.Rows.Count > 0) { this.AddRange(ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboBoxInfo)); } } }
//public CommonCodeExtensions(CodeType codeType, bool isAlltypeCodeAdd) //{ // this.IsAllTypeCodeAdd = isAlltypeCodeAdd; // this.CommonCodeType = codeType; // GetList(); //} //public CommonCodeExtensions(CodeType codeType, bool isAlltypeCodeAdd, string callType) //{ // this.IsAllTypeCodeAdd = isAlltypeCodeAdd; // this.CommonCodeType = codeType; // GetList(callType, String.Empty, string.Empty, string.Empty, string.Empty); // /* // using (BaseClass baseclass = new BaseClass()) // { // this.AddRange(baseclass.GetComboBoxListItem( // callType // , attr1 // , attr2 // , attr3 // , IsAllTypeCodeAdd // , "ALL" // , (Application.Current as BaseApp).BASE_INFO.country_cd // , _CenterCd // )); // } // */ //} //public CommonCodeExtensions(CodeType codeType, bool isAlltypeCodeAdd, string callType, string attr1, string attr2, string attr3, string attr4) //{ // this.IsAllTypeCodeAdd = isAlltypeCodeAdd; // this.CommonCodeType = codeType; // GetList(callType, attr1, attr2, attr3, attr4); // /* // using (BaseClass baseclass = new BaseClass()) // { // this.AddRange(baseclass.GetComboBoxListItem( // callType // , attr1 // , attr2 // , attr3 // , IsAllTypeCodeAdd // , "ALL" // , (Application.Current as BaseApp).BASE_INFO.country_cd // , _CenterCd // )); // } // */ //} #region CommonCodeExtensions - XAML단 공통코드 설정 - 파라메터에 공통코드만 있는 경우 /// <summary> /// XAML단 공통코드 설정 - 파라메터에 공통코드만 있는 경우 /// </summary> /// <param name="_strCommonCode"></param> public CommonCodeExtensions(string _strCommonCode) { if (_strCommonCode.Length > 0) { var dtComboBoxInfo = SMART.WCS.Common.Control.CommonComboBox.GetFirstCommonData(_strCommonCode); if (dtComboBoxInfo != null && dtComboBoxInfo.Rows.Count > 0) { this.AddRange(ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboBoxInfo)); } } }
/// <summary> /// 콤보박스 바인딩 (센터코드) /// </summary> private void BindingComboBoxLangInfo() { try { DataTable dtCommonData = CommonComboBox.GetFirstCommonData("LANG"); var liComboBoxInfo = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtCommonData); this.cboLang.ItemsSource = liComboBoxInfo; if (dtCommonData.Rows.Count > 0) { this.cboLang.SelectedIndex = 0; } } catch { throw; } }
/// <summary> /// Data Set 콤보박스 변경 이벤트 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void CboDataSetID_SelectedIndexChanged(object sender, RoutedEventArgs e) { var strWrkPlanYmd = this.BaseClass.GetCalendarValue(this.deWrkPlanWmd); // 출고일자 var iSelectedValue = this.BaseClass.ComboBoxSelectedKeyValue(this.cboDataSetID); // 데이터 그룹 선택값 DataTable dtComboData = await Utility.HelperClass.GetSP_OPT_QPS_ROC_SEQ_LIST_INQ(strWrkPlanYmd, iSelectedValue); // 조회 데이터가 없는 경우 구문을 리턴한다. if (dtComboData.Rows.Count == 0) { this.cboRocOptSeq.ItemsSource = null; return; } dtComboData = this.BaseClass.ModifyComboBoxColumnHeaderName(dtComboData); this.cboRocOptSeq.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); this.cboRocOptSeq.SelectedIndex = 0; }
/// <summary> /// Data Set 콤보박스 변경 이벤트 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void CboOptCD_SelectedIndexChanged(object sender, RoutedEventArgs e) { Init_InputData(); if (cboOptCD.SelectedIndex == 0) { //콤보박스 선택이 표준일 경우 날짜와 DataSetID는 비활성화, 저장버튼 활성화, DataSetID STANDARD로 고정 DataTable dtComboData = new DataTable(); dtComboData.Columns.Add("CODE", typeof(string)); dtComboData.Columns.Add("NAME", typeof(string)); DataRow drComboData = dtComboData.NewRow(); drComboData["CODE"] = "STANDARD"; drComboData["NAME"] = "STANDARD"; dtComboData.Rows.Add(drComboData); this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); this.cboDataSetID.SelectedIndex = 0; this.deWrkPlanWmd.IsEnabled = false; this.cboDataSetID.IsEnabled = false; this.btnSave.IsEnabled = true; this.txtBtchDivLim.IsEnabled = true; this.cboLocBal.IsEnabled = true; this.cboSortMode.IsEnabled = true; this.txtSupBtchDivCnt.IsEnabled = true; this.txtMinSupSkuUnit.IsEnabled = true; this.cboLocBtchInfo.IsEnabled = true; this.cboSkuCelType.IsEnabled = true; } else { //콤보박스 선택이 표준이 아닐 경우 날짜 선택/DataSetID콤보박스 활성화, 저장버튼 비활성화 //날짜 변경 시 이벤트 추가 및 실행 this.deWrkPlanWmd.IsEnabled = true; this.cboDataSetID.IsEnabled = true; this.btnSave.IsEnabled = false; deWrkPlanWmd.EditValueChanged += DeWrkPlanWmd_EditValueChanged; DeWrkPlanWmd_EditValueChanged(null, null); this.txtBtchDivLim.IsEnabled = false; this.cboLocBal.IsEnabled = false; this.cboSortMode.IsEnabled = false; this.txtSupBtchDivCnt.IsEnabled = false; this.txtMinSupSkuUnit.IsEnabled = false; this.cboLocBtchInfo.IsEnabled = false; this.cboSkuCelType.IsEnabled = false; } }
/// <summary> /// ROC 최적화 차수 콤보박스 변경 이벤트 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void CboRocOptSeq_SelectedIndexChanged(object sender, RoutedEventArgs e) { var strWrkPlanYmd = this.BaseClass.GetCalendarValue(this.deWrkPlanWmd); // 출고일자 var strSelectedDataSetID = this.BaseClass.ComboBoxSelectedKeyValue(this.cboDataSetID); // 데이터 그룹 ID var iRocOptSeq = Convert.ToInt32(this.BaseClass.ComboBoxSelectedKeyValue(this.cboRocOptSeq)); // ROC 최적화 코드 DataTable dtComboData = await Utility.HelperClass.GetSP_OPT_QPS_CELL_OPT_LIST_INQ(strWrkPlanYmd, strSelectedDataSetID, "CELL_SIMUL", iRocOptSeq); // 조회 데이터가 없는 경우 구문을 리턴한다. if (dtComboData.Rows.Count == 0) { this.cboCellOptSeq.ItemsSource = null; return; } dtComboData = this.BaseClass.ModifyComboBoxColumnHeaderName(dtComboData); this.cboCellOptSeq.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); this.cboCellOptSeq.SelectedIndex = 0; }
/// <summary> /// 콤보박스 초기화 - 공통코드를 사용하지 않는 콤보박스를 설정한다. /// </summary> private async void InitComboBoxInfo() { #region ++ 공통코드 사용하지 않는 콤보박스 설정 var strWrkPlanYmd = this.BaseClass.GetCalendarValue(this.deWrkPlanWmd); // 출고일자 // (공통코드 사용하지 않음) DataTable dtComboData = await Utility.HelperClass.GetSP_OPT_QPS_DATA_SET_LIST_INQ(strWrkPlanYmd); // 조회 데이터가 없는 경우 구문을 리턴한다. if (dtComboData.Rows.Count == 0) { // DATA 그룹 데이터가 없는 경우 (콤보박스 설정이 안되는 경우) 셀 시뮬레이션 버튼을 비활성화한다. this.BaseClass.SetSimpleButtonIsEnabled(this.btnCellOpti, false); this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); this.cboRocOptSeq.ItemsSource = null; this.cboCellOptSeq.ItemsSource = null; return; } // 콤보박스 설정을 위해 컬럼명을 변경한다. dtComboData = this.BaseClass.ModifyComboBoxColumnHeaderName(dtComboData); // DATA 그룹 데이터가 1개 컬럼으로 조회되기 때문에 콤보박스 설정을 위해 컬럼을 추가 생성한 후 데이터를 복사한다. dtComboData.Columns.Add("NAME", typeof(string)); foreach (DataRow drRow in dtComboData.Rows) { drRow["NAME"] = drRow["CODE"]; } this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); this.cboDataSetID.SelectedIndexChanged -= CboDataSetID_SelectedIndexChanged; this.cboDataSetID.SelectedIndex = 0; this.cboDataSetID.SelectedIndexChanged += CboDataSetID_SelectedIndexChanged; // DATA 그룹 데이터가 있는 경우 (콤보박스 설정이 된 경우) ROC 수행 버튼을 활성화한다. this.BaseClass.SetSimpleButtonIsEnabled(this.btnCellOpti, true); this.CboDataSetID_SelectedIndexChanged(null, null); #endregion }
/// <summary> /// 콤보박스 바인딩 (센터코드) /// </summary> private void BindingComboBoxCenterInfo() { try { DataTable dtCenterInfo = this.GetDatabaseConnectionInfo(); var query = from p in dtCenterInfo.AsEnumerable() group p by new { CNTR_CD = p.Field <string>("CNTR_CD"), CNTR_NM = p.Field <string>("CNTR_NM"), DB_CONN_TYPE = p.Field <string>("DB_CONN_TYPE") } into q where q.Key.DB_CONN_TYPE.Equals("DEV") select new { CODE = q.Key.CNTR_CD, NAME = q.Key.CNTR_NM, }; DataTable dtNewTable = new DataTable(); dtNewTable.Columns.Add("CODE", typeof(string)); dtNewTable.Columns.Add("NAME", typeof(string)); foreach (var itemCenterInfo in query) { DataRow drNewRow = dtNewTable.NewRow(); drNewRow["CODE"] = itemCenterInfo.CODE; drNewRow["NAME"] = itemCenterInfo.NAME; dtNewTable.Rows.Add(drNewRow); } var liComboBoxInfo = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtNewTable); this.cboCenter.ItemsSource = liComboBoxInfo; if (dtNewTable.Rows.Count > 0) { this.cboCenter.SelectedIndex = 0; } } catch { throw; } }
/// <summary> /// 달력 컨트롤 변경 이벤트 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void DeWrkPlanWmd_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e) { var strWrkPlanYmd = this.BaseClass.GetCalendarValue(this.deWrkPlanWmd); // 출고일자 DataTable dtComboData = await Utility.HelperClass.GetSP_OPT_QPS_DATA_SET_LIST_INQ(strWrkPlanYmd); // 조회 데이터가 없는 경우 구문을 리턴한다. if (dtComboData.Rows.Count == 0) { this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); return; } // 콤보박스 설정을 위해 컬럼명을 변경한다. dtComboData = this.BaseClass.ModifyComboBoxColumnHeaderName(dtComboData); // DATA 그룹 데이터가 1개 컬럼으로 조회되기 때문에 콤보박스 설정을 위해 컬럼을 추가 생성한 후 데이터를 복사한다. dtComboData.Columns.Add("NAME", typeof(string)); for (int i = 0; i < dtComboData.Rows.Count; i++) { dtComboData.Rows[i]["NAME"] = dtComboData.Rows[i]["CODE"].ToString(); } this.cboDataSetID.ItemsSource = ConvertDataTableToList.DataTableToList <ComboBoxInfo>(dtComboData); }
// PK_C1022_GAN.SP_CELL_MST_SEARCH private void GetSP_CELL_MST_SEARCH() { #region 라메터 변수 선언 및 값 할당 DataTable dtRtnValue = null; var strProcedureName = "PK_C1022_GAN.SP_CELL_MST_SEARCH"; Dictionary <string, object> dicInputParam = new Dictionary <string, object>(); string[] arrOutputParam = { "O_LIST", "OUT_RESULT" }; var strCoCd = this.BaseClass.CompanyCode; // 회사 코드 var strCntrCd = this.BaseClass.CenterCD; // 센터 코드 var strEqpId = this.EqpId; var strCellTypeId = string.Empty; var strCellId = this.SelectCellId; var strErrCode = string.Empty; // 오류 코드 var strErrMsg = string.Empty; // 오류 메세지 #endregion #region Input 파라메터 dicInputParam.Add("P_CO_CD", strCoCd); // 회사 코드 dicInputParam.Add("P_CNTR_CD", strCntrCd); // 센터 코드 dicInputParam.Add("P_EQP_ID", strEqpId); // 설비 ID dicInputParam.Add("P_CELL_TYPE_CD", strCellTypeId); // 셀타입 ID dicInputParam.Add("P_CELL_ID", strCellId); // 셀 ID #endregion #region 데이터 조회 using (BaseDataAccess dataAccess = new BaseDataAccess()) { dtRtnValue = dataAccess.GetSpDataTable(strProcedureName, dicInputParam, arrOutputParam); } #endregion if (dtRtnValue != null) { // CO_CD // CNTR_CD // EQP_ID // CELL_ID // COL_NO // ROW_NO // POS_X // POS_Y // P1_ACCS_YN // P2_ACCS_YN // CELL_TYPE_CD // CELL_TYPE_NM // MAX_CELL_HGT // USE_YN this.SelectCellInfo = (ConvertDataTableToList.DataTableToList <CellMstInfo>(dtRtnValue)).FirstOrDefault(); //txtCellId.Text = dtRtnValue.Rows[0]["CELL_ID"].ToString(); //txtCellType.Text = dtRtnValue.Rows[0]["CELL_TYPE_NM"].ToString(); //txtPosX.Text = dtRtnValue.Rows[0]["POS_X"].ToString(); //txtPosY.Text = dtRtnValue.Rows[0]["POS_Y"].ToString(); //txtP1AccsYn.Text = dtRtnValue.Rows[0]["P1_ACCS_YN"].ToString(); //txtP2AccsYn.Text = dtRtnValue.Rows[0]["P2_ACCS_YN"].ToString(); //txtUseYn.Text = dtRtnValue.Rows[0]["USE_YN"].ToString(); //txtMaxCellHgt.Text = dtRtnValue.Rows[0]["MAX_CELL_HGT"].ToString(); } else { this.SelectCellInfo = null; //txtCellId.Text = string.Empty; //txtCellType.Text = string.Empty; //txtPosX.Text = string.Empty; //txtPosY.Text = string.Empty; //txtP1AccsYn.Text = string.Empty; //txtP2AccsYn.Text = string.Empty; //txtUseYn.Text = string.Empty; //txtMaxCellHgt.Text = string.Empty; } }