private void Paste() { Control con = this.Parent; while (con.Parent != null) { if (con is SPCModelCompareUC) { break; } con = con.Parent; } SPCCopySpec copyPopup = ((SPCModelCompareUC)con).copyPopup; if (copyPopup == null || copyPopup.CONFIG_RAWID.Trim().Length < 1) { MSGHandler.DisplayMessage(MSGType.Information, "SPC_INFO_COPY_SOURCE", null, null); return; } int[] selectedColumns = GetSelectedColumns(); if (selectedColumns.Length == 0) { MSGHandler.DisplayMessage(MSGType.Information, "SPC_INFO_SELECT_TARGET_MODEL", null, null); return; } for (int i = 0; i < selectedColumns.Length; i++) { if (copyPopup.CONFIG_RAWID.ToString() == GetHeader(selectedColumns[i])) { MSGHandler.DisplayMessage(MSGType.Information, "SPC_INFO_TARGET_SAME", null, null); return; } } //SPC-1218, KBLEE, START for (int i = 0; i < selectedColumns.Length; i++) { if (copyPopup.CONTEXT_CONTEXT_INFORMATION == "Y" && GetMainYN(selectedColumns[i]) == "N") { MSGHandler.DisplayMessage(MSGType.Information, "SPC_INFO_COPY_CONTEXT_FOR_ONLY_MAIN", null, null); return; } } //SPC-1218, KBLEE, END if (copyPopup.RULE_PN_SPEC_LIMIT.ToString().Equals("Y") || copyPopup.RULE_PN_CONTROL.ToString().Equals("Y")) { LinkedList toraltargetRawidList = new LinkedList(); string[] targetRawid = new string[selectedColumns.Length]; for (int i = 0; i < selectedColumns.Length; i++) { LinkedList targetRawidList = new LinkedList(); targetRawid[i] = GetHeader(selectedColumns[i]); } DataSet targetSpecData = this._controller.GetATTTargetConfigSpecData(targetRawid); DataSet sourceSpecData = this._controller.GetATTSourseConfigSpecData(copyPopup.CONFIG_RAWID.ToString()); if (targetSpecData != null && sourceSpecData != null) { bool CompareResult = true; if (copyPopup.RULE_PN_SPEC_LIMIT.ToString().Equals("Y") && copyPopup.RULE_PN_CONTROL.ToString().Equals("Y")) { CompareResult = this.compareSpecLimit(sourceSpecData, targetSpecData, "11", "PN"); } else if (copyPopup.RULE_PN_SPEC_LIMIT.ToString().Equals("N") && copyPopup.RULE_PN_CONTROL.ToString().Equals("Y")) { CompareResult = this.compareSpecLimit(sourceSpecData, targetSpecData, "01", "PN"); } else if (copyPopup.RULE_PN_SPEC_LIMIT.ToString().Equals("Y") && copyPopup.RULE_PN_CONTROL.ToString().Equals("N")) { CompareResult = this.compareSpecLimit(sourceSpecData, targetSpecData, "10", "PN"); } if (!CompareResult) { return; } } } DialogResult result = MSGHandler.DialogQuestionResult("SPC_INFO_DIALOG_COPY", new string[] { "Model Copy" }, MessageBoxButtons.YesNo); if (result == DialogResult.Yes) { StringBuilder resultMessage = new StringBuilder(); //SPC-632 LinkedList TotalConfig = new LinkedList(); string chartId = null; string mainYN = null; this.MsgShow(COMMON_MSG.Query_Data); for (int i = 0; i < selectedColumns.Length; i++) { chartId = GetHeader(selectedColumns[i]); mainYN = GetMainYN(selectedColumns[i]); TotalConfig.Add(i, this._controller.Paste(copyPopup, chartId, mainYN, this.sessionData.UserRawID)); } string message = this._controller.PasteModel(TotalConfig); switch (message) { case "FAIL": resultMessage.AppendLine(chartId + " : " + MSGHandler.GetMessage(Definition.MSG_KEY_FAIL_SAVE_CHANGE_DATA)); break; case Definition.MSG_KEY_NO_PASTE_ITEM: resultMessage.AppendLine(chartId + " : " + MSGHandler.GetMessage("SPC_INFO_NO_ITEM_PASTE")); break; } this.MsgClose(); if (resultMessage.Length != 0) { MSGHandler.DisplayMessage(MSGType.Information, resultMessage.ToString()); } else { MSGHandler.DisplayMessage(MSGType.Information, MSGHandler.GetMessage(Definition.MSG_KEY_SUCCESS_SAVE_CHANGE_DATA)); //SPC-1218, KBLEE this.RefreshData(); } } }
//SPC-629 by Louis you public LinkedList Paste(SPCCopySpec popup, string targetChartID, string mainYN, string userRawID) { bool hasSubConfigs = false; if (this._ws.GetTheNumberOfATTSubConfigOfModel(targetChartID) > 0) //SPC-1306, KBLEE { hasSubConfigs = true; } LinkedList llstConfigurationInfo = new LinkedList(); llstConfigurationInfo.Add(Definition.DynamicCondition_Condition_key.USER_ID, userRawID); llstConfigurationInfo.Add(Definition.CONDITION_KEY_MAIN_YN, mainYN); llstConfigurationInfo.Add(Definition.CONDITION_KEY_HAS_SUBCONFIG, hasSubConfigs); llstConfigurationInfo.Add(Definition.COPY_MODEL.SOURCE_MODEL_CONFIG_RAWID, popup.CONFIG_RAWID); llstConfigurationInfo.Add(Definition.COPY_MODEL.TARGET_MODEL_CONFIG_RAWID, targetChartID); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_INTERLOCK, popup.CONTEXT_INTERLOCK); //llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_USE_EXTERNAL_SPEC_LIMIT, popup.CONTEXT_USE_EXTERNAL_SPEC_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_AUTO_CALCULATION, popup.CONTEXT_AUTO_CALCULATION); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_AUTO_GENERATE_SUB_CHART, popup.CONTEXT_AUTO_GENERATE_SUB_CHART); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_ACTIVE, popup.CONTEXT_ACTIVE); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_SAMPLE_COUNT, popup.CONTEXT_SAMPLE_COUNT); //llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_MANAGE_TYPE, popup.CONTEXT_MANAGE_TYPE); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_AUTO_SETTING, popup.CONTEXT_AUTO_SETTING); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_GENERATE_SUB_CHART_WITH_INTERLOCK, popup.CONTEXT_GENERATE_SUB_CHART_WITH_INTERLOCK); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_GENERATE_SUB_CHART_WITH_AUTO_CALCULATION, popup.CONTEXT_GENERATE_SUB_CHART_WITH_AUTO_CALCULATION); //llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_USE_NORMALIZATION_VALUE, popup.CONTEXT_USE_NORMALIZATION_VALUE); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_INHERIT_THE_SPEC_OF_MAIN, popup.CONTEXT_INHERIT_THE_SPEC_OF_MAIN); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_MODE, popup.CONTEXT_MODE); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_CHART_DESCRIPTION, popup.CONTEXT_CHART_DESCRIPTION); llstConfigurationInfo.Add(Definition.COPY_MODEL.CONTEXT_CONTEXT_INFORMATION, popup.CONTEXT_CONTEXT_INFORMATION); //SPC-1218, KBLEE //SPC-1218, KBLEE, START llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_PN_SPEC_LIMIT, popup.RULE_PN_SPEC_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_C_SPEC_LIMIT, popup.RULE_C_SPEC_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_PN_CONTROL, popup.RULE_PN_CONTROL); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_C_CONTROL, popup.RULE_C_CONTROL); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_P_CONTROL, popup.RULE_P_CONTROL); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_U_CONTROL, popup.RULE_U_CONTROL); llstConfigurationInfo.Add(Definition.COPY_MODEL.RULE_RULE_SELECTION, popup.RULE_RULE_SELECTION); //SPC-1218, KBLEE, END llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_PARAMETER_CATEGORY, popup.OPTION_PARAMETER_CATEGORY); llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_CALCULATE_PPK, popup.OPTION_CALCULATE_PPK); llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_PRIORITY, popup.OPTION_PRIORITY); llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_SAMPLE_COUNTS, popup.OPTION_SAMPLE_COUNTS); llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_DAYS, popup.OPTION_DAYS); llstConfigurationInfo.Add(Definition.COPY_MODEL.OPTION_DEFAULT_CHART_TO_SHOW, popup.OPTION_DEFAULT_CHART_TO_SHOW); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_AUTO_CALCULATION_PERIOD, popup.AUTO_AUTO_CALCULATION_PERIOD); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_AUTO_CALCULATION_COUNT, popup.AUTO_AUTO_CALCULATION_COUNT); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_MINIMUM_SAMPLES_TO_USE, popup.AUTO_MINIMUM_SAMPLES_TO_USE); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_DEFAULT_PERIOD, popup.AUTO_DEFAULT_PERIOD); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_MAXIMUM_PERIOD_TO_USE, popup.AUTO_MAXIMUM_PERIOD_TO_USE); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_CONTROL_LIMIT_TO_USE, popup.AUTO_CONTROL_LIMIT_TO_USE); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_CONTROL_LIMIT_THREASHOLD, popup.AUTO_CONTROL_LIMIT_THREASHOLD); //SPC-1218, KBLEE, START llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_PN_CONTROL_LIMIT, popup.AUTO_PN_CONTROL_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_P_CONTROL_LIMIT, popup.AUTO_P_CONTROL_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_C_CONTROL_LIMIT, popup.AUTO_C_CONTROL_LIMIT); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_U_CONTROL_LIMIT, popup.AUTO_U_CONTROL_LIMIT); //SPC-1218, KBLEE, END llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_CALCULATION_WITH_SHIFT_COMPENSATION, popup.AUTO_CALCULATION_WITH_SHIFT_COMPENSATION); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_CALCULATION_WITHOUT_IQR_FILTER, popup.AUTO_CALCULATION_WITHOUT_IQR_FILTER); llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_CALCULATION_THRESHOLD_OFF_YN, popup.AUTO_THRESHOLD_FUNTION); //llstConfigurationInfo.Add(Definition.COPY_MODEL.AUTO_AUTO_CALCULATION_INITIAL_COUNT, popup.auto_); return(llstConfigurationInfo); //DataSet dsResult = _ws.CopyModelInfo(llstConfigurationInfo.GetSerialData()); //if(dsResult == null) // return "There is no item to paste"; //if(DSUtil.GetResultSucceed(dsResult) == 0) // return "FAIL"; //return "SUCCESS"; }
//SPC-629 public LinkedList Paste(SPCCopySpec popup, string targetChartID, string mainYN, string userRawID) { throw new NotImplementedException(); }