zcrqwert 发表于 2024-2-1 09:34:11

请问明细表转json的自定义脚本函数如何使用

我明细表的字段为
明细表字段名       序号订单号    商品名称   含税金额   税率    除税金额   
明细表字段类型    整数   文本       文本             小数      小数      小数

请问如何用这个函数将明细表的转成json?我感觉这个函数要根据我的字段做修改,请问该如何修改?

明细表转json
function 明细转JSON字符串(a,b)
{
// 数据源 明细运算,明细 是数据源,可以通过 明细.length 取得 明细 的行数
var ary = new Array();
for (var i = 0 ; i < a.length;i++)
{
   var obj = new Object();
   obj.单据类型 =a;
   obj.订单 = b;
   ary.push( obj );
}
return JSON.stringify(ary);
}




zcrqwert 发表于 2024-2-1 11:13:46

自问自答吧,技术群的大佬给答案了,如图所示技术关键点
1.2个以上的字段可以继续添加入cdef等等
2.赋值时 要把数据项写成   数据源.sys数据项.m1_1序号
原因是
“数据源.a” 那就是把当前行的 a 的值传递进去
“数据源.sys数据项.a” 那就是把当前数据源整列的 a 传递进去
3. 匹配条件写 数据源._rowNo =1 表示只执行一次


这个功能其实主要用于系统之间的数据对接,某个表单存在明细表时,可以将明细表的值写成json当主表字段推给对方,提高工作效率



zcrqwert 发表于 2024-2-19 17:14:55

如果明细表有空值,用这个函数会输出花括号{},导致解析失败,得把{}改成 " "

[{"款项编号":{},"序号":1},{"款项编号":"124101","序号":2}]
[{"款项编号":"","序号":1},{"款项编号":"124101","序号":2}]
页: [1]
查看完整版本: 请问明细表转json的自定义脚本函数如何使用