表单(打开单据、列表、动态表单、简单、SQL帐表)示例代码-阿里云开发者社区

开发者社区> 开发与运维> 正文

表单(打开单据、列表、动态表单、简单、SQL帐表)示例代码

简介:

BOS IDE中配置了个界面,拖了动态表单界面,加了5个测试按钮。

1473236478z1ta1djhzdszh16phv6v1tu5uvop6vad.png

直接看效果:
点击“打开单据”维护界面,
会跳转到一个新的主界面页签,【物料】新增

1473236608wmmclzhiuwc2f3um7cw3zcx99aw7f22g.png


点击“打开列表”,会弹出【物料】列表界面,


1473236738mptaaepzgyaav6i3ayga3vyts3ssa7jc.png



击“打开动态表单”,会弹出动态表单,
这个打开动态表单界面是空的,一般动态表单都是要压入自定义参数值进去,或者从父界面获取需要的值。



1473237095sp1mmgpjexl951yl5exejyn31xnff15m.png

点击“打开简单帐表”,会弹出简单帐表,

1473237140dhpeohxi0w3pprreojrkihhhoeoepizi.png



点击“打开直接SQL帐表”,会弹出直接SQL帐表,
可以看到报错了,因为这个是所有【直接Sql帐表】的基对象,是不能直接使用的,我们开发的直接SQL帐表都是继承这个的,演示帐套里默认没有其他的直接SQL帐表,也就拿这个测试看下效果了。

1473237179chhht9rzvyvvyvvgd48089vvyt8g3hg8.png


附上代码:

  1. using Kingdee.BOS.Core.DynamicForm.PlugIn;

  2. using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;

  3. using System;

  4. using System.Collections.Generic;

  5. using System.ComponentModel;

  6. using System.Linq;

  7. using System.Text;


  8. namespace ClassLibrary60.Business.PlugIn

  9. {

  10.     [Description("模型打开测试")]

  11.     public class CustDynamicFormPlugIn : AbstractDynamicFormPlugIn

  12.     {

  13.         public override void ButtonClick(ButtonClickEventArgs e)

  14.         {

  15.             base.ButtonClick(e);

  16.             if (e.Key.EndsWith("Bill", StringComparison.OrdinalIgnoreCase))

  17.             {

  18.                 Kingdee.BOS.Core.Bill.BillShowParameter param = new Kingdee.BOS.Core.Bill.BillShowParameter();

  19.                 param.FormId = "BD_MATERIAL";//【物料】基础资料 业务对象标识,此处基础资料、单据类型都可以

  20.                 param.OpenStyle.ShowType = Kingdee.BOS.Core.DynamicForm.ShowType.MainNewTabPage;//打开方式,到主界面一个新的页签

  21.                 param.ParentPageId = this.View.PageId;//指定ParentPageId,可以实现打开的界面直接拿到父界面的数据 如this.View.ParentFormView.Model.DataObject

  22.                 this.View.ShowForm(param);

  23.             }

  24.             else if (e.Key.EndsWith("List", StringComparison.OrdinalIgnoreCase))

  25.             {

  26.                 Kingdee.BOS.Core.List.ListShowParameter param = new Kingdee.BOS.Core.List.ListShowParameter();

  27.                 param.FormId = "BD_MATERIAL";// 【物料】基础资料 业务对象标识,此处基础资料、单据类型都可以

  28.                 this.View.ShowForm(param);

  29.             }

  30.             else if (e.Key.EndsWith("DynamicForm", StringComparison.OrdinalIgnoreCase))

  31.             {

  32.                 Kingdee.BOS.Core.DynamicForm.DynamicFormShowParameter param = new Kingdee.BOS.Core.DynamicForm.DynamicFormShowParameter();

  33.                 param.FormId = "BD_QUERYAUXMATERIAL";//【查询辅助属性启用的物料】动态表单 业务对象标识,此处动态表单、基础资料、单据类型的都可以

  34.                 this.View.ShowForm(param);

  35.             }

  36.             else if (e.Key.EndsWith("SysReport", StringComparison.OrdinalIgnoreCase))

  37.             {

  38.                 Kingdee.BOS.Core.Report.SysReportShowParameter param = new Kingdee.BOS.Core.Report.SysReportShowParameter();

  39.                 param.FormId = "GL_RPT_GeneralLedger";//简单账表 总分类账 此处简单账表、树形账表、分页账表、透视表类型的该都是可以的

  40.                 this.View.ShowForm(param);

  41.             }

  42.             else if (e.Key.EndsWith("SQLReport", StringComparison.OrdinalIgnoreCase))

  43.             {

  44.                 Kingdee.BOS.Core.Report.SQLReportShowParameter param = new Kingdee.BOS.Core.Report.SQLReportShowParameter();

  45.                 param.FormId = "BOS_SQLReport";

  46.                 this.View.ShowForm(param);

  47.             }

  48.         }

  49.     }

  50. }


复制代码



至于每种类型的不同打开参数控制,可自行赋下值分析研究下













本文转自51GT51CTO博客,原文链接: http://blog.51cto.com/yataigp/2073547,如需转载请自行联系原作者





版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章