二开案例.过滤插件.通用过滤条件框启用高级过滤

【应用场景】
通用过滤条件框启用高级过滤。
【注】高级过滤默认只在列表过滤和账表过滤开放使用。
【案例演示】
物料清单正查,过滤窗体,启用高级过滤。
注意:此案例仅演示如何启用高级过滤,不会真的把高级过滤生成的SQL条件传递给物料清单正查。

【实现步骤】
<1>编写过滤插件,代码如下。
using Kingdee.BOS.Core.CommonFilter.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
/// <summary>
/// 【过滤插件】通用过滤条件框启用高级过滤
/// </summary>
[Description("【过滤插件】通用过滤条件框启用高级过滤"), HotUpdate]
public class SetBatchFilterFilterPlugIn : AbstractCommonFilterPlugIn
{
/// <summary>
/// 高级过滤不支持的字段类型集合
/// </summary>
private readonly HashSet<int> invalidFields = new HashSet<int> { 60015, 1011 };
public override void AfterBindData(EventArgs e)
{
base.AfterBindData(e);
var batchFilterGrid = this.View.GetControl<BatchFilterGrid>("FBatchFilterGrid");
if (batchFilterGrid == null)
{
return;
}
if (this.CommonFilterModel.FilterObject == null || this.CommonFilterModel.BatchFilterObject == null)
{
return;
}
//var filterMetaData = CommonFilterServiceHelper.GetFilterMetaData(this.Context, string.Empty);
this.CommonFilterModel.BatchFilterObject.FilterM
二开案例.过滤插件.通用过滤条件框启用高级过滤
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



