二开案例.表单插件.单据上查询辅助资料时设置过滤条件
【应用场景】单据上查询辅助资料时设置过滤条件,例如只显示编码0开头的辅助资料,显示未审核的辅助资料数据。
【案例演示】采购订单,新增一个辅助资料字段,查询该辅助资料时,未审核的数据也显示出来。
【实现步骤】
<1>编写表单插件,代码如下。
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Util;
using System.ComponentModel;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
/// <summary>
/// 【表单插件】单据上查询辅助资料时设置过滤条件
/// </summary>
[Description("【表单插件】单据上查询辅助资料时设置过滤条件"), HotUpdate]
public class SetAssistantFilterBeforeF7SelectBillPlugIn : AbstractDynamicFormPlugIn
{
public override void BeforeF7Select(BeforeF7SelectEventArgs e)
{
base.BeforeF7Select(e);
// 给某个辅助资料字段的查询附加过滤条件
if (e.FieldKey.EqualsIgnoreCase("F_Jac_Assistant"))
{
// 只显示编码0开头的辅助资料
e.ListFilterParameter.Filter = e.ListFilterParameter.Filter.JoinFilterString(" FNumber like '%0%'");
// 未审核的辅助资料也显示出来
var listFilterParameter = ((Kingdee.BOS.Core.List.ListShowParameter)e.DynamicFormShowParameter).ListFilterParameter;
if (!string.IsNullOrWhiteSpace(listFilterParameter.Filter))
{
// 参考:Kingdee.BOS.Core.BasedataController.AssistantController.BuildCoreFilter
// 未审核的辅助资料也显示出来
listFilterParameter.Filter = listFilterParameter.Filter.Replace("AND FDOCUMENTSTATUS='C'", "");
}
return;
}
}
}
}
<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。
<3>BOSIDE扩展采购订单,新增单选辅助资料字段,注册表单插件,保存元数据,开发完毕。
如果使用Python插件,代码(文末附件可下载源代码)及注册方式如下图:
#【Python】【表单插件】单据上查询辅助资料时设置过滤条件
import clr
clr.AddReference('mscorlib')
clr.AddReference('Kingdee.BOS.Core')
from System import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
from Kingdee.BOS.Util import *
def BeforeF7Select(e):
if (e.FieldKey.Equals("F_Jac_Assistant", StringComparison.OrdinalIgnoreCase)):
# 只显示编码0开头的辅助资料
e.ListFilterParameter.Filter = StringUtils.JoinFilterString(e.ListFilterParameter.Filter, " FNumber like '%0%'");
# 未审核的辅助资料也显示出来
listFilterParameter = e.DynamicFormShowParameter.ListFilterParameter;
if (not String.IsNullOrWhiteSpace(listFilterParameter.Filter)):
# 未审核的辅助资料也显示出来
listFilterParameter.Filter = listFilterParameter.Filter.Replace("AND FDOCUMENTSTATUS='C'", "");
现在可以登录业务站点,打开采购订单新增界面,查询辅助资料,此时,未审核的辅助资料也可以显示出来啦。
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.表单插件.单据上查询辅助资料时设置过滤条件
本文2024-09-23 04:20:18发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164664.html
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf