选中明细表行并取值后继续查询
2025年2月19日大约 3 分钟脚本实例企业版独立版移动版
将第一个明细表的值选择后填入主表字段并查询将结果填入第二个明细表
需求是一个WebApp页面有两个明细表,单击选择第一个明细表任意一行后将指定列的值作为条件执行查询公式,并将查询结果填入第二个明细表。
这里介绍默认的方法相对比较简单同时也是推荐的方法。
1、第一步首先要在选择第一个明细表行的时候取得指定列的值并填入主表字段。
2、第二步再利用取得值作为第二个表间公式的条件再次进行查询,得到结果后填入第二个明细表。
取得明细表的值并填入主表字段
第一步
$(function(){
/*此处编写自定义代码,请确认此js文件名与您想修改的模板编号一致 */
//idx的值为明细表的ID
$("table[idx='f16b0a9b-7a99-4e41-bffd-3e57586a62f9']").datagrid({
//单击事件
onClickRow:function(Index,row){
//取得值并填入主表F_66033是主表字段,F_66035是明细表字段
$('input[name="F_66033"]').val(row.F_66035);
}
})
})
idx
idx 是WebApp页面中明细表的一个属性,其值为该明细表的ID,有两种方法可以获得。
1、打开 【数据字典】 执行下面的SQL脚本。将脚本中的T_2426改为要查询的明细表的表名
Select TID From SYS_TABLE Where TableName = 'T_2426'
2、在浏览器中打开WebApp页面,填报、修改或查阅均可。然后按下F12
键,打开开发者工具,再按下Ctr + F
,在搜索框输入idx
,就可以找到该属性值。
执行第二个表间公式
第二步
//执行表间公式,6为条件执行,函数的第二个参数为表间公式的ID
tiquformula(exec=6,'396c865f-e706-47d1-b48c-155595aee891');
第一步通过JS填入主表字段的值不会触发第二个表间公式,因此需要在填入值后再次执行表间公式。
完整的脚本
完整脚本
$(function(){
/*此处编写自定义代码,请确认此js文件名与您想修改的模板编号一致 */
//idx的值为明细表的ID
$("table[idx='f16b0a9b-7a99-4e41-bffd-3e57586a62f9']").datagrid({
//单击事件
onClickRow:function(Index,row){
//取得值并填入主表F_66033是主表字段,F_66035是明细表字段
$('input[name="F_66033"]').val(row.F_66035);
//执行表间公式,6为条件执行,函数的第二个参数为表间公式的ID
tiquformula(exec=6,'396c865f-e706-47d1-b48c-155595aee891');
}
})
})