yxj
2022-10-31 036b201725444739c8c5ee9166df83d650fc0d72
销售出库扫描条码优化修改
1个文件已修改
33 ■■■■ 已修改文件
CLOUDWEB/WebService1.asmx.cs 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CLOUDWEB/WebService1.asmx.cs
@@ -39359,6 +39359,13 @@
                        //库存控制-WMS负库存控制     唯一条码、启用条码库存,仓库仓位获取顺序:界面上仓库仓位 > 条码库存仓库仓位
                        if (dal.omodel_View.HBarCodeType == "唯一条码" && oSystemParameterMain.WMS_WMSStockCtl == "Y")
                        {
                            //sWHSPCtl=1,表示界面上仓库仓位为空
                            if (sWHSPCtl == 1)
                            {
                                HWhID = 0;
                                HSPID = 0;
                            }
                            //判断条码库存   返回条码库存数量
                            DataSet DsWMS = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_GetWMSICInventory_Pack_ZhuoLi " + HInterID.ToString() + ",'" + HBillType + "','" + sHBarCode_Pack + "'," + HWhID.ToString() + "," + HSPID.ToString() + "," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_GetWMSICInventory_Pack_ZhuoLi");
                            if (DsWMS == null || DsWMS.Tables[0].Rows.Count == 0)
@@ -40827,7 +40834,7 @@
                    //先进先出控制
                    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");
                        DataSet FIFO = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFO_SellOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString() + "," + HOWNERID.ToString(), "h_p_WMS_AddSourceFIFO_SellOut");
                        if (FIFO == null || FIFO.Tables[0].Rows.Count == 0)
                        {
                            sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出临时表失败!";
@@ -40845,7 +40852,7 @@
                    //先进先出下架清单
                    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");
                        DataSet FIFOList = oCn.RunProcReturn("exec h_p_WMS_AddSourceFIFOList_SellOut " + HInterID.ToString() + ",'" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "'," + HFIFOWhID.ToString() + "," + HOWNERID.ToString(), "h_p_WMS_AddSourceFIFOList_SellOut");
                        if (FIFOList == null || FIFOList.Tables[0].Rows.Count == 0)
                        {
                            sErrMsg = "单据号:" + HBillNo + ",单据ID:" + HInterID + ";存入先进先出下架清单失败!";
@@ -42708,6 +42715,13 @@
                //库存控制-WMS负库存控制     唯一条码、启用条码库存,仓库仓位获取顺序:界面上仓库仓位 > 条码库存仓库仓位
                if (omodel_View.HBarCodeType == "唯一条码" && oSystemParameterMain.WMS_WMSStockCtl == "Y")
                {
                    //sWHSPCtl=1,表示界面上仓库仓位为空
                    if (sWHSPCtl == 1)
                    {
                        HWhID = 0;
                        HSPID = 0;
                    }
                    //判断条码库存   返回条码库存数量
                    DataSet DsWMS = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_GetWMSICInventory " + HInterID.ToString() + ",'" + HBillType + "','" + omodel_View.HBarCode + "'," + HWhID.ToString() + "," + HSPID.ToString() + "," + HStockOrgID.ToString(), "h_p_WMS_AddBarCode_GetWMSICInventory");
                    if (DsWMS == null || DsWMS.Tables[0].Rows.Count == 0)
@@ -42738,16 +42752,8 @@
                else
                //未启用条码库存,仓库仓位获取顺序:界面上仓库仓位 > 源单仓库仓位 > 物料默认仓库仓位
                {
                    if (HWhID == 0)
                    {
                        //匹配源单数据时只返回唯一一行数据,且仓库ID不为0,仓库仓位取返回的仓库仓位值
                        if (dsSource.Tables[0].Rows.Count == 1 && omodel_View.HWHID != 0)
                        {
                            HWhID = omodel_View.HWHID;
                            HSPID = omodel_View.HSPID;
                        }
                        //匹配源单数据时返回多行数据,判断拆分后的子表对应仓库仓位是否相同,相同 取返回的仓库仓位值;不同 取界面上仓库仓位
                        else
                    //sWHSPCtl=1,表示界面上仓库仓位为空    匹配源单数据时返回多行数据,判断返回的多行数据中仓库仓位是否相同
                    if (sWHSPCtl == 1 && dsSource.Tables[0].Rows.Count > 1)
                        {
                            double sSumQty2 = 0;
                            double sRemQty2 = 0;
@@ -42771,9 +42777,6 @@
                                {
                                    break;
                                }
                            }
                            HWhID = omodel_View.HWHID;
                            HSPID = omodel_View.HSPID;
                        }
                    }
                }