电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

脚本开发样例

来源:金蝶云社区作者:金蝶2024-09-232

脚本开发样例

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){

         

脚本开发样例

1 整体介绍脚本开发的介绍请参考脚本开发介绍。本文省略KDE进入和脚本注册内容,介绍脚本开发体验中心路径,以及部分样例。2 路径入口KDE...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信