二开案例.元模型.视图
【应用场景】单据界面需要按不同应用场景使用不同的界面布局。
【案例演示】以销售出库单为例,演示多种在单据上启用视图的方式。
【视图来源】
将业务对象的布局单独抽出来,即为视图,一个业务对象可以有多个视图。
可以通过BOSIDE给业务对象新建视图。
注意:扩展对象有自己独立的视图,而不是共用父对象的视图。
销售出库单的视图:
销售出库单的下层扩展对象的视图:
从数据库获取销售出库单的视图信息:
-- 获取销售出库单的单据视图内码
SELECT c.FNAME AS 业务对象名称,a.FDEPENDENCYOBJECTID AS [业务对象内码(FormId)],b.FNAME AS 视图名称,a.FID AS [视图内码(layoutid)],*
FROM T_META_OBJECTTYPEVIEW a
LEFT JOIN T_META_OBJECTTYPEVIEW_L b ON a.FID=b.FID AND b.FLOCALEID=2052
LEFT JOIN T_META_OBJECTTYPE_L c ON a.FDEPENDENCYOBJECTID=c.FID AND c.FLOCALEID=2052
WHERE a.FDEPENDENCYOBJECTID IN ('SAL_OUTSTOCK','6bd6de25-2d2f-4c9e-aa95-166db3e9f198')
视图元数据:
视图元数据主要集中在LayoutInfos节点内,视图专注于界面布局,不处理业务逻辑。
【使用视图】
<1>通过业务对象的单据类型绑定视图。
通过Http数据监控可以分析当前业务对象使用的具体是哪个视图。
<2>给业务对象发布菜单时,指定视图。
<3>通过ShowForm打开窗体时,指定视图。
var showParameter = new BillShowParameter();
showParameter.FormId = "SAL_OUTSTOCK"; // 业务对象标识
showParameter.PageId = Guid.NewGuid().ToString();
showParameter.ParentPageId = this.View.PageId;
showParameter.Status = OperationStatus.ADDNEW; // 新增模式打开
showParameter.LayoutId = "fb477a41-15dc-443b-8f5b-673a3635c815"; // 指定以零售销售出库单的单据视图显示表单
this.View.ShowForm(showParameter);
具体可参考:【二开案例.列表插件.使用指定单据视图(布局)显示表单】https://vip.kingdee.com/article/146905570782318080
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.元模型.视图
本文2024-09-23 04:20:19发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164665.html