yxj
2022-06-24 e38ac8359f883d44de0144d9e137d6fff2534129
生产领料、销售出库先进先出功能修改
2个文件已修改
122 ■■■■■ 已修改文件
CLOUDWEB/WebService1.asmx.cs 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DLL/Pub_Class.dll 补丁 | 查看 | 原始文档 | blame | 历史
CLOUDWEB/WebService1.asmx.cs
@@ -27666,6 +27666,10 @@
                        {
                            sJson_FAUXPROPID = " \"FAUXPROPID\":{\"FAUXPROPID__FF100001\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAUXPROPID"]) + "\"}},";
                        }
                        else if (oSystemParameterMain.WMS_CampanyName == "森楷") //系统参数  客户定制化名称     空白为通用
                        {
                            sJson_FAUXPROPID = " \"FAUXPROPID\":{\"FAUXPROPID__FF100003\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAUXPROPID"]) + "\"}},";
                        }
                        else
                        {
                            sJson_FAUXPROPID = " \"FAUXPROPID\":{\"FAUXPROPID__FF100002\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAUXPROPID"]) + "\"}},";
@@ -34160,8 +34164,10 @@
            //    sErrMsg = "获取系统参数失败! " + sErrMsg;
            //    return false;
            //}
            //生产领料单-先进先出控制
            if (HBillType == "1204" && oSystemParameter.omodel.Kf_MateOutBill_FIFOCtl == "Y") //系统参数  生产领料单-先进先出控制
            //先进先出控制
            if ((HBillType == "1204" && oSystemParameter.omodel.Kf_MateOutBill_FIFOCtl == "Y")      //系统参数  生产领料单-先进先出控制
                || (HBillType == "1205" && oSystemParameter.omodel.Kf_SellOutBill_FIFOCtl == "Y")   //系统参数  销售出库单-先进先出控制
                )
            {
                DataSet FIFO = oCn.RunProcReturn("exec h_p_Kf_ICInventory_FIFO_Tmp_BarCode " + HBillID.ToString() + ",'" + HBillType + "','" + model.HBatchNo + "','" + model.HBarCode + "'," + model.HQty.ToString(), "h_p_Kf_ICInventory_FIFO_Tmp_BarCode");
                if (FIFO == null || FIFO.Tables[0].Rows.Count == 0)
@@ -35797,11 +35803,119 @@
                            }
                        }
                    }
                    //先进先出下架清单
                    else if (oSystemParameter.omodel.Kf_MateOutBill_FIFOList == "Y")  //系统参数  生产领料单-先进先出下架清单
                    {
                        DataSet FIFOList = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFOList_MateOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString(), "h_p_WMS_AddSourceFIFOList_MateOut");
                        if (FIFOList == null || FIFOList.Tables[0].Rows.Count == 0)
                        {
                            sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出下架清单失败!";
                            return null;
                        }
                        else
                        {
                            if (DBUtility.ClsPub.isLong(FIFOList.Tables[0].Rows[0][0]) == 1)
                            {
                                sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(FIFOList.Tables[0].Rows[0]["HRemark"]);
                                return null;
                            }
                        }
                    }
                    oBar.HMulSourceFlag = sMulSourceFlag;
                    oBar.HSourceBillType = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillType"]);
                    oBar.HSourceBillNo = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillNo"]);
                    oBar.HDeptID = DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0]["HDeptID"]);
                    oBar.HDeptName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HDeptName"]);
                    return oBar;
                }
                else
                {
                    sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HRemark"]);
                    return null;
                }
            }
        }
        #endregion
        #region 销售出库    扫描源单条码
        [WebMethod]
        public Model.ClsKf_ICStockBill_WMS get_SourceBarCode_SellOut(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HFIFOWhID, Int64 HOWNERID, ref string sErrMsg)
        {
            SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
            Model.ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS();
            Int64 sMulSourceFlag = 0;   //多源单标志(0为非多源单模式,1为多源单模式)
            //获取系统参数
            Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
            if (oSystemParameter.ShowBill(ref sErrMsg) == false)
            {
                sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";扫描源单时获取系统参数失败! " + sErrMsg;
                return null;
            }
            if (oSystemParameter.omodel.Kf_SellOutBill_MulSourceBill.ToUpper() == "Y") //系统参数  销售出库单-多源单模式
            {
                sMulSourceFlag = 1;
            }
            //将源单信息存入条码出入库临时表
            DataSet ds1 = oCn.RunProcReturn("exec h_p_WMS_AddSourceBarCode_SellOut " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + sMulSourceFlag.ToString() + ",'" + HMaker + "'," + HFIFOWhID.ToString() + "," + HOWNERID.ToString(), "h_p_WMS_AddSourceBarCode_SellOut");
            if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
            {
                sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";将源单信息存入条码出入库临时表失败!";
                return null;
            }
            else
            {
                if (DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0][0]) == 0)
                {
                    //先进先出控制
                    if (oSystemParameter.omodel.Kf_SellOutBill_FIFOCtl == "Y")  //系统参数  销售出库单-先进先出控制
                    {
                        DataSet FIFO = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFO_SellOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString(), "h_p_WMS_AddSourceFIFO_SellOut");
                        if (FIFO == null || FIFO.Tables[0].Rows.Count == 0)
                        {
                            sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出临时表失败!";
                            return null;
                        }
                        else
                        {
                            if (DBUtility.ClsPub.isLong(FIFO.Tables[0].Rows[0][0]) == 1)
                            {
                                sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(FIFO.Tables[0].Rows[0]["HRemark"]);
                                return null;
                            }
                        }
                    }
                    //先进先出下架清单
                    else if (oSystemParameter.omodel.Kf_SellOutBill_FIFOList == "Y")  //系统参数  销售出库单-先进先出下架清单
                    {
                        DataSet FIFOList = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFOList_SellOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString(), "h_p_WMS_AddSourceFIFOList_SellOut");
                        if (FIFOList == null || FIFOList.Tables[0].Rows.Count == 0)
                        {
                            sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出下架清单失败!";
                            return null;
                        }
                        else
                        {
                            if (DBUtility.ClsPub.isLong(FIFOList.Tables[0].Rows[0][0]) == 1)
                            {
                                sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";" + DBUtility.ClsPub.isStrNull(FIFOList.Tables[0].Rows[0]["HRemark"]);
                                return null;
                            }
                        }
                    }
                    oBar.HBarType = "源单条码";
                    oBar.HMulSourceFlag = sMulSourceFlag;
                    oBar.HSourceBillType = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillType"]);
                    oBar.HSourceBillNo = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSourceBillNo"]);
                    oBar.HSupID = DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0]["HSupID"]);
                    oBar.HSupName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HSupName"]);
                    oBar.HDeptID = DBUtility.ClsPub.isLong(ds1.Tables[0].Rows[0]["HDeptID"]);
                    oBar.HDeptName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HDeptName"]);
                    oBar.HCustom = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HCustom"]);
                    return oBar;
                }
                else
@@ -37756,7 +37870,7 @@
            //判断是否启用先进先出管理(Y,N),是否启用扫码简易模式,只显示已扫码源单记录(Y,N)
            if (HBillType == "1204")   //生产领料单
            {
                if (oSystemParameter.omodel.Kf_MateOutBill_FIFOCtl == "Y")   //生产领料单-先进先出控制
                if (oSystemParameter.omodel.Kf_MateOutBill_FIFOCtl == "Y" || oSystemParameter.omodel.Kf_MateOutBill_FIFOList == "Y")   //生产领料单-先进先出控制
                {
                    sFIFOCtl = "Y";
                }
@@ -37765,7 +37879,7 @@
                    sSimpleMode = "Y";
                }
            }
            if (HBillType == "1205" && oSystemParameter.omodel.Kf_SellOutBill_FIFOCtl == "Y")   //销售出库单-先进先出控制
            if (HBillType == "1205" && (oSystemParameter.omodel.Kf_SellOutBill_FIFOCtl == "Y" || oSystemParameter.omodel.Kf_SellOutBill_FIFOList == "Y"))   //销售出库单-先进先出控制
            {
                sFIFOCtl = "Y";
            }
DLL/Pub_Class.dll
Binary files differ