跳转至

表单控件

环境变量含义见 可获取的环境变量(参数)。表单控件脚本一般可使用 WebUserCurrentDocumentRelateDocumentParentDocumentParams

设置表单控件的值

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->值 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:String含义:新建表单时,需要默认显示当前用户姓名

示例代码:

//用当前用户名填充控件默认值
(function () {
    var applicant = getItemValueAsString("报销人");
    if (applicant == null || applicant == "") {
        applicant = getWebUser().getname();
    }
    return applicant;
})()

设置表单选项类控件的选项

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->选项 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:String或Options对象含义:选项内容

示例代码:

//用t_user表的数据填充选项,可以返回Options对象,或者 "1:A;2:B" 或者 "A;B"格式字符串
(function () {
    //创建指定类对象
    var opts = createOptions();
    opts.add("", "");
    var sql = "select id, name from t_user";
    var datas = queryByDSName("MY_DS", sql);//MY_DS为数据源
    if (datas != null) {
        for (var iterator = datas.iterator(); iterator.hasNext();) {
            var map1 = iterator.next();//取值
            var name = map1.get("name");
            var value = map1.get("id");
            opts.add(name, value);
        }
    }
    return opts;
})()

对表单控件输入进行校验

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->校验 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:String含义:校验失败时提示语

示例代码:

//校验控件值不能为空
(function () {
    var rt = getItemValueAsString("职务");
    if (rt == null || rt === "") {
        return "'职务'不能为空";
    }
    return "";
})()

判断表单控件是否只读

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->只读条件 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Boolean含义:true(只读)|false(可编辑)

示例代码:

//当控件IsStartup值为"02"时,则当前字段只读
(function () {
    var doc = getCurrentDocument();
    var IsSartup = doc.getItemValueAsString("IsStartup");
    var flag = true;
    if (IsSartup === "02") {
        flag = false;
    }
    return flag;
})()

判断表单控件是否需要隐藏

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->隐藏条件 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Boolean含义:true(隐藏)|false(可见)

示例代码:

//当控件IsStartup值为"02"时,则当前字段隐藏
(function () {
    var doc = getCurrentDocument();
    var IsSartup = doc.getItemValueAsString("IsStartup");
    var flag = true;
    if (IsSartup === "02") {
        flag = false;
    }
    return flag;
})()

判断表单控件打印时是否需要隐藏

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->表单控件->打印时隐藏条件 点击打印按钮时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Boolean含义:true(隐藏)|false(可见)

示例代码:

//当前用户的角色为非"系统管理员"时,则当前控件隐藏
(function () {
    var roleid = getRoleIdByName("系统管理员");
    var roles = getWebUser().getRoles();
    var isHidden = true;
    if (roles != null && roles.size() > 0) {
        for (var it = roles.iterator(); it.hasNext();) {
            var roleVO = it.next();
            if (roleid === roleVO.getId()) {
                isHidden = false;
                break;
            }
        }
    }
    return isHidden;
})()

表单按钮类控件动作执行前脚本

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->按钮 表单按钮动作执行前触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:String|Message含义:无返回值,不做处理

示例代码:

//按钮触发时,弹出对话框
(function () {
    return createConfirm("确定要提交文档?");
})()

表单按钮类控件动作执行后脚本

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->按钮 表单按钮动作执行后触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams

示例代码:

//表单按钮动作执行成功后给用户发送邮件通知
(function () {
    var from = getItemValueAsString("from");//发送人地址
    var to = getItemValueAsString("to");//接收人地址
    var subject = getItemValueAsString("subject");//邮件主题
    var content = getItemValueAsString("content");//邮件内容
    sendMail(from, to, subject, content);
})()

判断表单选项卡控件页签是否只读

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->选项卡->页签->只读条件 页签打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Boolean含义:返回输出一个布尔值,true代表只读,false代表不只读

示例代码:

//当用户为"张三"时可编辑,否则只读
(function () {
    var userName = getWebUser().getName();
    if (userName === "张三") {
        return false;
    }
    return true;
})()

判断表单选项卡控件页签是否在打印时隐藏

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->选项卡->页签->打印时隐藏条件 页签打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Boolean含义:返回输出一个布尔值,true代表隐藏,false代表不隐藏

示例代码:

//当用户为"张三"时,打印时隐藏,否则可见
(function () {
    var userName = getWebUser().getName();
    if (userName === "张三") {
        return false;
    }
    return true;
})()

设置调查控件问卷选项

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->调查控件->问卷脚本 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:Question对象含义:问卷内容

示例代码:

//调查控件
(function () {
    var q = createQuestion(1, "你的爱好("多选")");
    q.addCheckboxOption("羽毛球", "羽毛球");
    q.addCheckboxOption("游泳", "游泳");
    var qs = new java.util.ArrayList();
    qs.add(q);
    return qs;
})()

设置二维码控件内容

位置 触发时机 可以获取的环境变量(参数) 返回值
表单->二维码控件->内容脚本 表单打开时触发 WebUserCurrentDocumentRelateDocumentParentDocumentParams 类型:String含义:内容字符串,如内容为url地址,则扫码后会跳转到此url地址

示例代码:

//手机扫描二维码可跳转到百度搜索
(function () {
    var url = "https://www.baidu.com/";
    return url;
})()