ソースを参照

修改过站方法调用存储过程

章政 7 年 前
コミット
d896b3a125

+ 1 - 1
UAS-MES/FunctionCode/Make/Make_BigBoxCollection.cs

@@ -303,7 +303,7 @@ namespace UAS_MES.Make
                                     //如果是线内并且下一工序等于当前岗位资源工序
                                     if (pa_nextstep != "" && pa_nextstep == User.CurrentStepCode)
                                     {
-                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集");
+                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集", out ErrorMessage);
                                     }
                                     //更新箱号的NextStepCode
                                     if (pa_totalqty.Text == "1")

+ 1 - 1
UAS-MES/FunctionCode/Make/Make_CartonBoxWeigh.cs

@@ -184,7 +184,7 @@ namespace UAS_MES.Make
                     //{
                     //    OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
                     //}
-                    LogicHandler.OutBoxStepPass(outboxcode.Text, ma_code.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + outboxcode.Text + "整箱过站", "卡通箱整箱过站");
+                    LogicHandler.OutBoxStepPass(outboxcode.Text, ma_code.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + outboxcode.Text + "整箱过站", "卡通箱整箱过站", out ErrorMessage);
                     dh.UpdateByCondition("package", "pa_printcount= nvl(pa_printcount,0)+1,pa_weight='" + ActualWeight + "',pa_status=1,pa_packageqty=pa_currentqty,pa_totalqty=pa_currentqty", "pa_outboxcode='" + outboxcode.Text + "'");
                     dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + outboxcode.Text + "'").ToString() + "' ,PA_CURRENTSTEP = '' ", "pa_outboxcode='" + outboxcode.Text + "'");
                     LoadCheckQTY();

+ 16 - 4
UAS-MES/FunctionCode/Make/Make_PackageCollection.cs

@@ -422,8 +422,14 @@ namespace UAS_MES.Make
                                             OperateResult.AppendText(">>卡通箱" + pa_outboxcode.Text + "满箱处于称重工序,请在卡通箱称重界面进行称重打印\n", Color.Black, sn_code);
                                             return;
                                         }
-                                        LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站");
-                                        dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                                        if (LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站", out ErrorMessage))
+                                        {
+                                            dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                                        }
+                                        else
+                                        {
+                                            OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
+                                        }
                                         LoadCollectedNum();
                                         LoadCheckQTY();
                                     }
@@ -541,8 +547,14 @@ namespace UAS_MES.Make
                         OperateResult.AppendText(">>卡通箱" + pa_outboxcode.Text + "处于称重工序,请在卡通箱称重界面进行操作\n", Color.Black, sn_code);
                         return;
                     }
-                    LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站");
-                    dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                    if (LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站", out ErrorMessage))
+                    {
+                        dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                    }
+                    else
+                    {
+                        OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
+                    }
                     LoadCheckQTY();
                 }
             }

+ 21 - 4
UAS-MES/FunctionCode/Make/Make_PackageCollectionWeigh.cs

@@ -449,8 +449,14 @@ namespace UAS_MES.Make
                                         OperateResult.AppendText(">>箱号" + pa_outboxcode.Text + "满箱封箱成功\n", Color.Green);
                                         LogicHandler.RecordProdWeight(pa_outboxcode.Text, "CARTON", float.Parse(ActWeigh.ToString()), "kg", User.UserLineCode, pr_code.Text, User.UserSourceCode, User.UserName);
                                         LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode.Text, User.UserLineCode, User.UserSourceCode, "卡通箱称重", "称量完成:" + weight.Text.Trim(), pa_outboxcode.Text, "");
-                                        LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站");
-                                        dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                                        if (LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站", out ErrorMessage))
+                                        {
+                                            dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                                        }
+                                        else
+                                        {
+                                            OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
+                                        }
                                         LoadCheckQTY();
                                         LoadCollectedNum();
                                         OperateResult.AppendText(">>箱号" + pa_outboxcode.Text + "称量完成\n", Color.Green);
@@ -522,6 +528,11 @@ namespace UAS_MES.Make
         private void Clean_Click(object sender, EventArgs e)
         {
             OperateResult.Clear();
+            for (int i = 0; i < 20; i++)
+            {
+                sn_code.Text = "SN30009" + i;
+                barcode_KeyDown(sender, new KeyEventArgs(Keys.Enter));
+            }
         }
 
         private void pr_code_TextChanged(object sender, EventArgs e)
@@ -572,8 +583,14 @@ namespace UAS_MES.Make
                     OperateResult.AppendText(">>箱号" + pa_outboxcode.Text + "封箱成功\n", Color.Green);
                     LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode.Text, User.UserLineCode, User.UserSourceCode, "卡通箱称重", "称量完成:" + weight.Text.Trim(), pa_outboxcode.Text, "");
                     LogicHandler.RecordProdWeight(pa_outboxcode.Text, "CARTON", float.Parse(ActWeigh.ToString()), "kg", User.UserLineCode, pr_code.Text, User.UserSourceCode, User.UserName);
-                    LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站");
-                    dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                    if (LogicHandler.OutBoxStepPass(pa_outboxcode.Text, ms_makecode.Text, User.UserSourceCode, User.UserCode, "卡通箱:" + pa_outboxcode.Text + "整箱过站", "卡通箱整箱过站", out ErrorMessage))
+                    {
+                        dh.UpdateByCondition("package", "pa_nextstep='" + dh.getFieldDataByCondition("packagedetail left join makeserial on ms_sncode=pd_barcode and ms_makecode=pd_makecode", "max(ms_nextstepcode)", "pd_outboxcode='" + pa_outboxcode.Text + "'").ToString() + "', PA_CURRENTSTEP = '' ", "pa_outboxcode='" + pa_outboxcode.Text + "'");
+                    }
+                    else
+                    {
+                        OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
+                    }
                     LoadCheckQTY();
                     if (!CollecRemark.Checked)
                     {

+ 1 - 1
UAS-MES/FunctionCode/Make/Make_PalletCollection.cs

@@ -281,7 +281,7 @@ namespace UAS_MES.Make
                                     //如果是线内并且下一工序等于当前岗位资源工序
                                     if (pa_nextstep != "" && pa_nextstep == User.CurrentStepCode)
                                     {
-                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集");
+                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集", out ErrorMessage);
                                     }
                                     if (pa_totalqty.Text == "1")
                                     {

+ 1 - 1
UAS-MES/FunctionCode/Make/Make_PalletWightCollection.cs

@@ -365,7 +365,7 @@ namespace UAS_MES.Make
                                     //如果是线内并且下一工序等于当前岗位资源工序
                                     if (pa_nextstep != "" && pa_nextstep == User.CurrentStepCode)
                                     {
-                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集");
+                                        LogicHandler.OutBoxStepPass(outboxcode.Text, pa_makecode.Text, User.UserSourceCode, User.UserCode, "栈板采集成功,栈板号:" + pa_outboxcode.Text, "栈板采集", out ErrorMessage);
                                     }
                                     if (pa_totalqty.Text == "1")
                                     {

+ 9 - 185
UAS-MES/PublicMethod/LogicHandler.cs

@@ -452,192 +452,16 @@ namespace UAS_MES.PublicMethod
         /// <param name="iUserCode"></param>
         /// <param name="iResult"></param>
         /// <param name="iBoxType"></param>
-        public static void OutBoxStepPass(string iOutBoxCode, string iMakeCode, string iSourceCode, string iUserCode, string iResult, string iBoxType)
+        public static bool OutBoxStepPass(string iOutBoxCode, string iMakeCode, string iSourceCode, string iUserCode, string iResult, string iBoxType,out string oErrorMessage)
         {
-            string CurrentStep = "";
-            string LineCode = "";
-            string CurrentStepName = "";
-            List<string> ExeSQL = new List<string>();
-            GetStepCodeAndNameAndLineBySource(iSourceCode, ref CurrentStep, ref CurrentStepName, ref LineCode);
-            sql.Clear();
-            sql.Append("insert into MakeProcess(mp_id,mp_makecode,mp_maid, mp_mscode,mp_sncode,mp_stepcode,mp_stepname,mp_craftcode");
-            sql.Append(",mp_craftname,mp_kind,mp_result,mp_indate,mp_inman,mp_wccode,mp_linecode,mp_sourcecode,mp_snstatus,mp_sncheckno");
-            sql.Append(",mp_snoutboxcode) select MakeProcess_seq.nextval, ma_code,ma_id,ms_code,ms_sncode,'" + CurrentStep + "','" + CurrentStepName + "',");
-            sql.Append("ms_craftcode,ms_craftname,'" + iBoxType + "','" + iResult + "',sysdate,'" + iUserCode + "',ma_wccode,'" + LineCode + "','" + iSourceCode + "',");
-            sql.Append("ms_status,ms_checkno,ms_outboxcode from makeserial left join mes_package_view on ms_makecode=v_makecode ");
-            sql.Append("and ms_sncode=v_barcode left join make on ma_code=ms_makecode where v_outboxcode='" + iOutBoxCode + "'");
-            ExeSQL.Add(sql.ToString());
-            //获取子箱的总数
-            sql.Clear();
-            sql.Append("select pd_makecode,count(1) num from packagedetail left join makeserial  ");
-            sql.Append("on ms_sncode=pd_barcode and ms_makecode=pd_makecode where pd_outboxcode='" + iOutBoxCode + "' group by pd_makecode");
-            DataTable MakeQTY = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
-            for (int i = 0; i < MakeQTY.Rows.Count; i++)
-            {
-                string ma_code = MakeQTY.Rows[i]["pd_makecode"].ToString();
-                string num = MakeQTY.Rows[i]["num"].ToString();
-                ExeSQL.Add("update makecraftdetail set mcd_inqty=mcd_inqty+" + num + ",mcd_outqty=mcd_outqty+" + num + ",mcd_okqty=mcd_okqty+" + num + " where mcd_macode='" + ma_code + "' and mcd_stepcode='" + User.CurrentStepCode + "'");
-            }
-            dh.ExecuteSQLTran(ExeSQL.ToArray());
-            ExeSQL.Clear();
-            //获取途程和产品信息
-            sql.Clear();
-            sql.Append("select ms_craftcode,ms_prodcode,ms_craftcode,ms_salecode,ms_outboxcode,pr_qualmethod,ms_makecode,ms_stepcode,ms_stepname,ms_paststep,nvl(pr_qcbatchqty,0)pr_qcbatchqty,");
-            sql.Append("nvl(pr_sendchecktype,'LineCode')pr_sendchecktype  from mes_package_view left join makeserial on ms_sncode=v_barcode ");
-            sql.Append("and ms_makecode=v_makecode left join product on ms_prodcode=pr_code where v_outboxcode='" + iOutBoxCode + "' and rownum=1");
-            DataTable dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
-            string prodcode = "";
-            string craftcode = "";
-            string paststep = "";
-            string pr_sendchecktype = "";
-            string ms_salecode = "";
-            string pr_qcbatchqty = "";
-            string pr_qualmethod = "";
-            string ms_craftcode = "";
-            string ms_outboxcode = "";
-            if (dt.Rows.Count > 0)
-            {
-                prodcode = dt.Rows[0]["ms_prodcode"].ToString();
-                craftcode = dt.Rows[0]["ms_craftcode"].ToString();
-                paststep = dt.Rows[0]["ms_paststep"].ToString();
-                pr_sendchecktype = dt.Rows[0]["pr_sendchecktype"].ToString();
-                ms_salecode = dt.Rows[0]["ms_salecode"].ToString();
-                pr_qcbatchqty = dt.Rows[0]["pr_qcbatchqty"].ToString();
-                pr_qualmethod = dt.Rows[0]["pr_qualmethod"].ToString();
-                ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
-                ms_outboxcode = dt.Rows[0]["ms_outboxcode"].ToString();
-            }
-            sql.Clear();
-            sql.Append("select cd_nextstepcode,cr_id,nvl(cd_ifmidinput,0)cd_ifmidinput,nvl(cd_ifmidfinish,0)cd_ifmidfinish from craft left join craftdetail ");
-            sql.Append("on cr_id=cd_crid where cr_code='" + craftcode + "' and cr_prodcode='" + prodcode + "' and cd_stepcode='" + CurrentStep + "'");
-            dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
-            if (dt.Rows.Count > 0)
-            {
-                string nextstepcode = dt.Rows[0]["cd_nextstepcode"].ToString();
-                string cr_id = dt.Rows[0]["cr_id"].ToString();
-                string cd_ifmidinput = dt.Rows[0]["cd_ifmidinput"].ToString();
-                string cd_ifmidfinish = dt.Rows[0]["cd_ifmidfinish"].ToString();
-                string ifpast = paststep.Contains(CurrentStep) ? "0" : "1";
-                //下一工序不为空的时候更新序列号的下一工序
-                if (nextstepcode != "")
-                {
-                    sql.Clear();
-                    sql.Append("merge into makeserial using mes_package_view on (v_outboxcode='" + iOutBoxCode + "' ");
-                    sql.Append("and ms_sncode=v_barcode and ms_makecode=v_makecode) when matched then update ");
-                    sql.Append(" set ms_stepcode='" + CurrentStep + "',ms_stepname='" + CurrentStepName + "',");
-                    sql.Append("ms_nextstepcode='" + nextstepcode + "', ms_sccode = '" + iSourceCode + "',ms_paststep = ");
-                    sql.Append("ms_paststep || case when " + ifpast + " > 0 then ',' || '" + CurrentStep + "' end");
-                    ExeSQL.Add(sql.ToString());
-                }
-                else
-                {
-                    //更新下一执行步骤
-                    sql.Clear();
-                    sql.Append("merge into makeserial using mes_package_view on (v_outboxcode='" + iOutBoxCode + "' ");
-                    sql.Append("and ms_sncode=v_barcode and ms_makecode=v_makecode) when matched then update ");
-                    sql.Append(" set ms_stepcode='" + CurrentStep + "',ms_stepname='" + CurrentStepName + "',ms_status=2,");
-                    sql.Append("ms_nextstepcode='', ms_sccode = '" + iSourceCode + "',ms_paststep = ");
-                    sql.Append("ms_paststep || case when " + ifpast + " > 0 then ',' || '" + CurrentStep + "' end");
-                    ExeSQL.Add(sql.ToString());
-                    //更新完工数量
-                    for (int i = 0; i < MakeQTY.Rows.Count; i++)
-                    {
-                        string ma_code = MakeQTY.Rows[i]["pd_makecode"].ToString();
-                        string num = MakeQTY.Rows[i]["num"].ToString();
-                        ExeSQL.Add("update make set ma_madeqty=nvl(ma_madeqty,0)+" + num + " where ma_code='" + ma_code + "'");
-                    }
-                }
-                string ifoqc = dh.getFieldDataByCondition("craftdetail", "cd_ifoqc", "cd_crid=" + cr_id + " and cd_stepcode='" + nextstepcode + "'").ToString();
-                //如果下一道工序是OQC需要生成送检批次
-                if (ifoqc == "-1")
-                {
-                    sql.Clear();
-                    sql.Append("select ob_checkno,nvl(ob_nowcheckqty,0)ob_nowcheckqty,nvl(ob_batchqty,0)ob_batchqty,pr_qualmethod,nvl(pr_qcbatchqty,0)pr_qcbatchqty,");
-                    sql.Append("nvl(pr_ifautocutcheckno, 0)pr_ifautocutcheckno,nvl(ob_id, 0)ob_id from product left join oqcbatch on pr_code");
-                    sql.Append("=ob_prodcode and ob_linecode='" + User.UserLineCode + "'and ob_status = 'ENTERING' ");
-                    sql.Append("AND OB_SOURCE = '工序' and ('" + pr_sendchecktype + "'='LineCode' or ob_salecode='" + ms_salecode + "') where pr_code = '" + prodcode + "'");
-                    dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
-                    string ob_id = "";
-                    string ob_checkno = "";
-                    string pr_ifautocutcheckno = "";
-                    int ob_nowcheckqty = 0;
-                    int ob_batchqty = 0;
-                    string pa_status = "";
-                    string pa_checkno = "";
-                    if (dt.Rows.Count > 0)
-                    {
-                        ob_id = dt.Rows[0]["ob_id"].ToString();
-                        ob_checkno = dt.Rows[0]["ob_checkno"].ToString();
-                        pr_ifautocutcheckno = dt.Rows[0]["pr_ifautocutcheckno"].ToString();
-                        ob_nowcheckqty = int.Parse(dt.Rows[0]["ob_nowcheckqty"].ToString());
-                        ob_batchqty = int.Parse(dt.Rows[0]["ob_batchqty"].ToString());
-                        if (ms_outboxcode != "")
-                        {
-                            dt = (DataTable)dh.ExecuteSql("SELECT max(pa_status)pa_status, max(pa_checkno)pa_checkno  FROM PACKAGE WHERE PA_OUTBOXCODE = '" + iOutBoxCode + "' ", "select");
-                            pa_status = dt.Rows[0]["pa_status"].ToString();
-                            pa_checkno = dt.Rows[0]["pa_checkno"].ToString();
-                        }
-                        //如果不存在抽检批次则重新赋值
-                        if (ob_checkno == "" || (pr_ifautocutcheckno != "0" && ob_nowcheckqty >= ob_batchqty && (ms_outboxcode == "" || (ms_outboxcode != "" && pa_status == "1" && pa_checkno == ""))))
-                        {
-                            if (ob_checkno != "")
-                            {
-                                dh.ExecuteSql("update OQCBatch set ob_status='UNCHECK' WHERE OB_CHECKNO='" + ob_checkno + "'", "update");
-                            }
-                            ob_id = dh.GetSEQ("oqcbatch_seq");
-                            ob_checkno = dh.GetSerialNumberByCaller("Make!CheckQC");
-                            sql.Clear();
-                            sql.Append("insert into OQCBatch(ob_id,ob_checkno,ob_makecode,ob_source,ob_indate,ob_inman,ob_batchqty,ob_status,ob_prodcode,");
-                            sql.Append("ob_projectcode,ob_craftcode,ob_stepcode,ob_nowcheckqty,ob_linecode,ob_sourcecode,ob_salecode)values(" + ob_id + ",");
-                            sql.Append(" '" + ob_checkno + "', '" + iMakeCode + "','工序',sysdate,'" + User.UserCode + "'," + pr_qcbatchqty + ",'ENTERING','" + prodcode + "',");
-                            sql.Append("'" + pr_qualmethod + "','" + ms_craftcode + "','" + User.CurrentStepCode + "',1,'" + User.UserLineCode + "','" + User.UserSourceCode + "',");
-                            sql.Append("case when '" + pr_sendchecktype + "' = 'LineCode' then '' else '" + ms_salecode + "' end)");
-                            ExeSQL.Add(sql.ToString());
-                        }
-                    }
-                    ExeSQL.Add("update package set pa_checkno='" + ob_checkno + "' where pa_outboxcode='" + iOutBoxCode + "'");
-                    //插入抽检批次明细表
-                    sql.Clear();
-                    sql.Append("insert into OQCBatchDetail(obd_id,obd_obid,obd_sncode,obd_outboxcode,obd_makecode,obd_checkno,obd_builddate,obd_prodcode) ");
-                    sql.Append(" select OQCBatchDetail_SEQ.nextval," + ob_id + ",ms_sncode,ms_outboxcode,ms_makecode,ms_checkno,sysdate,'" + prodcode + "' from ");
-                    sql.Append("makeserial where ms_outboxcode = '" + iOutBoxCode + "'");
-                    ExeSQL.Add(sql.ToString());
-                    sql.Clear();
-                    sql.Append("update OQCBatch set ob_nowcheckqty = (select count(1) from oqcbatchdetail where obd_obid = " + ob_id + ")  where ob_id = " + ob_id);
-                    ExeSQL.Add(sql.ToString());
-                    sql.Clear();
-                    sql.Append("merge into makeserial using mes_package_view on (v_outboxcode='" + iOutBoxCode + "' ");
-                    sql.Append("and ms_sncode=v_barcode and ms_makecode=v_makecode) when matched then update ");
-                    sql.Append(" set ms_checkno='" + ob_checkno + "'");
-                    dh.ExecuteSql(sql.ToString(), "update");
-                    if (pr_ifautocutcheckno != "0")
-                    {
-                        if (ms_outboxcode != "" && pa_status == "1")
-                        {
-                            //////已经封箱,判断是否箱内所有的序列号都已经送检了,等于0则表示都送检了
-                            if (dh.getFieldDataByCondition("packagedetail left join makeserial  on ms_sncode = pd_barcode and ms_makecode = pd_makecode ", "count(1) ", "pd_outboxcode = '" + ms_outboxcode + "' and nvl(ms_checkno,' ')= ' '").ToString() == "0")
-                            {
-                                ExeSQL.Add("update OQCBatch set ob_status='UNCHECK' WHERE OB_CHECKNO='" + ob_checkno + "'  AND ob_nowcheckqty>=ob_batchqty");
-                            }
-                        }
-                        else if (ms_outboxcode == "")
-                        {
-                            ExeSQL.Add("update OQCBatch set ob_status='UNCHECK' WHERE OB_CHECKNO='" + ob_checkno + "'  AND ob_nowcheckqty>=ob_batchqty");
-                        }
-                    }
-                }
-                //插入StepPass
-                sql.Clear();
-                sql.Append("insert into STEPPASSED(SP_ID,SP_IFTURNIN,SP_IFTURNOUT,SP_IFREWORK,SP_IFBACKFLOW,SP_CHECKNO,SP_RESULT");
-                sql.Append(",SP_SCCODE,SP_STEPCODE,SP_LINECODE,SP_WCCODE,SP_MAKECODE,SP_SNCODE,SP_YMD,SP_HM,SP_IFNG,SP_PRODCODE");
-                sql.Append(",SP_DATE,SP_CRAFTCODE,sp_inman)  select STEPPASSED_SEq.NEXTVAL,'" + cd_ifmidinput + "','" + cd_ifmidfinish + "',");
-                sql.Append("ms_ifrework,case when ms_ifrework=-1 then 0 when ms_stepcode='" + CurrentStep + "' then 0 when " + ifpast + ">0 ");
-                sql.Append("then -1 else 0 end,ms_checkno,'良品','" + iSourceCode + "','" + CurrentStep + "','" + LineCode + "',ms_wccode,ms_makecode,ms_sncode,");
-                sql.Append("to_char(sysdate,'yyyymmdd'),to_char(sysdate,'hh24miss'),0,ms_prodcode,SYSDATE,ms_craftcode,'" + iUserCode + "' ");
-                sql.Append("from mes_package_view left join makeserial on ms_sncode=v_barcode and ms_makecode=v_makecode where v_outboxcode='" + iOutBoxCode + "'");
-                ExeSQL.Add(sql.ToString());
-                dh.ExecuteSQLTran(ExeSQL.ToArray());
-            }
+            oErrorMessage = "";
+            string[] param = new string[] { iOutBoxCode, iMakeCode, iSourceCode, iUserCode,iResult ,iBoxType, oErrorMessage };
+            dh.CallProcedure("CS_CARTONBOXSTEPRESULT", ref param);
+            oErrorMessage = param[6];
+            if (oErrorMessage == "" || oErrorMessage == null || oErrorMessage == "null")
+                return true;
+            else
+                return false;
         }
 
         /// <summary>