| | |
| | | if (dr == DialogResult.Yes) { |
| | | |
| | | string Url = DBHelper.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "Config/SQLAPI.config", "sUrl"); |
| | | //通过接口 获取token |
| | | JsonResult jsonResult = await FindAccessToken(Url); |
| | | |
| | | string EquipFile = this.cmbEquipFile.Text; |
| | |
| | | try |
| | | { |
| | | |
| | | //获取所有设备数据 |
| | | JsonEquipmentData jsonResult =await FindDeviceList(url, token); |
| | | |
| | | if (jsonResult.code != "0") |
| | |
| | | else |
| | | { |
| | | string nos = ""; |
| | | //获取去设备编码 |
| | | //获取设备编码 |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | if (jsonResult.data[i].no == this.cmbEquipFile.SelectedValue.ToString()) |
| | |
| | | nos = jsonResult.data[i].no; |
| | | } |
| | | } |
| | | //开始时间 |
| | | string HBegin = this.txtBegin.Text; |
| | | //结束时间 |
| | | string HEnd = this.txtEnd.Text; |
| | | //获取不良数,合数数,可疑数 总数 |
| | | jsonResult = await FindDevicePropCalc(url, token, nos, HBegin, HEnd); |
| | | if (jsonResult.code != "0") |
| | | { |
| | |
| | | decimal HUpLimit = 0; |
| | | decimal HDownLimit = 0; |
| | | |
| | | //分析方法 为定量分析 |
| | | if (HAnalysisMethod == "2") |
| | | { |
| | | //获取上限 |
| | | HUpLimit = decimal.Parse(dataSet.Tables[0].Rows[i]["HTargetVal"].ToString()) + decimal.Parse(dataSet.Tables[0].Rows[i]["HUpLimit"].ToString()); |
| | | //获取下限 |
| | | HDownLimit = decimal.Parse(dataSet.Tables[0].Rows[i]["HTargetVal"].ToString()) + decimal.Parse(dataSet.Tables[0].Rows[i]["HDownLimit"].ToString()); |
| | | } |
| | | |
| | |
| | | break; |
| | | } |
| | | //SRM@101.2@VEN00005@CGDD000167@1.02.002.002@20231129@1000 |
| | | //判断检验项目的代码 跟列名是否一致 |
| | | if (dataSet.Tables[0].Rows[i]["HQCCheckItemNumber"].ToString().Contains(HQCCheckItemName)) |
| | | { |
| | | for (int k = 0; k < dt.Rows.Count; k++) |
| | | { |
| | | |
| | | //只取时间范围内的数据 |
| | | if (DateTime.Parse(dt.Rows[k]["HDate"].ToString()) >= DateTime.Parse(HBegin) && DateTime.Parse(dt.Rows[k]["HDate"].ToString()) <= DateTime.Parse(HEnd)) |
| | | { |
| | | //获取检验值 |
| | | decimal HInSpectValue = decimal.Parse(dt.Rows[k][dt.Columns[j].ColumnName].ToString()); |
| | | |
| | | //默认值结论为合格 |
| | | int HInSpectResult = 1; |
| | | //定量分析 进行判断是否满足上下限 |
| | | if (HAnalysisMethod == "2") |
| | | { |
| | | HInSpectResult = (HInSpectValue > HUpLimit || HDownLimit > HInSpectValue) ? 0 : 1; |
| | |
| | | HInSpectResult = int.Parse(HInSpectValue.ToString()); |
| | | } |
| | | |
| | | |
| | | //如果当前结论为合格 并且历史结论也是合格 则继续保持合格 |
| | | if (HInSpectResult == 1 && HLastResult != 0) |
| | | { |
| | | HLastResult = 1; |
| | |
| | | ",0,0,'',0,'','" + dataSet.Tables[0].Rows[i]["HTargetVal"].ToString() + "'" + |
| | | ",'" + dataSet.Tables[0].Rows[i]["HUpLimit"].ToString() + "','" + dataSet.Tables[0].Rows[i]["HDownLimit"].ToString() + "','','',0,'" + HAnalysisMethod + "'," + dataSet.Tables[0].Rows[i]["HInspectInstruMentID"].ToString() + ",'" + HLastResult + "'" + |
| | | ") "); |
| | | |
| | | //如果当前结论为合格 并且历史结论也是合格 则继续保持合格 |
| | | if (HLastResult == 1 && HLastResults != 0) |
| | | { |
| | | HLastResults = 1; |
| | |
| | | //TimeDate = "2025-02-10 13:10:50"; |
| | | //time = "2025-02-10 13:11:50"; |
| | | |
| | | //获取所有设备数据 |
| | | JsonEquipmentData jsonResult = await FindDeviceList(Url, token); |
| | | if (jsonResult.code != "0") |
| | | { |
| | |
| | | else { |
| | | |
| | | string nos = ""; |
| | | //获取去设备编码 |
| | | //获取设备编码 |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | nos += jsonResult.data[i].no + ","; |
| | |
| | | //} |
| | | } |
| | | nos = nos.Substring(0, nos.Length - 1); |
| | | //获取参数 获取每个设备对应的所有参数 |
| | | JsonEquipmentData jsonEquipment = await FindAllDevicePropsDetailByTimeRange(Url, token, nos, TimeDate, time); |
| | | |
| | | var JsonData = "{\"data\":["; |
| | | CustomWriteLog("01" , DateTime.Now.ToString("yyyy-MM-dd")); |
| | | //通过每个设备进行循环赋值 |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | { |
| | | //获取设备对应的编码 判断编码是否满足为螺母压装设备 |
| | | if (jsonEquipment.data[i].deviceNo.Contains("CMR-ZZ-SE-")) |
| | | { |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | //日志 |
| | | CustomWriteLog("1-" + k + ":" + jsonEquipment.data[i].props[j].datas[k].value, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取参数的类型 |
| | | valueData value = JsonConvert.DeserializeObject<valueData>(jsonEquipment.data[i].props[j].datas[k].value); |
| | | |
| | | //日志 |
| | | CustomWriteLog("2", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | if (value.type == "良品") |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"OK\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | |
| | | } |
| | | } |
| | | else { |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\""+ jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | } |
| | | |
| | | //获取设备时间段产量 |
| | | JsonEquipmentData data = await FindProdByNosAndTime(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | |
| | | for (int j = 0; j < data.data.Count; j++) |
| | |
| | | } |
| | | |
| | | CustomWriteLog("02", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | var EquipmentStaus = await FindDeviceStatusByNos(Url, token, nos); |
| | | |
| | | //获取设备运行状态 |
| | | var EquipmentStaus = await FindDeviceStatusByNos(Url, token, nos); |
| | | |
| | | for (int i = 0; i < EquipmentStaus.data.Count; i++) |
| | | { |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | //查询当前开工的设备 获取对应的物料信息 |
| | | DataSet datable = oCN.RunProcReturn(@"select m.HNumber,eq.HEquipFileNo from Sc_ICMOBillStatus_Tmp a |
| | | inner join Gy_EquipFileBillMain eq on a.HSourceID = eq.HSourceID |
| | | inner join Gy_Material m on a.HMaterID = m.HItemID |
| | |
| | | } |
| | | |
| | | CustomWriteLog("03", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | JsonData = JsonData.Substring(0, JsonData.Length - 1); |
| | | JsonData += "]}"; |
| | | |
| | | //保存数据 |
| | | DataSave(JsonData); |
| | | if (TimeDate != "") |
| | | { |
| | |
| | | JsonResult jsonResult = await getUrl(urls, formData); |
| | | string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | string token = jsonResult.data.token; |
| | | |
| | | //获取所有的设备数据 |
| | | JsonEquipmentData jsonEquipment = await FindDeviceList(Url, token); |
| | | |
| | | if (jsonEquipment.code != "0") |
| | |
| | | |
| | | //this.Time_CLHB.Enabled = false; |
| | | |
| | | //查询开工的设备信息 以及 查询当天设备对应的开工时间 和完工时间 |
| | | DataSet ds = oCN.RunProcReturn("exec h_p_Sc_TimeICMOReporList '" + nos + "'", "h_p_Sc_TimeICMOReporList"); |
| | | |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | //根据当天只开工没有完工对应的产量数据 生成产量汇报单 |
| | | DataTable dt = ds.Tables[0]; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | |
| | | string HEndDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | jsonEquipment = await FindProdByNosAndTime(Url, token, nos, HBegDate, HEndDate); |
| | | if (decimal.Parse(jsonEquipment.data[0].prod) > 0) { |
| | | //生成产量汇报单 |
| | | oCN.RunProc("exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod+",'"+ HEndDate + "'"); |
| | | } |
| | | } |
| | | } |
| | | if (ds.Tables[1].Rows.Count > 0) |
| | | { |
| | | { |
| | | //根据当天开工并且完工对应的产量数据 生成产量汇报单 |
| | | DataTable dt = ds.Tables[1]; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | |
| | | jsonEquipment = await FindProdByNosAndTime(Url, token, nos, HBegDate, HEndDate); |
| | | if (decimal.Parse(jsonEquipment.data[0].prod) > 0) |
| | | { |
| | | //生成产量汇报单 |
| | | oCN.RunProc("exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod + ",'" + HEndDate + "'"); |
| | | } |
| | | } |
| | |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.CopyComplete |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.exe |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.pdb |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.AssemblyReference.cache |
| | |
| | | dataTable.Columns.Clear(); |
| | | dataTable.Rows.Clear(); |
| | | |
| | | //把获取的数据 进行数据整理 单位不一样的进行换算 |
| | | for (int i = 0; i < ds.Tables.Count; i++) |
| | | { |
| | | DataTable dt = ds.Tables[i]; |
| | |
| | | } |
| | | } |
| | | |
| | | //存储数据到 dataTable |
| | | string[] str = { "Ls(uH)_10kHz", "Ls(uH)_100kHz", "Z(Ω)_600kHz", "Ls(uH)_1MHz", "Ls(uH)_2MHz", "Z(Ω)_2MHz", "Z(Ω)_1MHz", "Z(Ω)_10MHz", "Z(Ω)_100kHz" }; |
| | | for (int o = 0; o < str.Length; o++) |
| | | { |
| | |
| | | { |
| | | string HProcID = this.cmbPro.SelectedValue.ToString(); |
| | | //修改是在哪个设备上进行的数据采集 men.HNumber CMR-E-026 LMJC 浸渍 铁芯检测 设备 |
| | | //查询当前流转卡 当前工序 有没有对应的检验方案 |
| | | DataSet dataSet = oCN.RunProcReturn(@"select b.HAnalysisMethod,b.HInspectInstruMentID,a.HInterID HQCSchemeID,b.HQCCheckItemID, ch.HNumber HQCCheckItemNumber,m.HNumber,HUpLimit,HDownLimit,HTargetVal |
| | | from Sc_ProcessExchangeBillMain pr with(nolock) |
| | | inner join Gy_QCCheckProjectMain a with(nolock) on pr.HMaterID=a.HMaterID and a.HProcID="+ HProcID + @" |
| | |
| | | //保存数据 |
| | | if (dataSet.Tables[0].Rows.Count > 0) |
| | | { |
| | | //判断数据有没有派工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID,staus.HProcID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | HInSpectResult = (HInSpectValue > HUpLimit || HDownLimit > HInSpectValue) ? 2 : 1; |
| | | } |
| | | } |
| | | //日志 |
| | | DBHelper.CustomWriteLog("Insert into QC_ProcessCheckBillSub " + |
| | | " (HInterID,HBillNo_bak,HEntryID,HSNO,HCloseMan" + |
| | | ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" + |
| | |
| | | { |
| | | Application.EnableVisualStyles(); |
| | | Application.SetCompatibleTextRenderingDefault(false); |
| | | Application.Run(new ReadyDataForm()); |
| | | Application.Run(new ReadCSV()); |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | //string csv_file_path_Read = $@"D:\DATA SAVE\{Year}\{Year + Month}\{Year + Month + Day}\{HBath}\数据保存_MES读取.csv"; |
| | | |
| | | //复制一份文件 |
| | | File.Copy(csv_file_path, csv_file_path_Read, true); |
| | | |
| | | string contents = File.ReadAllText(csv_file_path_Read, Encoding.GetEncoding("gb2312")); |
| | |
| | | string HProcNumber = "005"; //005 |
| | | int HFlag = 0; |
| | | //string HEmpCode = ""; |
| | | //判断条码不为空 |
| | | if (HBadCodeSN != "") |
| | | { |
| | | string HType = ""; |
| | |
| | | ListSelect.Items.Add("条码:" + HBarCode + ",当前日期:" + DateTime.Now.ToString() + ",日期:" + HCreateTime + ",结果:" + HResult); |
| | | list.Add(HBarCode); |
| | | |
| | | //新增工艺参数 |
| | | for (int i = 0; i < dt.Columns.Count; i++) |
| | | { |
| | | if (dt.Columns[i].ColumnName.Contains("Hz")) |
| | |
| | | HType = dt.Columns[i].ColumnName; |
| | | string HCount_1 = item[HType].ToString(); |
| | | |
| | | //查询当天条码 对应的工艺参数有没有插入到里面 如果没有则新增 |
| | | DataSet ds1 = oCN.RunProcReturn(@"select * from Sb_EquipMentCollectionTechParam_SN where HBarCode='" + HBarCode + "' and HType='" + HType + "'", "Sb_EquipMentCollectionTechParam_SN"); |
| | | |
| | | if (ds1.Tables[0].Rows.Count == 0) |
| | |
| | | } |
| | | else |
| | | { |
| | | //错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | AllProcessExchangeHProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString(); |
| | | } |
| | | else { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | HProcExchInterID = AllProcessExchangeHProcExchInterID; |
| | | |
| | | DataSet ds1; |
| | | |
| | | //第一次流转卡+工序和后面的做对比 如果是同一个流转卡就不进行判断 |
| | | if ((HProcExchBillNo + HProcNumber) != AllSNBarcodeProcCtrl) { |
| | | //查询工序 |
| | | ds1 = oCN.RunProcReturn(@"SELECT HItemID,HName FROM Gy_Process WHERE HNumber='" + HProcNumber + "'", "Gy_Process"); |
| | |
| | | |
| | | string HProcID = AllHProcID; |
| | | string HProName = AllHProName; |
| | | //第一次流转卡+工序和后面的做对比 如果是同一个流转卡就不进行判断 |
| | | if ((HProcExchBillNo + HProcNumber) == AllSNBarcodeProcCtrl) |
| | | { |
| | | //判断 当前工序 条码 的上一道工序有没有过站 |
| | | ds1 = oCN.RunProcReturn("exec h_p_Sc_SNBarcodeProcCtrl_S '" + HBarCode + "'," + HProcID, "h_v_Gy_QualifiedRecordsList"); |
| | | |
| | | if (ds1.Tables[0].Rows.Count == 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | } |
| | | else if (ds1.Tables[0].Rows[0]["HBack"].ToString() == "2") |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | where ou.HProcExchInterID={HProcExchInterID} and ou.HProcID={AllHProcID} |
| | | group by ou.HProcExchInterID,ou.HProcExchEntryID,ou.HQty", "Sc_StationOutBillMain"); |
| | | |
| | | //获取流转卡数量 |
| | | double hqtyOut = AllHQty; |
| | | |
| | | //流转卡数量-出站单数量大于0 |
| | | if (ds1.Tables[0].Rows.Count > 0) |
| | | { |
| | | hqtyOut = double.Parse(ds1.Tables[0].Rows[0][0].ToString()); |
| | | } |
| | | |
| | | //如果数量<0 则代表出站单数量超出流转卡数量 |
| | | if (hqtyOut <= 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | //拍照工序除外 |
| | | if (HProcNumber != "013") { |
| | | //增加产线组装追溯单 |
| | | //查询当前流转卡对应的工序有没有配件信息,如果有 则判断配件单的数量是否为0 |
| | | DataSet dataSet = oCN.RunProcReturn("exec h_p_Gy_BarCodeBillBomList '" + HProcExchBillNo + "'," + HProcID, "h_p_Gy_BarCodeBillBomList"); |
| | | if (dataSet.Tables[0].Rows.Count > 0) |
| | | { |
| | |
| | | string HMaterBarCode = dataSet.Tables[0].Rows[i]["HBarCode"].ToString(); |
| | | if (SYHQty == 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | |
| | | for (int i = 0; i < ds.Tables.Count; i++) |
| | | { |
| | | //修改是在哪个设备上进行的数据采集 b.HInspectInstruMentID=1 三坐标1 轮廓仪2 |
| | | //修改 是在哪个设备上进行的数据采集 b.HInspectInstruMentID=1 三坐标1 轮廓仪2 |
| | | //查询当前流转卡 以及 工序 对应的检验方案是否存在 |
| | | DataSet dataSet = oCN.RunProcReturn(@"select b.HInspectInstruMentID,a.HInterID HQCSchemeID,b.HQCCheckItemID, ch.HNumber HQCCheckItemNumber,m.HNumber,HUpLimit,HDownLimit,HTargetVal |
| | | from Sc_ProcessExchangeBillMain pr with(nolock) |
| | | inner join Gy_QCCheckProjectMain a with(nolock) on pr.HMaterID=a.HMaterID |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | //判断当前流转卡 当前工序 是否已经派过工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | // 判断当前流转卡 当前工序 是否已经派过工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | // 判断当前流转卡 当前工序 是否已经派过工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID,staus.HProcID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | { |
| | | string cmbPro = this.cmbPro.SelectedValue.ToString(); |
| | | |
| | | //查询取样单数据 |
| | | DataSet ds = oCN.RunProcReturn("select * from h_v_QC_TakeSampleCheckBillList where 单据号='" + HBillNo + "' and HProcID='" + cmbPro + "'", "h_v_QC_TakeSampleCheckBillList"); |
| | | if (ds.Tables[0].Rows.Count == 0) |
| | | { |
| | |
| | | |
| | | public void Xt_ReadText(string FileData) |
| | | { |
| | | //获取文本所有数据 |
| | | FileData = FileData.Substring(0, FileData.Length - 1); |
| | | FileData = "[" + FileData + "]"; |
| | | //JSON序列化转换字典集合 |
| | |
| | | DataSet dataSet; |
| | | |
| | | string HProjectNum = HBarCode.Substring(18, 8); |
| | | //通过截取项目号 如果第一条数据的项目号跟后面的一样 就不进行判断 |
| | | if (HBarCode.Contains(AllProcessExchange)==false) { |
| | | |
| | | //判断流转卡是否存在 |
| | | dataSet = oCN.RunProcReturn("select HInterID,HBillNo from Sc_ProcessExchangeBillMain where HProjectNum='" + HProjectNum + "-1'", "Sc_ProcessExchangeBillMain"); |
| | | if (dataSet.Tables[0].Rows.Count > 0) { |
| | | AllProcessExchangeHProcExchBillNo = dataSet.Tables[0].Rows[0]["HBillNo"].ToString(); |
| | |
| | | AllProcessExchange = HProjectNum; |
| | | } |
| | | } |
| | | |
| | | //判断截取的项目号 跟赋值的项目号是否一样 需要先满足上面的条件 |
| | | if (AllProcessExchange == HProjectNum) |
| | | { |
| | | //通过截取项目号 如果第一条数据的项目号跟后面的一样 就不进行判断 |
| | | if (HBarCode.Contains(AllBeginWork) == false) { |
| | | //判断当前流转卡对应的工序数据是否开工 |
| | | dataSet = oCN.RunProcReturn("select * from Sc_ICMOBillStatus_Tmp where HSourceBillNo='" + AllProcessExchangeHProcExchBillNo + "' and HICMOStatus<>'0'", "Sc_ICMOBillStatus_Tmp"); |
| | | |
| | | if (dataSet.Tables[0].Rows.Count > 0) |
| | |
| | | } |
| | | } |
| | | |
| | | //满足上述条件 并且项目号 和赋值项目号一样 则进行新增 |
| | | if (AllBeginWork == HProjectNum) |
| | | { |
| | | if (Get_AllowLoadData(HBarCode, HProcNumber, flag_1, AllProcessExchangeHProcExchBillNo, AllProcessExchangeHProcExchInterID, out flag_2)) |
| | | { |
| | | //新增条码数据 |
| | | string sql = $@"insert into Sb_EquipMentCollection_SN(HSourceCode,HEmpCode,HType,HBarCode,HCount,HCreateTime,HDate,HResult,HProcNumber,HFlag) |
| | | values('{HSourceCode}','{HEmpCode}','{HType}','{HBarCode}','{HCount}','{HCreateTime}','{HDate}','{HResult}','{HProcNumber}','{HFlag}')"; |
| | | oCN.RunProc(sql); |
| | |
| | | //根据条码 判断是否保存 |
| | | public bool Get_AllowLoadData(string HBarCode, string HProcNumber, bool flag_1,string HProcExchBillNo,string HProcExchInterID, out bool flag_2) |
| | | { |
| | | //判断条码的长度 |
| | | if (HBarCode.Length != 29 && HBarCode.Length != 50) |
| | | { |
| | | flag_2 = false; |
| | |
| | | } |
| | | else |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | } |
| | | } |
| | | DataSet ds1; |
| | | |
| | | |
| | | //第一次流转卡+工序和后面的做对比 如果是同一个流转卡就不进行判断 |
| | | if ((HProcExchBillNo + HProcNumber) != AllSNBarcodeProcCtrl) { |
| | | |
| | | //查询工序 |
| | |
| | | AllSNBarcodeProcCtrl = HProcExchBillNo + HProcNumber; |
| | | } |
| | | |
| | | |
| | | //第一次流转卡+工序和后面的做对比 如果是同一个流转卡就不进行判断 |
| | | if ((HProcExchBillNo + HProcNumber) == AllSNBarcodeProcCtrl) |
| | | { |
| | | //过站控制 |
| | | //判断当前工序对应的条码是否上道工序过站 |
| | | ds1 = oCN.RunProcReturn("exec h_p_Sc_SNBarcodeProcCtrl_S '" + HBarCode + "'," + AllHProcID, "h_p_Sc_SNBarcodeProcCtrl_S"); |
| | | |
| | | if (ds1.Tables[0].Rows.Count == 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | } |
| | | else if (ds1.Tables[0].Rows[0]["HBack"].ToString() == "2") |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | ds1 = oCN.RunProcReturn($@"select ({AllHQty}-sum(isnull(ou.HQty,0))-sum(isnull(ou.HBadCount,0))) HQty from Sc_StationOutBillMain ou WITH(NOLOCK) |
| | | where ou.HProcExchInterID={HProcExchInterID} and ou.HProcID={AllHProcID} |
| | | group by ou.HProcExchInterID,ou.HProcExchEntryID,ou.HQty", "Sc_StationOutBillMain"); |
| | | |
| | | //获取流转卡数量 |
| | | double hqtyOut = AllHQty; |
| | | |
| | | if (ds1.Tables[0].Rows.Count > 0) { |
| | | hqtyOut = double.Parse(ds1.Tables[0].Rows[0][0].ToString()); |
| | | } |
| | | |
| | | //流转卡数量-出站单数量大于0 |
| | | if (hqtyOut <= 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | if (HProcNumber != "013") |
| | | { |
| | | //增加产线组装追溯单 |
| | | //查询当前流转卡对应的工序有没有配件信息,如果有 则判断配件单的数量是否为0 |
| | | DataSet dataSet = oCN.RunProcReturn("exec h_p_Gy_BarCodeBillBomList '" + HProcExchBillNo + "'," + AllHProcID, "h_p_Gy_BarCodeBillBomList"); |
| | | if (dataSet.Tables[0].Rows.Count > 0) |
| | | { |
| | |
| | | string HMaterBarCode = dataSet.Tables[0].Rows[i]["HBarCode"].ToString(); |
| | | if (SYHQty == 0) |
| | | { |
| | | //flag_1=只有第一次进来才会弹出 错误信息弹出框 定时超过2分钟弹一次 |
| | | if (!flag_1 && (DateTime.Now - time).Minutes > hqty) |
| | | { |
| | | time = DateTime.Now; |
| | |
| | | } |
| | | } |
| | | |
| | | //条形码回车 |
| | | private void txtLzk_KeyDown(object sender, KeyEventArgs e) |
| | | { |
| | | if (e.KeyCode == Keys.Enter) |
| | |
| | | private void ZZ_GlueWeigh_Load(object sender, EventArgs e) |
| | | { |
| | | this.cmbEquip.SelectedIndex = 0; |
| | | this.cmbEquip.DropDownStyle = ComboBoxStyle.DropDownList; |
| | | this.cmbEquip.DropDownStyle = ComboBoxStyle.DropDownList;//只读 |
| | | |
| | | this.cmbPro.DropDownStyle = ComboBoxStyle.DropDownList; |
| | | this.cmbJYSelect.DropDownStyle = ComboBoxStyle.DropDownList; |
| | | this.cmbPro.DropDownStyle = ComboBoxStyle.DropDownList;//只读 |
| | | this.cmbJYSelect.DropDownStyle = ComboBoxStyle.DropDownList;//只读 |
| | | this.cmbJYSelect.SelectedIndex = 0; |
| | | this.txtHMakerNumber.ReadOnly = true; |
| | | this.txtPcm.ReadOnly = true; |
| | | this.txtHMakerNumber.ReadOnly = true;//只读 |
| | | this.txtPcm.ReadOnly = true;//只读 |
| | | } |
| | | |
| | | //查询称重的重量 |
| | |
| | | break; |
| | | } |
| | | |
| | | //查询 顶部点胶重量 和 底部点胶重量 当前最大的数据 |
| | | DataSet ds = oCN.RunProcReturn(@"select top 1 HTechParamName,HResult,HCreateTime from Sb_EquipMentCollectionTechParam_Temp |
| | | where HSourceCode = '" + HNumber + @"' and HTechParamName = '顶部点胶重量' and HCreateTime in( |
| | | select max(HCreateTime) from Sb_EquipMentCollectionTechParam_Temp |
| | |
| | | |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | //获取 顶部点胶重量 和 底部点胶重量 |
| | | for (int i = 0; i < ds.Tables[0].Rows.Count; i++) |
| | | { |
| | | string HTechParamName = ds.Tables[0].Rows[i]["HTechParamName"].ToString(); |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | //判断当前流转卡对应的工序有没有开工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | { |
| | | HLastResults = 0; |
| | | } |
| | | |
| | | //新增子表 |
| | | oCN.RunProc("Insert into QC_FirstPieceCheckBillSub " + |
| | | " (HInterID,HBillNo_bak,HEntryID,HCloseMan" + |
| | | ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" + |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | //判断当前流转卡对应的工序有没有开工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | |
| | | //判断当前流转卡对应的工序有没有开工 |
| | | DataSet ds = oCN.RunProcReturn(@"select staus.HSourceID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,a.HPlanQty,a.HInterID HProcExchInterID, |
| | | staus.HSourceEntryID HProcExchEntryID,a.HBillNo HProcExchBillNo,a.HQty,a.HMaterID,staus.HProcID |
| | | from Sc_ProcessExchangeBillMain a with(nolock) |
| | |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.CopyComplete |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.exe |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.pdb |
| | | E:\智云mes\SRM\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.AssemblyReference.cache |
| | |
| | | timer.Start(); |
| | | |
| | | CustomWriteLog("1.计时器开始:"+timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //根据时间正序排序获取前150条数据 |
| | | DataTable list = oCN.RunProcReturn("select top 150 * from Sb_EquipMentCollection_SN WITH(NOLOCK) where HFlag=0 order by HCreateTime", "Sb_EquipMentCollection_SN").Tables[0]; |
| | | |
| | | //循环集合 |
| | |
| | | bool flag = false; |
| | | string HBadCodeSN = dic["HBarCode"].ToString(); |
| | | HBadCodeSN = TM_ZH(HBadCodeSN); |
| | | //判断当天条码有没有存储在条码表里 如果没有 则保存数据 并返回0 |
| | | //如果已存在 则返回 1 |
| | | //如果条件不满足的 则返回 2 |
| | | int num = SNHBardCodeList(HBadCodeSN); |
| | | |
| | | CustomWriteLog("2.2.条码生成:" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | |
| | | //left join Gy_Process p WITH(NOLOCK) on a.HProcID=p.HItemID |
| | | //where p.HNumber='" + dic["HProcNumber"].ToString() + "' and sn.HBarCode='" + HBadCodeSN + "'", "Sc_StationOutBillSub_SN"); |
| | | |
| | | //查询这个工序对应的条码 出站单是否已经存在 |
| | | DataSet ds1 = oCN.RunProcReturn(@"select a.HProcID from Sc_StationOutBillMain a WITH(NOLOCK) |
| | | inner join Sc_StationOutBillSub_SN sn WITH(NOLOCK) on a.HInterID=sn.HInterID |
| | | left join Gy_Process p WITH(NOLOCK) on a.HProcID=p.HItemID |
| | | where p.HNumber='" + dic["HProcNumber"].ToString() + "' and sn.HBarCode='" + HBadCodeSN + "'", "Sc_StationOutBillSub_SN"); |
| | | |
| | | |
| | | //判断条码之前是否为NG 同时 判断出站单的条码数据是不存在 |
| | | if (ds.Tables[0].Rows.Count > 0 && ds1.Tables[0].Rows.Count == 0) |
| | | { |
| | | //返修好的条码进行重新过站保存 |
| | | flag = getOKOutBillAdd(dic, HBadCodeSN, "OK"); |
| | | } |
| | | else |
| | | { |
| | | //出站单的条码数据是不存在 则新增 |
| | | if (ds1.Tables[0].Rows.Count > 0) |
| | | { |
| | | flag = true; |
| | |
| | | int num = 0; |
| | | string HBadCodeSN = dic["HBarCode"].ToString(); |
| | | HBadCodeSN = TM_ZH(HBadCodeSN); |
| | | //判断当天条码有没有存储在条码表里 如果没有 则保存数据 并返回0 |
| | | //如果已存在 则返回 1 |
| | | //如果条件不满足的 则返回 2 |
| | | num = SNHBardCodeList(HBadCodeSN); |
| | | |
| | | if (num == 0 || num == 1) |
| | |
| | | |
| | | CustomWriteLog("2.1.2.绑定流转卡:"+ HProcNumber+"----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //查询生产资源 |
| | | ds = oCN.RunProcReturn("select * from Gy_Source WITH(NOLOCK) where HNumber='" + dic["HSourceCode"].ToString() + "' ", "Gy_Source"); |
| | | long HSourceID = 0; |
| | | if (ds.Tables[0].Rows.Count != 0) |
| | |
| | | CustomWriteLog("2.1.5.获取客户信息:" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | |
| | | |
| | | //根据流转卡和工序 查询出站单需要保存的信息 |
| | | ds = oCN.RunProcReturn(@"select a.HWorkShopID,b.HProcNo,b.HProcID,a.HMaterID,a.HQty,a.HInterID,HEntryID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,b.HCenterID from Sc_ProcessExchangeBillMain a WITH(NOLOCK) |
| | | inner join Sc_ProcessExchangeBillSub b WITH(NOLOCK) on a.HInterID=b.HInterID |
| | | left join Gy_Process p WITH(NOLOCK) on b.HProcID=p.HItemID |
| | |
| | | |
| | | CustomWriteLog("2.1.7给字段赋值 :" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取班次 |
| | | DataSet set= oCN.RunProcReturn("exec h_p_Gy_GetWorkShiftInfo " + HWorkShopID + "," + HCenterID, "h_p_Gy_GetWorkShiftInfo"); |
| | | if (set.Tables[0].Rows.Count > 0) { |
| | | HShiftsID = int.Parse(set.Tables[0].Rows[0]["HInterID"].ToString()); |
| | |
| | | |
| | | CustomWriteLog("2.1.9获取是否有出站单 :" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //如果没有出站单则新增出站单 |
| | | if (ds.Tables[0].Rows.Count != 0) |
| | | { |
| | | HInterID = long.Parse(ds.Tables[0].Rows[0]["HInterID"].ToString()); |
| | |
| | | if (HResult == "OK") |
| | | { |
| | | CustomWriteLog("2.1.11 条码反写 :" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //查询 出站单子表 条码表的数据 |
| | | ds = oCN.RunProcReturn("select * from Sc_StationOutBillSub_SN WITH(NOLOCK) where HInterID='" + HInterID + "' order by HEntryID desc", "Sc_StationOutBillSub_SN"); |
| | | |
| | | string HMakeTime = dic["HCreateTime"].ToString(); |
| | |
| | | else if (HResult == "NG") |
| | | { |
| | | CustomWriteLog("2.1.13 不合格反写 :" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | //通过条码查询生产质量汇报单数据 |
| | | ds = oCN.RunProcReturn("select * from Sc_QualityReportBillSub WITH(NOLOCK) where HBarCode='" + HBadCodeSN + "' order by HMakeDate desc", "Sc_QualityReportBillSub"); |
| | | |
| | | if (ds.Tables[0].Rows.Count > 0) { |
| | | string HBadDate = ds.Tables[0].Rows[0]["HMakeDate"].ToString(); |
| | | |
| | | //通过条码查询返修记录单的数据 |
| | | ds = oCN.RunProcReturn("select * from Sc_SourceLineRepairBillMain WITH(NOLOCK) where HBarCode='" + HBadCodeSN + "' order by HMakeDate desc", "Sc_SourceLineRepairBillMain"); |
| | | |
| | | if (ds.Tables[0].Rows.Count > 0) { |
| | | string HRepairDate = ds.Tables[0].Rows[0]["HMakeDate"].ToString(); |
| | | |
| | | //判断 生产质量汇报单的创建时间 是否 小于 返修记录的创建时间 |
| | | //正常情况是 先生成生产质量汇报单 然后才会去返修 |
| | | //如果条码生成质量汇报单的时间 大于返修记录的时间 则证明这个条码属于测试条码 正常 返修OK的才会进入这个出站单保存方法 不会进入NG |
| | | if (DateTime.Parse(HBadDate) < DateTime.Parse(HRepairDate)) { |
| | | //反写工序出站单的不良数量 |
| | | oCN.RunProc("update Sc_StationOutBillMain set HBadCount+=1,HWasterQty_Work+=1 where HInterID='" + HInterID + "'"); |
| | |
| | | |
| | | |
| | | //增加产线组装追溯单 |
| | | //查询流转卡和工序对应的配件信息 如果有 则查询配件的数量 |
| | | DataSet dataSet = oCN.RunProcReturn("exec h_p_Gy_BarCodeBillBomList '" + HProcExchBillNo + "'," + HProcID, "h_p_Gy_BarCodeBillBomList"); |
| | | |
| | | CustomWriteLog("2.1.18 产线组装追溯单查询 :" + HProcNumber + "----" + timer.Elapsed, DateTime.Now.ToString("yyyy-MM-dd")); |
| | |
| | | HDeptID = 0; |
| | | } |
| | | |
| | | //根据流转卡和工序 查询出站单需要保存的信息 |
| | | ds = oCN.RunProcReturn(@"select b.HProcNo,b.HProcID,a.HMaterID,a.HQty,a.HInterID,HEntryID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo |
| | | from Sc_ProcessExchangeBillMain a WITH(NOLOCK) |
| | | inner join Sc_ProcessExchangeBillSub b WITH(NOLOCK) on a.HInterID=b.HInterID |
| | |
| | | // return false; |
| | | //} |
| | | |
| | | //查询产线组装追溯单的数据 获取时间 根据时间判断对应 是哪天出站单的数据 |
| | | ds = oCN.RunProcReturn("select HDate from Sc_AssemblyBillMain WITH(NOLOCK) where HMainSourceInterID=" + HProcExchInterID + " and HMainSourceEntryID=" + HProcExchEntryID, "Sc_AssemblyBillMain"); |
| | | DateTime HDate=DateTime.Now; |
| | | //当产品没有配件的时候 查询 不良记录 |
| | | if (ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | //查询生产质量汇报单数据 |
| | | ds = oCN.RunProcReturn("select HMakeDate from Sc_QualityReportBillSub WITH(NOLOCK) where HProcExchInterID=" + HProcExchInterID + " and HProcExchEntryID=" + HProcExchEntryID+ " and HBarCode='" + HBadCodeSN + "'", "Sc_AssemblyBillMain"); |
| | | HDate = DateTime.Parse(ds.Tables[0].Rows[0]["HMakeDate"].ToString()); |
| | | } |
| | |
| | | try |
| | | { |
| | | |
| | | |
| | | //查询出站单的信息 方便参数保存 |
| | | DataSet ds = oCN.RunProcReturn(@"select a.HProcExchInterID,a.HProcExchEntryID,a.HProcExchBillNo,a.HProcID,p.HNumber from Sc_StationOutBillMain a WITH(NOLOCK) |
| | | left join Gy_Process p WITH(NOLOCK) on a.HProcID=p.HItemID where HInterID=" + HInterID + " and HBillNo='" + HBillNo + "'", "Sc_StationOutBillMain"); |
| | | string HProcExchInterID = ds.Tables[0].Rows[0]["HProcExchInterID"].ToString(); |
| | |
| | | string HProcNum = ds.Tables[0].Rows[0]["HNumber"].ToString(); |
| | | //注:因为 组装 拍照 时间间隔比较短 所以目前只明确组装工序才可以保存工艺参数 之后如果有其他工序的话 需要增加工序字段 |
| | | if (HProcID == "88"|| HProcNum=="005") { |
| | | //查询工艺参数临时表 获取当天条码对应的参数 |
| | | ds = oCN.RunProcReturn(@"select s.HItemID HMouldID,t.HItemID HTechParamID,HCount,HCreateTime,a.HResult from Sb_EquipMentCollectionTechParam_SN a WITH(NOLOCK) |
| | | inner join Gy_Source s WITH(NOLOCK) on a.HSourceCode=s.HNumber |
| | | inner join Gy_TechnologyParameter t WITH(NOLOCK) on a.HType=t.HName |
| | |
| | | long HICMOInterID = 0; |
| | | long HICMOEntryID = 0; |
| | | string HICMOBillNo = ""; |
| | | |
| | | //根据 条码+工序 查询流转卡信息 |
| | | ds = oCN.RunProcReturn(@"select b.HProcID, HMaterID,HUnitID,a.HICMOInterID,a.HICMOEntryID,a.HICMOBillNo,HBillNo,a.HInterID,b.HEntryID,a.HBillNo from Sc_ProcessExchangeBillMain a WITH(NOLOCK) |
| | | inner join Sc_ProcessExchangeBillSub b WITH(NOLOCK) on a.HInterID=b.HInterID |
| | | left join Gy_Process p WITH(NOLOCK) on b.HProcID=p.HItemID |