Quellcode durchsuchen

记录半成品已被工单使用

章政 vor 8 Jahren
Ursprung
Commit
dc217a0baa
1 geänderte Dateien mit 11 neuen und 1 gelöschten Zeilen
  1. 11 1
      UAS-MES/FunctionCode/Make/Make_ColorBoxLoadPrint.cs

+ 11 - 1
UAS-MES/FunctionCode/Make/Make_ColorBoxLoadPrint.cs

@@ -157,13 +157,15 @@ namespace UAS_MES.Make
                             {
                                 if (LogicHandler.CheckStepSNAndMacode(macode, User.UserSourceCode, code.Text, User.UserCode, out macode, out Msid, out ErrorMessage))
                                 {
-                                    dt = (DataTable)dh.ExecuteSql("select ms_firstsn,cm_id,cm_stepcode,ms_makecode,cm_mccode from craftmaterial left join makeserial on cm_makecode=ms_makecode and cm_sncode=ms_sncode where ms_sncode='" + code.Text + "' and cm_makecode='" + macode + "'", "select");
+                                    dt = (DataTable)dh.ExecuteSql("select ms_firstsn,cm_id,cm_stepcode,ms_makecode,cm_mccode,cm_makecode,cm_craftcode from craftmaterial left join makeserial on cm_makecode=ms_makecode and cm_sncode=ms_sncode where ms_sncode='" + code.Text + "' and cm_makecode='" + macode + "'", "select");
                                     if (dt.Rows.Count > 0)
                                     {
                                         string ms_macode = dt.Rows[0]["ms_makecode"].ToString();
                                         ms_firstsn = dt.Rows[0]["ms_firstsn"].ToString();
                                         string cm_stepcode = dt.Rows[0]["cm_stepcode"].ToString();
                                         string cm_mccode = dt.Rows[0]["cm_mccode"].ToString();
+                                        string cm_makecode = dt.Rows[0]["cm_makecode"].ToString();
+                                        string cm_craftcode = dt.Rows[0]["cm_craftcode"].ToString();
                                         //进行下料
                                         sql.Clear();
                                         sql.Append("delete from craftmaterial where (cm_sncode in (select sn from makesnrelation where firstsn");
@@ -174,6 +176,12 @@ namespace UAS_MES.Make
                                         int count = dh.getRowCount("craftMaterial", "cm_mccode='" + cm_mccode + "' and cm_stepcode='" + cm_stepcode + "' and cm_sncode='" + code.Text + "'");
                                         if (count == 0)
                                             dh.UpdateByCondition("makecraftdetail ", "mcd_inqty=mcd_inqty-1,mcd_outqty=mcd_outqty-1,mcd_okqty = mcd_okqty - 1", "mcd_mccode='" + cm_mccode + "' and mcd_stepcode='" + cm_stepcode + "'");
+                                        sql.Clear();
+                                        sql.Append("update makeserial set ms_nextmacode='' where ms_sncode in(select cm_barcode from craftmaterial where ");
+                                        sql.Append("cm_makecode='" + cm_makecode + "' and cm_stepcode='" + cm_stepcode + "' and cm_craftcode='" + cm_craftcode + "' ");
+                                        sql.Append("and cm_materialtype=1 and nvl(cm_status,0) =0) and ms_nextmacode='" + ma_code.Text + "'");
+                                        dh.ExecuteSql(sql.GetString(), "update");
+                                        LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "上料采集", "下料成功", code.Text, "");
                                         OperateResult.AppendText(">>序列号" + code.Text + "下料成功\n", Color.Green, code);
                                     }
                                     else OperateResult.AppendText(">>该序列号未上料,无需下料\n", Color.Red, code);
@@ -220,6 +228,8 @@ namespace UAS_MES.Make
                             sql.Append("and sp_craftcode=ma_craftcode and sp_mothercode = ma_prodcode left join makeserial on ms_makecode=ma_code ");
                             sql.Append("where ma_code='" + macode + "'and sp_id=" + sp_id + " and mcd_stepcode = '" + User.CurrentStepCode + "' and ms_sncode='" + ms_sncode.Text + "'");
                             dh.BatchInsert(sql.GetString(), new string[] { "soncode", "barcode" }, CollectDataSonCode.ToArray(), CollectData.ToArray());
+                            //更新半成品SN已被工单使用
+                            dh.ExecuteSql("update makeserial set ms_nextmacode='" + ma_code.Text + "' where ms_id=(select max(ms_id) from makeserial where ms_sncode='" + ms_sncode.Text + "' and ms_makecode<>'" + ma_code.Text + "')", "update");
                             OperateResult.AppendText(">>序列号" + ms_sncode.Text + "对应的物料已经采集完成\n", Color.Green);
                             doc = lbl.Documents.Open(ftpOperater.DownLoadTo+ PrintLabel.Text);
                             Print.CodeSoft(Tag.ToString(), doc, PrintLabel.Text, PrintLabel.SelectedValue.ToString(), Printer.Text, ms_sncode.Text, int.Parse(PrintNum.Text), indate[PrintLabel.SelectedIndex]);