脚本开发样例

1 整体介绍
脚本开发的介绍请参考脚本开发介绍。本文省略KDE进入和脚本注册内容,介绍脚本开发体验中心路径,以及部分样例。
2 路径入口
KDE提供JS脚本插件开发体验中心,入口路径为:【KDE】→【菜单栏】→【代码】→【脚本样例】。
3 开发样例
打开页面初始化之前验证权限
var plugin = new FormPlugin({ preOpenForm: function(e) { // 设置显示参数 - 是否触发TimerElapsed事件 var showParameter = e.getSource(); showParameter.setListentimerElapsed(true); // 设置显示参数 - 界面标题 showParameter.setCaption("hello world"); // 检查用户是否获得授权,如未授权,撤销界面显示 if (!this.checkFunctionPermission(showParameter.getFormId())){ e.setCancel(true); e.setCancelMessage("对不起,您无权访问此页面!"); } }, checkFunctionPermission: function(formId) { return false; } ); |
打开页面初始化文本框的值
var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e) { this.getModel().setValue("textfield",”这是一个文本框”); }, click : function(e){
}, closedCallBack : function(e){
}, confirmCallBack : function(e){
}, itemClick : function(e){
}, registerListener : function(e){
} }); |
打开页面初始化下拉框的值
| var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e) { this.getModel().setValue("combofield",1); }, click : function(e){
}, closedCallBack : function(e){
}, confirmCallBack : function(e){
}, itemClick : function(e){
}, registerListener : function(e){
} }); |
打开页面初始化单据体,并默认选择2条记录
var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e) { //初始化单据体 this.getModel().batchCreateNewEntryRow("entryentity", 5); for (var i=0; i<5; i++) { this.getModel().setValue("textfield1", "这是一条单据体记录"+toInt(i+1),i); this.getModel().setValue("date", new Date(),i); } //选中两条记录 var grid = this.getControl("entryentity"); var items = [0,1]; grid.selectRows(items,0); }, click : function(e){
}, closedCallBack : function(e){
}, confirmCallBack : function(e){
}, itemClick : function(e){
}, registerListener : function(e){
} }); |
打开页面初始化树
require("kd.bos.entity.tree.TreeNode"); var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e) { var tree = this.getView().getControl("treeviewap"); var root = new TreeNode("","rootnode","这是根节点","root"); var childnode1 = new TreeNode("","childnode1","这是子节点1",true,"node"); var leafnode1 = new TreeNode("childnode1","leafnode1","这是叶子节点1",true); var leafnode2 = new TreeNode("childnode1","leafnode2","这是叶子节点2",true); var leafnode3 = new TreeNode("childnode1","leafnode3","这是叶子节点3",true); childnode1.addChild(leafnode1); childnode1.addChild(leafnode2); childnode1.addChild(leafnode3); var childnode2 = new TreeNode("","childnode2","这是子节点2",true,"node"); var leafnode4 = new TreeNode("childnode2","leafnode4","这是叶子节点4",false); var leafnode5 = new TreeNode("childnode2","leafnode5","这是叶子节点5",false); var leafnode6 = new TreeNode("childnode2","leafnode6","这是叶子节点6",false); childnode2.addChild(leafnode4); childnode2.addChild(leafnode5); childnode2.addChild(leafnode6); var childnode3 = new TreeNode("","childnode3","这是子节点3",false,"node"); root.addChild(childnode1); root.addChild(childnode2); root.addChild(childnode3); tree.addNode(root); root.setIsOpened(true); }, click : function(e){
}, closedCallBack : function(e){
}, confirmCallBack : function(e){
}, itemClick : function(e){
}, registerListener : function(e){
} }); |
注册按钮点击事件,并拦截按钮的点击事件
var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e) {
}, registerListener : function(e){ //注册按钮点击事件 this.addClickListeners("button"); }, click : function(e){ //拦截按钮点击事件 var key = e.getSource().getKey(); if (key == "button"){ //按钮点击事件 } }, closedCallBack : function(e){
}, confirmCallBack : function(e){
}, itemClick : function(e){
} }); |
注册工具栏的点击事件,并拦截工具栏的点击事件
var plugin = new FormPlugin({ afterBindData : function(e){
}, afterCreateNewData : function(e){
}, registerListener : function(e){ //注册工具栏点击事件 this.addItemClickListeners("toolbarap"); }, itemClick : function(e){ //拦截工具栏点击事件 var key = e.getItemKey(); switch (key) { case "baritemap": //工具栏点击事件 break; case "baritemap1": //工具栏点击事件 break; case "baritemap2": //工具栏点击事件 break; } }, click : function(e){
}, closedCallBack : function(e){
}, confirmCallBack : function(e){
} }); |
注册单据体的点击事件,并拦截单据体的点击事件
var plugin = new FormPlugin({ KEY_ENTRYENTITY : "entryentity", afterBindData : function(e){
}, afterCreateNewData : function(e) {
}, registerListener : function(e){ //注册单据体点击事件 var entryGrid = this.getView().getControl(this.KEY_ENTRYENTITY); entryGrid.addRowClickListener(this); }, entryRowClick : function(e){
|
脚本开发样例
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



