电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

有源单批号拣货按最小包装量倍数拣货

来源:金蝶云社区作者:金蝶2024-09-1610

有源单批号拣货按最小包装量倍数拣货

一、【业务需求】

商品的单位是基本单位包,库存单位也是包;下单时最小包装数为25;销售出库根据先进先出拣货,可能会存在A批次库存 10 拣货10,B批次库存30 拣货15的情况,可否控制 先进先出拣货根据最小包装数去拣货;例如:订单数量下单数量 50包 ;若C批次库存 36包; 拣货可检25包,D批次 库存26 包,拣货拣25包;即按批次按最小包装的倍数拣货


二、【功能分析】

批号拣货插件 

批号捡货二次开发插件示例 

有源单批号拣货仓库过滤


二次开发步骤:

1.编写插件继承批号拣货插件基类;

2.根据业务需要重载对应事件RegexUseableInvData,该事件用于处理拣货前处理获取的即时库存数据, 获取到对应物料的【最小包装量】设置,设置批号拣货返回的数量,不直接取即时库存数量,而是:向下取整(即时库存量/最小包装量)*最小包装量


using Kingdee.BOS.App.Data;
using Kingdee.BOS.Core.Permission.Objects;
using Kingdee.BOS.Util;
using Kingdee.K3.SCM.App.Core.ConvertBusinessService;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
namespace Kingdee.K3.SCM.App.Stock.CustomizePlugIn
{
    public class LotPickIncreaseQtyFilter : AbstractLotPickPlugIn
    {
        public override void RegexUseableInvData(Dictionary<long, DataTable> dctinvDatas)
        {
            base.RegexUseableInvData(dctinvDatas);
            foreach (var item in dctinvDatas)
            {
                // 获取最小包装量
                string stockSql = string.Format(@"SELECT FINCREASEQTY FROM t_BD_MaterialPlan WHERE FINCREASEQTY != 0 and FMATERIALID = {0}", item.Key);
                using (IDataReader dataReader = DBUtils.ExecuteReader(this.Ctx, stockSql))
                {
                    while (dataReader.Read())
                    

有源单批号拣货按最小包装量倍数拣货

一、【业务需求】商品的单位是基本单位包,库存单位也是包;下单时最小包装数为25;销售出库根据先进先出拣货,可能会存在A批次库存 10 ...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信