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

批号拣货插件

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

批号拣货插件


背景:很多客户对系统的批号拣货有个性化需求,在标准系统无法配置实现时,需要通过二开批号拣货插件满足。

场景:涉及录单时无源单批号拣货服务,以及上下游单据下推时(有源单)批号拣货服务。

步骤:1.编写插件继承批号拣货插件基类;2.根据业务需要重载对应事件实现逻辑;3.注册插件至对应服务配置界面。


场景一:无源单批号拣货插件

工程需引用:

Kingdee.BOS.dll

Kingdee.BOS.DataEntity.dll

Kingdee.K3.SCM.App.Core

using Kingdee.K3.SCM.App.Core.ConvertBusinessService;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ClassLibrary1
{
  public class Class1 : AbstractSinglePickPlugIn
  {
    /// <summary>
    /// 捡货之前(插件可取消捡货)
    /// </summary>
	public override bool BeforePicking(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.BeforePickingArgs e)
	{
	    return base.BeforePicking(e);
	}
		
	/// <summary>
    /// 系统参数设置为不检霍是否需要执行捡货
    /// </summary>
	public override bool DoPickWhenNoSysSet()
	{
	    return base.DoPickWhenNoSysSet();
	}
		
	/// <summary>
    /// 修正解释库存取数脚本
    /// </summary>
    /// <param name="sql">即时库存取数脚本(获得物料范围的即时库存数据信息)</param>
    /// <param name="paras">即时库存取数参数</param>
	public override string RegexGetInvDataSql(string sql, List paras)
	{
	    return base.RegexGetInvDataSql(sql, paras);
	}
		
	/// <summary>
    /// 处理当前行的捡货库存捡货结果
    /// </summary>
	public override System.Data.DataRow[] RegexSelectResultByCurRowData(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.RegexSelectResultByCurRowDataArgs e)
	{
	    return base.RegexSelectResultByCurRowData(e);
	}
		
	/// <summary>
    /// 无源单单条捡货库存筛选过滤条件
    /// </summary>
	public override string RegexSinglePickFilterString(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.RegexSinglePickFilterStringArgs e)
	{
	    return base.RegexSinglePickFilterString(e);
	}
		
	/// <summary>
    /// 根据当前行数据整理捡货库存筛选排序字符串
    /// </summary>
	public override string RegexSinglePickSortString(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.RegexCurRowPickSortStringArgs e)
	{
	    return base.RegexSinglePickSortString(e);
	}
		
    /// <summary>
    /// 捡货前重整即时库存数据
    /// </summary>
	public override void RegexUseableInvData(System.Data.DataTable invDatas)
	{
	    base.RegexUseableInvData(invDatas);
	}
		
	/// <summary>
	/// 完成无源单单条捡货
	/// </summary>
	public override void AfterSinglePicking(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.AfterSinglePickingArgs arg)
	{
	    base.AfterSinglePicking(arg);
	}
   }
}


场景二:有源单批号拣货插件

工程需引用:

Kingdee.BOS.dll

Kingdee.BOS.DataEntity.dll

Kingdee.K3.SCM.App.Core

namespace ClassLibrary2{    
    public class Class2 : AbstractLotPickPlugIn    
  { 
    public override bool BeforePicking(Kingdee.K3.SCM.App.Core.ConvertBusinessService.LotPickArgs.BeforePickingArgs e)        
    {            
	    return base.BeforePicking(e);        
    }
		
    public override bool DoPickWhenNoSysSet()        
	{            
        return base.DoPickWhenNoSysSet();    
	}
		
	public override string RegexGetInvDataSql(string sql, List paras)        
	{            
        return bas

批号拣货插件

背景:很多客户对系统的批号拣货有个性化需求,在标准系统无法配置实现时,需要通过二开批号拣货插件满足。场景:涉及录单时无源单批号拣货...
点击下载文档文档为doc格式

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

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