private static void View_ShowingEditor(object sender, ShowingEditorEventArgs e) { if (g_IsAuthAllYN == false) { e.Cancel = true; return; } TableView tv = sender as TableView; if (tv.Name.Equals("tvMasterGrid") == true) { EquipmentMgnt dataMember = tv.Grid.CurrentItem as EquipmentMgnt; if (dataMember == null) { return; } switch (e.Column.FieldName) { // 컬럼이 행추가 상태 (신규 Row 추가)가 아닌 경우 // 설비 ID, 설비 명 컬럼은 수정이 되지 않도록 처리한다. case "EQP_ID": if (dataMember.IsNew == false) { e.Cancel = true; } break; default: break; } } }
private void BtnRowAdd_First_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { var newItem = new EquipmentMgnt { EQP_ID = string.Empty, EQP_NM = string.Empty, EQP_DESC = string.Empty, EQP_TYPE_CD = "SRT", LINK_EQP_ID = string.Empty, LOC_CD = string.Empty, USE_YN = "Y", /* * PC_IP = string.Empty, * ECS_COMM_NO = string.Empty, * SER_COMM_NO = string.Empty, * RECIRC_CNT = string.Empty, * ZONE_ID = string.Empty, */ PCL_DTM_CD = string.Empty, // Parcel 결정 PCL_DTM_PROR_CD = string.Empty, // parcel 결정 우선순위 CHUTE_OPR_CD = string.Empty, // 슈트운영코드 IsSelected = true, IsNew = true, IsSaved = false }; this.EquipmentMgntList.Add(newItem); this.gridMaster.Focus(); this.gridMaster.CurrentColumn = this.gridMaster.Columns.First(); this.gridMaster.View.FocusedRowHandle = this.EquipmentMgntList.Count - 1; this.EquipmentMgntList[this.EquipmentMgntList.Count - 1].BackgroundBrush = new SolidColorBrush(Colors.White); this.EquipmentMgntList[this.EquipmentMgntList.Count - 1].BaseBackgroundBrush = new SolidColorBrush(Colors.White); //var aaa = this.tvMasterGrid_First.FocusedRowHandle; }
private void BtnRowAdd_First_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { var newItem = new EquipmentMgnt { EQP_ID = string.Empty, EQP_NM = string.Empty, EQP_DESC = string.Empty, EQP_TYPE_CD = string.Empty, LINK_EQP_ID = string.Empty, LOC_CD = string.Empty, USE_YN = "Y", PC_IP = string.Empty, ECS_COMM_NO = string.Empty, SER_COMM_NO = string.Empty, RECIRC_CNT = 0, ZONE_ID = string.Empty, MAX_READ_CNT = 0, MAX_RECIRCULATION = 0, MAX_SCAN_CNT = 0, IS_RUN_YN = "N", SORT_PLN_CD = string.Empty, IsSelected = true, IsNew = true, IsSaved = false }; this.EquipmentMgntList.Add(newItem); this.gridMaster.Focus(); this.gridMaster.CurrentColumn = this.gridMaster.Columns.First(); this.gridMaster.View.FocusedRowHandle = this.EquipmentMgntList.Count - 1; this.EquipmentMgntList[this.EquipmentMgntList.Count - 1].BackgroundBrush = new SolidColorBrush(Colors.White); this.EquipmentMgntList[this.EquipmentMgntList.Count - 1].BaseBackgroundBrush = new SolidColorBrush(Colors.White); //var aaa = this.tvMasterGrid_First.FocusedRowHandle; }
/// <summary> /// Equipment 수정 /// </summary> /// <param name="_da">DataAccess 객체</param> /// <param name="_item">저장 대상 아이템 (Row 데이터)</param> /// <returns></returns> private bool UpdateSP_EQP_UPD(BaseDataAccess _da, EquipmentMgnt _item) { bool isRtnValue = true; #region 라메터 변수 선언 및 값 할당 DataTable dtRtnValue = null; var strProcedureName = "PK_C1014.SP_EQP_UPD"; Dictionary <string, object> dicInputParam = new Dictionary <string, object>(); string[] arrOutputParam = { "O_RSLT" }; var strCoCd = BaseClass.CompanyCode; // 회사 코드 var strCntrCd = BaseClass.CenterCD; // 센터 코드 var strEqpID = _item.EQP_ID; // 설비 ID var strEqpNm = _item.EQP_NM; // 설비 명 var strEqpDesc = _item.EQP_DESC; // 설비 세부 정보 var strEqpTypeCd = _item.EQP_TYPE_CD; // 설비 종류 코드 var strLinkEqpId = _item.LINK_EQP_ID; // 연결설비ID var strLocCd = _item.LOC_CD; // 위치 코드 var iRecircCnt = this.BaseClass.CenterCD.Equals("BC") ? 0 : Convert.ToInt32(_item.RECIRC_CNT); /* * var strPcIp = _item.PC_IP; // 설비랑 통신하는 PC IP * var strEcsCommNo = _item.ECS_COMM_NO; // 설비 ECS 통신 번호 * var strSerCommNo = _item.SER_COMM_NO; // 시리얼 통신 번호 * var strRecircCnt = _item.RECIRC_CNT; // 순환횟수 * var strZoneId = _item.ZONE_ID; // ZONE ID // 문자속성 10 */ var strPclDtmCD = _item.PCL_DTM_CD; // Parcel 결정 var strPclDtmProrCD = _item.PCL_DTM_PROR_CD; // Parcel 결정 우선순위 var strChuteOprCD = _item.CHUTE_OPR_CD; // 슈트운영코드 var strUseYN = _item.Checked == true ? "Y" : "N"; // 사용 여부 var strUserID = this.BaseClass.UserID; // 사용자 ID 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_EQP_NM", strEqpNm); // 설비 명 dicInputParam.Add("P_EQP_DESC", strEqpDesc); // 설비 세부 정보 dicInputParam.Add("P_EQP_TYPE_CD", strEqpTypeCd); // 설비 종류 코드 dicInputParam.Add("P_LINK_EQP_ID", strLinkEqpId); // 연결설비ID dicInputParam.Add("P_LOC_CD", string.IsNullOrEmpty(strLocCd)); // 위치 코드 dicInputParam.Add("P_RECIRC_CNT", iRecircCnt); // 순환횟수 /* * dicInputParam.Add("P_ECS_PC_IP", strPcIp); // 설비랑 통신하는 PC IP * dicInputParam.Add("P_ECS_COMM_NO", strEcsCommNo); // 설비 ECS 통신 번호 * dicInputParam.Add("P_SER_COMM_NO", strSerCommNo); // 시리얼 통신 번호 * dicInputParam.Add("P_RECIRC_CNT", strRecircCnt); // 순환횟수 * dicInputParam.Add("P_ZONE", strZoneId); // ZONE ID */ dicInputParam.Add("P_USE_YN", strUseYN); // 사용 여부 dicInputParam.Add("P_USER_ID", strUserID); // 사용자 ID dicInputParam.Add("P_PCL_DTM_CD", strPclDtmCD); // Parcel 결정 dicInputParam.Add("P_PCL_DTM_PROR_CD", strPclDtmProrCD); // parcel 결정 우선순위 dicInputParam.Add("P_CHUTE_OPR_CD", strChuteOprCD); // 슈트운영코드 #endregion dtRtnValue = _da.GetSpDataTable(strProcedureName, dicInputParam, arrOutputParam); if (dtRtnValue != null) { if (dtRtnValue.Rows.Count > 0) { if (dtRtnValue.Rows[0]["CODE"].ToString().Equals("0") == false) { BaseClass.MsgInfo(dtRtnValue.Rows[0]["MSG"].ToString(), BaseEnumClass.CodeMessage.MESSAGE); isRtnValue = false; } } else { BaseClass.MsgError("ERR_SAVE"); isRtnValue = false; } } return(isRtnValue); }
/// <summary> /// Equipment 수정 /// </summary> /// <param name="_da">DataAccess 객체</param> /// <param name="_item">저장 대상 아이템 (Row 데이터)</param> /// <returns></returns> private async Task <bool> UpdateSP_EQP_UPD(BaseDataAccess _da, EquipmentMgnt _item) { bool isRtnValue = true; #region 라메터 변수 선언 및 값 할당 DataTable dtRtnValue = null; var strProcedureName = "UI_EQIP_MST_UPD"; Dictionary <string, object> dicInputParam = new Dictionary <string, object>(); Dictionary <object, BaseEnumClass.MSSqlOutputDataType> dicOutPutParam = new Dictionary <object, BaseEnumClass.MSSqlOutputDataType>(); Dictionary <object, object> dicRtnValue = new Dictionary <object, object>(); var strEqpID = _item.EQP_ID; // 설비 ID var strEqpNm = _item.EQP_NM; // 설비 명 var strEqpDesc = _item.EQP_DESC; // 설비 세부 정보 var strEqpTypeCd = _item.EQP_TYPE_CD; // 설비 종류 var strLinkEqpId = _item.LINK_EQP_ID; // 연결설비ID var strLocCd = _item.LOC_CD; // 위치 코드 var strPcIp = _item.PC_IP; // 설비랑 통신하는 PC IP var strEcsCommNo = _item.ECS_COMM_NO; // 설비 ECS 통신 번호 var strSerCommNo = _item.SER_COMM_NO; // 시리얼 통신 번호 var intRecircCnt = _item.RECIRC_CNT; // 순환횟수 var strZoneId = _item.ZONE_ID; // ZONE ID var strUseYN = _item.Checked == true ? "Y" : "N"; // 사용 여부 var intMaxReadCnt = _item.MAX_READ_CNT; // 최대 리딩 횟수 var intMaxRecirculation = _item.MAX_RECIRCULATION; // 최대 회전 횟수 var intMaxScanCnt = _item.MAX_SCAN_CNT; // 최대 바코드 인식 수 var strIsRunYn = _item.IS_RUN_YN; // 운영상태 var strSortPlnCd = _item.SORT_PLN_CD; // 플랜코드 var strUserID = this.BaseClass.UserID; // 사용자 ID #endregion #region Input 파라메터 dicInputParam.Add("EQP_ID", strEqpID); // 설비 ID dicInputParam.Add("EQP_NM", strEqpNm); // 설비 명 dicInputParam.Add("EQP_DESC", strEqpDesc); // 설비 세부 정보 dicInputParam.Add("EQP_TYPE_CD", strEqpTypeCd); // 설비 종류 dicInputParam.Add("LINK_EQP_ID", strLinkEqpId); // 연결설비ID dicInputParam.Add("LOC_CD", strLocCd); // 위치 코드 dicInputParam.Add("PC_IP", strPcIp); // 설비랑 통신하는 PC IP dicInputParam.Add("ECS_COMM_NO", strEcsCommNo); // 설비 ECS 통신 번호 dicInputParam.Add("SER_COMM_NO", strSerCommNo); // 시리얼 통신 번호 dicInputParam.Add("RECIRC_CNT", intRecircCnt); // 순환횟수 dicInputParam.Add("ZONE_ID", strZoneId); // ZONE ID dicInputParam.Add("USE_YN", strUseYN); // 사용 여부 dicInputParam.Add("MAX_READ_CNT", intMaxReadCnt); // 최대 리딩 횟수 dicInputParam.Add("MAX_RECIRCULATION", intMaxRecirculation); // 최대 회전 횟수 dicInputParam.Add("MAX_SCAN_CNT", intMaxScanCnt); // 최대 바코드 인식 수 dicInputParam.Add("IS_RUN_YN", strIsRunYn); // 운영상태 dicInputParam.Add("SORT_PLN_CD", strSortPlnCd); // 플랜코드 dicInputParam.Add("P_USER_ID", strUserID); // 사용자 ID #endregion #region + Output 파라메터 dicOutPutParam.Add("RTN_VAL", BaseEnumClass.MSSqlOutputDataType.INT32); dicOutPutParam.Add("RTN_MSG", BaseEnumClass.MSSqlOutputDataType.VARCHAR); #endregion #region + 데이터 조회 await System.Threading.Tasks.Task.Run(() => { dtRtnValue = _da.GetSpDataTable(strProcedureName, dicInputParam, dicOutPutParam, ref dicRtnValue); }).ConfigureAwait(true); #endregion if (dicRtnValue["RTN_VAL"].ToString().Equals("0") == false) { var strMessage = dicRtnValue["RTN_MSG"].ToString(); this.BaseClass.MsgError(strMessage, BaseEnumClass.CodeMessage.MESSAGE); isRtnValue = false; } return(isRtnValue); }