找回密码
 注册成为天翎用户
查看: 1395|回复: 12

[已解决] 关于输出文本剔除无用代码的问题

[复制链接]
lixinboy 发表于 2021-2-24 10:39:41 | 显示全部楼层 |阅读模式
本帖最后由 T33 于 2021-3-17 16:34 编辑

【myApps/OBPM版本号】:
【浏览器类型】:360
【联系方式-QQ】:
【联系电话】:
【问题描述】:视图-列-值脚本中填写以下内容:

(function(){
  var id = getCurrentDocument().getId();
  var sql ="select DOMAINID,`ITEM_商品`,`ITEM_数量`  from `tlk_销售单据` WHERE PARENT='"+id+"'";
  var value = queryBySQL(sql);
  return value
})();

输出值是:(行数不确定,也有多行的)
[Document:null 11e1-81e2-37f74759-9124-47aada6b7467 商品洗衣液2kg袋装 数量2 ]

我只需要如下内容该如何修改以上代码:(以上红色部分删除)
商品洗衣液2kg袋装 数量2
nuan1989 发表于 2021-2-24 13:16:01 | 显示全部楼层
你要看你想在哪里过滤了, 可以在sql过滤.
  1. var sql ="select DOMAINID,`ITEM_商品`,`ITEM_数量`  from `tlk_销售单据` WHERE PARENT='"+id+"'" and DOMAINID='11e1-81e2-37f74759-9124-47aada6b7467';
复制代码


也可以在脚本那里过滤, 脚本过滤就是写个for循环判断下.
回复

使用道具 举报

nuan1989 发表于 2021-2-24 13:16:40 | 显示全部楼层
数据量如果超级大, 建议在sql过滤. sql层面有索引可以优化.
回复

使用道具 举报

 楼主| lixinboy 发表于 2021-2-24 13:48:20 | 显示全部楼层
数据里面的ID值不是固定的
回复

使用道具 举报

admin 发表于 2021-2-24 16:08:38 | 显示全部楼层
该问题已经安排技术同事处理,可以先加入我们的技术QQ群哈~ 182378297
回复

使用道具 举报

Abby 发表于 2021-2-24 17:21:33 | 显示全部楼层
您是要在视图列中返回表单字段值嘛,可以用以下代码
  1. (function(){  
  2.   var sql="select * from tlk_报表示例"  
  3.   var datas=findBySQL(sql);  
  4.   println(datas);  
  5.   var a=datas.getItemValueAsString("所属公司");
  6. var b=datas.getItemValueAsString("类型")
  7.   return a+b;  
  8.   })()
复制代码
回复

使用道具 举报

nuan1989 发表于 2021-2-24 20:53:02 | 显示全部楼层
lixinboy 发表于 2021-2-24 13:48
数据里面的ID值不是固定的

你得说清, 你想要做啥用, 想要什么样效果, id不是固定, 那其他呢 ? 有没固定的. 你希望过滤掉不需要的. 那你得有"需要的", 对吧?
回复

使用道具 举报

 楼主| lixinboy 发表于 2021-2-27 10:25:19 | 显示全部楼层
根据以上代码进行了修改,可以达到我需要的效果。但是如果此数据中有多个数据时以下数据只显示一条数据,这个问题该如何修改?
(function(){  
  var id = getCurrentDocument().getId();
  var sql ="select DOMAINID,`ITEM_商品`,`ITEM_数量`  from `tlk_销售单据` WHERE PARENT='"+id+"'";
  var datas=findBySQL(sql);  
  println(datas);  
  var a=datas.getItemValueAsString("商品");
var b=datas.getItemValueAsString("数量")
  return "商品:"+a+",数量:"+b;  
  })()
回复

使用道具 举报

 楼主| lixinboy 发表于 2021-2-27 11:23:51 | 显示全部楼层
Abby 发表于 2021-2-24 17:21
您是要在视图列中返回表单字段值嘛,可以用以下代码

(function(){  
  var id = getCurrentDocument().getId();
  var sql ="select DOMAINID,`ITEM_商品`,`ITEM_数量`  from `tlk_销售单据` WHERE PARENT='"+id+"'";
  var datas=findBySQL(sql);  
  println(datas);  
  var a=datas.getItemValueAsString("商品");
  var b=datas.getItemValueAsString("数量")
  return "商品:"+a+",数量:"+b;  
  })()

对你写的代码进行了修改,可以实现我的需求,但是此字段中可能会有多条数据,只能显示一条,该如何修改
回复

使用道具 举报

Abby 发表于 2021-3-1 20:03:14 | 显示全部楼层
你要实现字段的所有数据都显示在一个视图列?
回复

使用道具 举报

本版积分规则

手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-14 22:59

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表