protected void gvToolList_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { CurrentToolData = AllTools[gvToolList.Rows[e.RowIndex].DataItemIndex]; if (CurrentToolData.ActiveFlag == "T") //ActiveFlag的判斷,若曾經啟用過則不可刪除 { throw new Exception(TextMessage.Error.T00714()); } using (CimesTransactionScope cts = CimesTransactionScope.Create()) { CurrentToolData.DeleteFromDB(); AttributeAttributeInfo.DeleteByObjectSIDAndDataClass(CurrentToolData.ID, "ToolAttribute", this.User.Identity.Name, DBCenter.GetSystemTime()); LogCenter.LogToDB(CurrentToolData, LogCenter.LogIndicator.Create(ActionType.Remove, User.Identity.Name, DBCenter.GetSystemTime())); cts.Complete(); } CurrentToolData = null; gvToolList.ResetCloneDataSource(); QueryAllTool(); //BindGridView(); } catch (Exception ex) { HandleError(ex); } }
protected void gvQuery_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int iIndex = gvQuery.Rows[e.RowIndex].DataItemIndex; //避免新增未按下儲存就按其他資料的編輯 string SID, Tag; if (ToolTypeList[iIndex].ActiveFlag == "T") //ActiveFlag的判斷,若曾經啟用過則不可刪除 { removeListAddandDeletRow(); gvQuery.SetDataSource(ToolTypeList); gvQuery.DataBind(); throw new Exception(TextMessage.Error.T00714()); } else { // Delete Data SID = ToolTypeList[iIndex].ID; //避免若新增模式時,按下刪除的button,不作動作 if (SID.Length == 0) { return; } using (CimesTransactionScope cts = CimesTransactionScope.Create()) { if (ToolTypeList[iIndex].DeleteFromDB() == 0) { throw new Exception(TextMessage.Error.T00710("")); } AttributeAttributeInfo.DeleteByObjectSIDAndDataClass(SID, "ToolTypeAttribute", this.User.Identity.Name, DBCenter.GetSystemTime()); cts.Complete(); } _ProgramInformationBlock.ShowMessage(TextMessage.Hint.T00349(ToolTypeList[iIndex].Type)); ToolTypeList.RemoveAt(iIndex); removeListAddandDeletRow(); gvQuery.SetDataSource(ToolTypeList); gvQuery.EditItemIndex = -1; if (gvQuery.CurrentPageIndex > ((ToolTypeList.Count - 1) / gvQuery.PageSize)) { gvQuery.CurrentPageIndex = (ToolTypeList.Count - 1) / gvQuery.PageSize; } gvQuery.DataBind(); DisableSubControl(); uscAttributeSetupGrid.ClearField(); } } catch (Exception ex) { HandleError(ex, CurrentUpdatePanel, string.Empty, MessageShowOptions.OnLabel); } }
private void InsertToolType(int rowIndex) { int index = gvQuery.Rows[rowIndex].DataItemIndex; ArrayList SaveList = new ArrayList(); string sToolType = ((TextBox)gvQuery.Rows[rowIndex].FindControl("ttbType")).Text; RadioButton rbtEnable = (RadioButton)gvQuery.Rows[rowIndex].FindControl("rbEnable"); TextBox ttbDescr = (TextBox)gvQuery.Rows[rowIndex].FindControl("ttbDescription"); //檢查是否有相同名稱存在的資料 sql = "SELECT 1 FROM MES_TOOL_TYPE WHERE TYPE = #[STRING]"; DataView dvCheck = DBCenter.GetDataTable(sql, sToolType).DefaultView;// Query.DoQuery(sql); if (dvCheck != null && dvCheck.Count > 0) { throw new Exception(TextMessage.Error.T00710(sToolType)); } uscAttributeSetupGrid.ValidateCheck(); //新增資料庫 ToolTypeInfo toolTypeData = InfoCenter.Create <ToolTypeInfo>(); toolTypeData.Type = sToolType; toolTypeData.Description = ttbDescr.Text; toolTypeData["TOOLCLASS"] = "CUTTER"; toolTypeData["UPDATETIME"] = DBCenter.GetSystemTime(); toolTypeData["USERID"] = this.User.Identity.Name; if (rbtEnable.Checked == true) { toolTypeData.Status = "Enable"; toolTypeData.ActiveFlag = "T"; } else { toolTypeData.Status = "Disable"; toolTypeData.ActiveFlag = "F"; } //儲存系統屬性 _SystemAttribute.SaveSystemAttribute(toolTypeData); TransactionStamp txnStamp = new TransactionStamp(User.Identity.Name, ProgramRight, ProgramRight, this.ApplicationName); using (CimesTransactionScope cts = CimesTransactionScope.Create()) { toolTypeData.InsertToDB(); uscAttributeSetupGrid.ExcuteTransaction(toolTypeData.ID); //儲存刀壽 SaveToolLife(sToolType, txnStamp.UserID, txnStamp.RecordTime); //儲存刀具圖檔 SaveToolPicture(sToolType, txnStamp.UserID, txnStamp.RecordTime); cts.Complete(); } _ProgramInformationBlock.ShowMessage(TextMessage.Hint.T00695(sToolType)); ToolTypeList[index] = toolTypeData; }
private void UpdateToolType(int rowIndex) { int index = gvQuery.Rows[rowIndex].DataItemIndex; string sToolType = ((TextBox)gvQuery.Rows[rowIndex].FindControl("ttbType")).Text; RadioButton rbtEnable = (RadioButton)gvQuery.Rows[rowIndex].FindControl("rbEnable"); TextBox ttbDescr = (TextBox)gvQuery.Rows[rowIndex].FindControl("ttbDescription"); uscAttributeSetupGrid.ValidateCheck(); var toolTypeData = (ToolTypeInfo)ToolTypeList[index].DeepCopy(); toolTypeData.Description = ttbDescr.Text; toolTypeData["UPDATETIME"] = DBCenter.GetSystemTime(); toolTypeData["USERID"] = Page.User.Identity.Name; if (rbtEnable.Checked == true) { toolTypeData.Status = "Enable"; toolTypeData.ActiveFlag = "T"; } else { toolTypeData.Status = "Disable"; } //儲存系統屬性 _SystemAttribute.SaveSystemAttribute(toolTypeData); TransactionStamp txnStamp = new TransactionStamp(User.Identity.Name, ProgramRight, ProgramRight, this.ApplicationName); using (CimesTransactionScope cts = CimesTransactionScope.Create()) { if (toolTypeData.UpdateToDB() == 0) { throw new Exception(TextMessage.Error.T00747("")); } uscAttributeSetupGrid.ExcuteTransaction(toolTypeData.ID, toolTypeData.UserID, toolTypeData.UpdateTime); //處理刀壽 SaveToolLife(sToolType, txnStamp.UserID, txnStamp.RecordTime); //儲存刀具圖檔 SaveToolPicture(sToolType, txnStamp.UserID, txnStamp.RecordTime); cts.Complete(); } _ProgramInformationBlock.ShowMessage(TextMessage.Hint.T00083(sToolType)); ToolTypeList[index] = toolTypeData; }
protected void gvQuery_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int dataIndex = gvQuery.Rows[e.RowIndex].DataItemIndex; //取得登入者資訊 var recordTime = DBCenter.GetSystemTime(); var userID = User.Identity.Name; using (CimesTransactionScope cts = CimesTransactionScope.Create()) { //刪除主檔資料 _ToolDevices[dataIndex].DeleteFromDB(); LogCenter.LogToDB(_ToolDevices[dataIndex], LogCenter.LogIndicator.Create(ActionType.Remove, userID, recordTime)); //取得明細資料 var toolDeviceDetails = CSTToolDeviceDetailInfo.GetDataListByToolDeviceSID(_ToolDevices[dataIndex].ToolDeviceSID); toolDeviceDetails.ForEach(toolDeviceDetail => { //刪除明細資料 toolDeviceDetail.DeleteFromDB(); LogCenter.LogToDB(toolDeviceDetail, LogCenter.LogIndicator.Create(ActionType.Remove, userID, recordTime)); }); cts.Complete(); } QueryData(); } catch (Exception E) { HandleError(E); } }
protected void btnSave_Click(object sender, EventArgs e) { try { #region 檢查輸入資料 ttbToolName.Must(lblToolName); ddlType.Must(lblType); if (!rbtDisable.Checked && !rbtEnable.Checked) { throw new CimesException(TextMessage.Error.T00841(lblStates.Text)); } CurrentToolData.ToolName = ttbToolName.Text.Trim(); if (CurrentToolData.InfoState == InfoState.NewCreate) { if (ToolInfo.GetToolByName(CurrentToolData.ToolName) != null) { throw new CimesException(TextMessage.Error.T00710(CurrentToolData.ToolName)); } } ToolAttributeSetup.ValidateCheck(); #endregion //儲存系統屬性 _SystemAttribute.SaveSystemAttribute(CurrentToolData); //預設ActiveFlag = "F" if (CurrentToolData.InfoState == InfoState.NewCreate) { CurrentToolData.ActiveFlag = "F"; CurrentToolData.Location = "Warehouse"; CurrentToolData.ToolClass = "DIE"; } CurrentToolData.UsingStatus = (rbtEnable.Checked ? UsingStatus.Enable : UsingStatus.Disable); CurrentToolData.ToolTypeSID = ddlType.SelectedItem.Value; CurrentToolData.ToolType = ddlType.SelectedItem.Text; if (rbtEnable.Checked) { //若啟用,則ActiveFlag=T CurrentToolData.ActiveFlag = "T"; } if (ddlState.SelectedItem != null && !ddlState.SelectedItem.Value.IsNullOrTrimEmpty()) { CurrentToolData.CurrentState = ddlState.SelectedItem.Text; CurrentToolData.ToolStateSID = ddlState.SelectedItem.Value; } CurrentToolData.Description = ttbDescr.Text.Trim(); #region 將使用次數寫至ToolMaster DropDownList ddlCountType = (DropDownList)FindControl("PMCounterSetup1$ddlCountType"); if (ddlCountType != null) { CurrentToolData.CountType = ddlCountType.Text; } TextBox ttbCountRatio = (TextBox)FindControl("PMCounterSetup1$ttbCountRatio"); if (ttbCountRatio != null) { CheckTextBox(ttbCountRatio, GetUIResource("CountRatio"), CheckDataType.GreaterEqualZeroDecimal); CurrentToolData.CountRatio = ttbCountRatio.Text.ToDecimal(); } TextBox ttbTotalCount = (TextBox)FindControl("PMCounterSetup1$ttbTotalCount"); if (ttbTotalCount != null) { CheckTextBox(ttbTotalCount, GetUIResource("TotalCount"), CheckDataType.GreaterEqualZeroDecimal); CurrentToolData.TotalCount = ttbTotalCount.Text.ToDecimal(); } TextBox ttbScrapCount = (TextBox)FindControl("PMCounterSetup1$ttbScrapCount"); if (ttbScrapCount != null) { CheckTextBox(ttbScrapCount, GetUIResource("ScrapCount"), CheckDataType.GreaterEqualZeroDecimal); CurrentToolData.ScrapCount = ttbScrapCount.Text.ToDecimal(); } #endregion ToolInfo toolData = (ToolInfo)CurrentToolData.DeepCopy(); bool bCheckPMSSetup = true; TransactionStamp txnStamp = new TransactionStamp(User.Identity.Name, ProgramRight, ProgramRight, this.ApplicationName); using (CimesTransactionScope cts = CimesTransactionScope.Create()) { //UserDefineColumnSet1.ModifyInfoRecordWithoutUpdate(toolData); if (toolData.InfoState == InfoState.NewCreate) { toolData.InsertImmediately(this.User.Identity.Name, DBCenter.GetSystemTime()); LogCenter.LogToDB(toolData, LogCenter.LogIndicator.Default); if (PMSSetupInfo.GetSetupData("TOOL", "Type", toolData.ToolType).Count == 0) { bCheckPMSSetup = false; } } else { if (toolData.UpdateImmediately(this.User.Identity.Name, DBCenter.GetSystemTime()) != 1) { throw new CimesException(TextMessage.Error.T00747("")); } LogCenter.LogToDB(toolData, LogCenter.LogIndicator.Create(ActionType.Set)); if (PMSSetupInfo.GetSetupData("TOOL", "Type", toolData.ToolType).Count == 0 && PMSSetupInfo.GetSetupData("TOOL", "ID", toolData.ToolName).Count == 0) { bCheckPMSSetup = false; } } ToolAttributeSetup.ExcuteTransaction(toolData.ID); if (bCheckPMSSetup == true) { PMCounterSetupInterface.SyncSettingToDB(toolData.ID, "ToolID", txnStamp); } cts.Complete(); } CurrentToolData = (ToolInfoEx)toolData.DeepCopy(); BindDataByCurrentToolData(); gvToolList.ResetCloneDataSource(); //QueryAllTool(); //001 AllTools = ToolInfoEx.GetToolByToolClass("DIE"); int index = AllTools.FindIndex(p => p.ID == CurrentToolData.ID); //int pageIndex = index / gvToolList.PageSize; int selectedIndex = index % gvToolList.PageSize; //換頁要放在bind資料前 //指定選擇行放在bind資料後 gvToolList.PageIndex = gvToolList.CurrentPageIndex; gvToolList.SetDataSource(AllTools, true); gvToolList.SelectedIndex = selectedIndex; DisableTab(); _ProgramInformationBlock.ShowMessage(TextMessage.Hint.T00083("")); } catch (Exception ex) { HandleError(ex); } }