金蝶云星空协同开发云——协同平台介绍及应用管理金蝶云星空生态与平台开发支持部Content0102插件创建和调试动态表单插件搭建开发环境选择对应的安装版本和环境进行本地开发环境的搭建,用于二开效果展示以及代码调试插件开发—创建工程添加表单插件工程添加动态表单插件插件开发—启用插件插件编写完毕,类库编译通过后进入BOS设计器,打开动态表单,配置插件。启动开发环境,调试启动开发环境,业务站点运行在IISExpress上,附加进程为:iisexpress.exeContent0102动态表单的创建动态表单插件8新建动态表单•右键子系统下的普通动态表单新增•可选择新建空白的普通动态表单,向导式动态表单,过滤条件框•同新增单据一样,同样可继承或者复制系统已有的动态表单9动态表单和单据的区别和普通单据区别,没有数据库表,因为没有数据库表实体,无法保存10常用方法属性介绍DynamicObject:数据包DynamicObjectCollection:数据包集合this.ListModel.FilterParameter.QuickFilterString:获取过滤条件this.View.Model.DataObject[控件标识]:获取指定控件的值this.View.Model.SetValue(控件标识,值):设置控件的值11案例一:打开动态表单,值传递,给动态表单单据体赋值在采购订单菜单中添加按钮,点击按钮将单据中的供应商内码传到动态表单,在动态表单中接收到这个内码,对界面单据体进行赋值12新建供应商信息动态表单13动态表单拉控件缺省行数,设置成0,否则后续打开单据后会有空行,同时设置显示序号,方便后面对单据体进行赋值14添加菜单按钮采购订单的菜单集合中添加查询供应商信息按钮用于打开供应商信息表单15动态表单插件-打开动态表单业务描述:在采购订单中点击按钮触发按钮点击事件,打开动态表单并把供应商ID传到动态表单中说明:DynamicFormShowParameter:请求加载表单维护界面时,需要设置的参数;如:DynamicFormShowParameterformPa=newDynamicFormShowParameter();formPa.CustomParams.Add(“FSupplierId”,Convert.ToString(this.View.Model.DataObject[“SupplierId_Id”]));打开界面:this.View.ShowForm(formPa)16动态表单插件-动态表单赋值业务描述:在动态表单中接收单据传过来的供应商ID信息,并给单据体赋值说明:OnLoad(EventArgse)事件:动态表单加载时触发接收单据传过来的信息:this.View.OpenParameter.GetCustomParameter("FSupplierId")获取动态表单单据体:Entityentity=this.View.BillBusinessInfo.GetEntity("F_QBQF_Entity");转换成行:DynamicObjectCollectionrows=this.Model.GetEntityDataObject(entity);17案例二:动态表单联查动态表单中,双击单据体可联查到对应的供应商信息18双击单据体,触发联查业务描述:在单据体中双击,弹出供应商界面说明:EntityRowDoubleClick:单据体双击事件BillShowParameter:加载单据/基础资料维护界面时,需要设置的参数,设置打开样式,指定打开的单据以及其内码19案列三:动态表单返回数据采购订单中新增供应商联系人电话文本字段,动态表单菜单集合中添加返回数据按钮和单据体上添加复选框字段,点击按钮将供应商联系人电话数据返回到采购订单中20动态表单返回数据21添加菜单按钮动态表单菜单集合中添加返回数据按钮22返回数据到主界面说明:BarItemClick:点击按钮事件将数据包返回到父界面上this.View.ReturnToParentWindow(数据包);业务描述:在动态表单中点击返回数据,先获取单据体上的数据,如果已勾选复选框则把数据添加到数据包中,最后返回到父界面上23案例四:动态表单值更新检验动态表单中新增一个日期字段,并勾选即时触发值更新,当输入的日期小于当前日期,进行弹窗提示24新增日期控件对于控件想马上触发值更新事件,BOSIDE需要选中“即时触发值更新事件”属性,否则事件延后直至触发值更新事件25值更新前事件说明:BeforeUpdateValue:值更新前事件业务描述:输入日期小于当前日期弹窗提示Thanksterimakasih感謝谢谢ありがとうขอบคุณ