方法示例
1.getDocItemValue(docid, fieldName)
示例(实现getDocItemValue(docid, fieldName)函数的应用,获取指定文档的Item值)

//表单某字段值为指定文档的指定字段的值(值脚本)
(function () {
    var docid = getCurrentDocument().getId();
    var value = getDocItemValue(docid, "字段一");
    return value;
})()

2.getDocItemValueAsString(docid, fieldName)
示例(实现getDocItemValueAsString(docid, fieldName)函数的应用,获取指定文档的Item值)

//表单某字段值为指定文档的指定字段的值(值脚本)
(function () {
    var doc = getCurrentDocument();
    var docid = doc.getId();
    var value = getDocItemValueAsString(docid, "文档名称");
    return value;
})()

3.getDocItemValueAsDouble(docid, fieldName)
示例(实现getDocItemValueAsDouble(docid, fieldName)函数的应用,获取指定文档的Item值)

//表单某字段值为指定文档的指定字段的值(值脚本)
(function () {
    var doc = getCurrentDocument();
    var docid = doc.getId();
    var value = getDocItemValueAsDouble(docid, "文档金额");
    return value;
})()

4.getDocItemValueAsDate(docid, fieldName)
示例(实现getDocItemValueAsDate(docid, fieldName)函数的应用,获取指定文档的Item值)

//表单某字段值为指定文档的指定字段的值(值脚本)
(function () {
    var doc = getCurrentDocument();
    var docid = doc.getId();
    var value = getDocItemValueAsDate(docid, "文档日期");
    return value;
})()

5.getDocItemValueAsInt(docid, fieldName)
示例(实现getDocItemValueAsInt(docid, fieldName)函数的应用,获取指定文档的Item值)

//表单某字段值为指定文档的指定字段的值(值脚本)
(function () {
    var doc = getCurrentDocument();
    var docid = doc.getId();
    var value = getDocItemValueAsInt(docid, "文档数量");
    return value;
})()

6.findDocument(docid)
示例(实现findDocument(docid)函数的应用,获取Document对象)

//根据指定的docid获取文档对象
(function () {
    var id = getCurrentDocument().getId();//获取当前文档Id
    var value = findDocument(id);  //根据文档id获取文档对象
    return value;
})()

7.queryByDQL(dql)
示例(实现queryByDQL(dql)函数的应用,查询文档记录(DQL))

//表单某字段值为根据DQL姓名字段的值查询出对应的电话(值脚本)
(function () {
    var user = getItemValue("DQL姓名");
    var rtn = '';
    if (user != null && user.trim().length() > 0) {
        var dql = "$formname='查询文档记录DQL and DQL姓名='" + user + "'";
        var query = queryByDQL(dql);
        if (query != null) {
            var iter = query.iterator();
            if (iter != null && iter.hasNext()) {
                doc = iter.next();
                rtn = doc.getItemValueAsString("DQL电话");
            }
        }
    }
    return rtn;
})()

8.queryBySQL(sql)
示例(实现queryBySQL(sql)函数的应用,查询文档记录(SQL))

(function () {
    var user = getItemValue("SQL姓名");
    var rtn = '';
    if (user != null && user.trim().length() > 0) {
        var sql = "select * from tlk_查询文档记录SQL where item_SQL姓名='" + user + "'";
        var query = queryBySQL(sql);
        if (query != null) {
            var iter = query.iterator();
            if (iter != null && iter.hasNext()) {
                doc = iter.next();
                rtn = doc.getItemValueAsString("SQL电话");
            }
        }
    }
    return rtn;
})()

9.queryByDQLWithCache(dql)
示例(实现queryByDQLWithCache(dql)函数的应用,带缓存查询文档记录(DQL))

//主子表单,主表单某字段值为当前子文档列表某字段值总和 (值脚本)
(function () {
    var docid = getId();
    var w1 = " and $parent.$id = '" + docid + "'";
    var temp1 = "";
    var dql1 = "$formname  = '带缓存查询文档记录DQL子表'" + w1;
    var subdocs1 = queryByDQLWithCache(dql1);
    if (subdocs1 != null && subdocs1.size() > 0) {
        println("subdocs1----> " + subdocs1.size());
        for (var iter1 = subdocs1.iterator(); iter1.hasNext();) {
            var subdoc1 = iter1.next();
            temp1 += subdoc1.getItemValueAsString("缓存子单价");
            println("temp1-----> " + temp1);
        }
    }
    return temp1;
})()

10.queryBySQLWithCache(sql)
示例(实现queryBySQLWithCache(sql)函数的应用,带缓存查询文档记录(SQL))

//主子表单,主表单某字段值为当前子文档列表某字段值总和 (值脚本)
(function () {
    var docid = getId();
    var temp = "";
    var sql = "select * from tlk_带缓存查询文档记录SQL子表 where parent='" + docid + "'"
    var subdocs = queryBySQLWithCache(sql);
    if (subdocs != null && subdocs.size() > 0) {
        println("subdocs----> " + subdocs.size());
        for (var iter = subdocs.iterator(); iter.hasNext();) {
            var subdoc = iter.next();
            temp += subdoc.getItemValueAsString("缓存子单价");
            println("temp-----> " + temp);
        }
    }
    return temp;
})()

11.findByDQL(dql)
示例(实现findByDQL(dql)函数的应用,查找文档对象(DQL))

//两个表单A、B,B表单某字段值为A表单某字段值 (值脚本)
(function () {
    var dql = "$formname  = '查找文档A对象DQL'";
    var datas = findByDQL(dql);
    println(datas);
    var temp = datas.getItemValueAsString("A编号");
    return temp;
})()

12.findBySQL(sql)
示例(实现findBySQL(sql)函数的应用,查找文档对象(SQL))

//两个表单A、B,B表单某字段值为A表单某字段值 (值脚本)
(function () {
    var sql = "select * from tlk_查找文档A对象SQL"
    var datas = findBySQL(sql);
    println(datas);
    var temp = datas.getItemValueAsString("A编号");
    return temp;
})()

13.queryByDQLDomain(dql, domainName)
示例(实现queryByDQLDomain(dql, domainName)函数的应用,根据域名查询文档集合(DQL))

//两个表单A、B,B表单某字段值为查询出A表单的文档个数 (值脚本)
(function () {
    var dql = "$formname= '根据域名查询文档A集合DQL'";
    var doc = queryByDQLDomain(dql, "testdemo");
    var value = doc.size();
    return value;
})()

14.countByDQL(dql)
示例(实现countByDQL(dql)函数的应用,根据域名查询文档集合(DQL))

//两个表单A、B,B表单某字段值为查询出A表单的文档个数 (值脚本)
(function () {
    var dql = "$formname='统计文档个数DQL'";
    var t_count = countByDQL(dql);
    var rtn = 0;
    if (t_count > 0) {
        rtn = t_count;
    }
    return rtn;
})()

15.countBySQL(sql)
示例(实现countBySQL(sql)函数的应用,根据域名查询文档集合(SQL))

//两个表单A、B,B表单某字段值为查询出A表单的文档个数 (值脚本)
(function () {
    var sql = "select * from tlk_统计文档个数SQL";
    var t_count = countBySQL(sql);
    var rtn = 0;
    if (t_count > 0) {
        rtn = t_count;
    }
    return rtn;
})()

16.sumByDQL(dql, fieldName)
示例(实现sumByDQL(dql, fieldName)函数的应用,根据dql汇总符合条件的Document的指定字段(DQL))

//两个表单A、B,B表单某字段值为A表单某字段值总和 (值脚本)
(function () {
    var dql = "$formname  = '字段汇总A表单DQL'";
    var value = sumByDQL(dql, "A单价");
    return value;
})()

17.sumBySQL(sql)
示例(实现sumBySQL(sql)函数的应用,根据sql汇总符合条件的Document指定字段(SQL))

//两个表单A、B,B表单某字段值为A表单某字段值总和 (值脚本)
(function () {
    var sql = "select sum(item_A单价) from tlk_字段汇总A表单SQL";
    var value = sumBySQL(sql, "A单价");
    return value;
})()

18.checkFieldUnique(fieldName, fieldValue, msg)
示例(实现checkFieldUnique(fieldName, fieldValue, msg)函数的应用,判断字段的唯一性(校验脚本))

//判断表单某字段值是唯一的 (校验脚本)
(function () {
    var value = getItemValueAsString("唯一校验名称");
    var msg = "名称:" + value + "已经存在,请输入其它内容。";
    var rtn = checkFieldUnique("唯一校验名称", value, msg);
    return rtn;
})()

19.isFirtNodeByDocId(docid)
示例(实现isFirtNodeByDocId(docid)函数的应用,获取当前文档是否处在第一个节点,返回值为:true|false)

//判断当前文档是否处在第一个节点,如果是某控件值为当前登录用户,否则为空
(function () {
    var docid = getItemValueAsString("文档编号");
    var isFirstNode = isFirtNodeByDocId(docid);
    var value = getItemValueAsString("文档内容");
    if (isFirstNode) {
        if (value != null && value.trim().length() <= 0) {
            value = getWebUser().getName() + " --当前文档处在第一个节点";
        }
    } else {
        value = "";
    }
    return value;
})()

20 .isCompleteByDocId(docid)
示例(实现isCompleteByDocId(docid)函数的应用,获取当前文档是否审批完成,返回值为:true|false)

//判断当前文档流程是否完成,返回值如果是true,表单某控件就隐藏,反之显示
(function () {
    var docid = getItemValueAsString("文档编号");
    var isCompleted = isCompleteByDocId(docid);
    var value = getItemValueAsString("文档内容");
    var rtn = false;
    if (isCompleted) {
        rtn = true;
    }
    return rtn;
})()
文档更新时间: 2022-11-03 06:39   作者:admin