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

二开案例.单据转换插件.设置选单条件

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

二开案例.单据转换插件.设置选单条件

【应用场景】

通过插件的方式干预选单列表的结果集。


【案例演示】

采购申请单下推采购订单,通过插件方式,给采购申请单的选单列表附加过滤条件。


【实现步骤】

<1>编写单据转换插件,代码如下。

using Kingdee.BOS.Core.Metadata.ConvertElement.PlugIn;

using Kingdee.BOS.Core.Metadata.ConvertElement.PlugIn.Args;

using Kingdee.BOS.Util;

using System.ComponentModel;


namespace Jac.XkDemo.BOS.App.PlugIn

{

    /// <summary>

    /// 【单据转换插件】设置选单条件

    /// </summary>

    [Description("【单据转换插件】设置选单条件"), HotUpdate]

    public class SetFilterForSelectBillListConvertPlugIn : AbstractConvertPlugIn

    {

        /// <summary>

        /// 选单前事件;解析字段映射关系中配置的过滤选项

        /// 此事件开始前,刚完成用于选单列表取数的QueryBuilderParemeter的构建,e.FilterOptionsSQL来自于QueryBuilderParemeter.FilterClauseWihtKey

        /// 此事件结束后,e.FilterOptionsSQL将直接赋值给QueryBuilderParemeter.FilterClauseWihtKey

        /// </summary>

        /// <param name="e"></param>

        public override void OnParseFilterOptions(ParseFilterOptionsEventArgs e)

        {

            base.OnParseFilterOptions(e);

            // 增加过滤条件:申请数量大于10

            var filter = " FReqQty > 10 ";

            e.FilterOptionsSQL = e.FilterOptionsSQL.JoinFilterString(filter);

        }


        /// <summary>

        /// 选单前事件:解析过滤策略中配置的条件

        /// 此事件开始前,刚完成选单条件策略中的过滤条件的解析,e.FilterPolicySQL来自于:【选单条件策略中的过滤表格设置的过滤条件(JsonSetting)】+【选单条件策略中的附加条件(CustFilter)】+【按目标组织基础资料属性过滤的条件(TargetOrgBDFilterList)】

        /// 此事件结束后,e.FilterPolicySQL将使用AND操作符合并到QueryBuilderParemeter.FilterClauseWihtKey,后续作用于选单列表取数

        /// </s

二开案例.单据转换插件.设置选单条件

【应用场景】通过插件的方式干预选单列表的结果集。【案例演示】采购申请单下推采购订单,通过插件方式,给采购申请单的选单列表附加过滤条...
点击下载文档文档为doc格式

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

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