二开方案.根据发布菜单中的自定义参数干预过滤方案中的过滤条件
如果希望将发布菜单中的自定义参数显示到过滤方案中的过滤条件之中,可以根据下方示例代码干预:
注意:此代码仅包含干预显示的代码,不可将过滤方案进行保存,如果保存会将动态添加的条件保存到数据库中,如果想进行保存,则需要干预保存事件,移除动态添加的条件。
using System.ComponentModel;
using System.Linq;
using Kingdee.BOS.Core.CommonFilter;
using Kingdee.BOS.Core.CommonFilter.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
using Kingdee.BOS.Model.ListFilter;
using Kingdee.BOS.Util;
namespace Kingdee.BOS.TestPlugIn
{
/// <inheritdoc />
[HotUpdate]
[Description("修改过滤方案条件")]
public class TestBillOrgIsolationFilterPlugIn : AbstractCommonFilterPlugIn
{
/// <inheritdoc />
public override void TreeNodeClick(TreeNodeArgs e)
{
base.TreeNodeClick(e);
var value = this.View.ParentFormView.OpenParameter.GetCustomParameter("FText");//获取发布菜单中的参数
var filterField = ((ListFilterModel)this.Model).FilterObject.GetFilterField("FText");//获取参数对应的字段
var compareType = filterField.CompareType.FirstOrDefault(w => w.Id.Equals("67"));//获取[=]比较符
var filterRow = new FilterRow("", filterField, compareType, value.ToString(), "", LogicOperate.AND,
Enu_ColType.STRING, filterField.Caption);
var jsonArray = ((ListFilterModel)this.Model).FilterObject.GetFilterRows();
jsonArray.Add(filterRow.ToJSONObject());
var filterGrid = this.View.GetControl<FilterGrid>(CommonFilterConst.ControlKey_FilterGrid);
filterGrid.SetFilterRows(jsonArray);
}
}
}
二开方案.根据发布菜单中的自定义参数干预过滤方案中的过滤条件
如果希望将发布菜单中的自定义参数显示到过滤方案中的过滤条件之中,可以根据下方示例代码干预:注意:此代码仅包含干预显示的代码,不可将...
点击下载文档
本文2024-09-16 18:31:27发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-22696.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章