脚本回填--指定单元格回填

3867
0

曦文 初学数据Lv2

发表于2020-12-4 14:17

楼主
本帖最后由 曦文 于 2020-12-4 14:57 编辑

  • 应为场景:点击主表后弹出子表,勾选子表数据,点击确定进行回填主表指定单元格
1、主表设置

2、子表设置
(1)子表勾选框字段类型:字符

(2)回填属性  编辑器为【多选按钮】,枚举值为【:1】,勾上显示编辑器

(3)点击事件选择结束编辑(子表勾选框只允许单选)


  1. var row= g_formmgr.rpts["GRID1"].gridbase.addDelBtnSelectCell.row;//获取点击单元格所在的行号
  2. var c =g_formmgr.rpts["GRID1"].gridbase.getRowCount();//获取表GRID1行数
  3. for(var r=1;r<c;r++){
  4. var grid = g_formmgr.rpts["GRID1"];//对应表格id
  5. var y=r+1;
  6. if(r==row){
  7. grid.setValue({"name":"B"+y,"value":1});//勾选按钮赋值(勾选:1,不勾选:0)
  8. }else {
  9. grid.setValue({"name":"B"+y,"value":0});
  10. };
  11. }

复制代码


3、对话框钻取选择脚本回填
(1)子表脚本
  1. debugger;
  2. var r = g_formmgr.rpts["GRID1"].gridbase.getRowCount();
  3. var result= [];
  4. for(var i=0;i<r;i++){
  5. var check = g_formmgr.rpts["GRID1"].gridbase.getValue(i,1);
  6. if("1" == check){
  7. var row = [];
  8. var col1 = g_formmgr.rpts["GRID1"].gridbase.getValue(i,2);
  9. var col2 = g_formmgr.rpts["GRID1"].gridbase.getValue(i,3);
  10. row.push(col1);
  11. row.push(col2);
  12. result.push(row);
  13. }

  14. }
复制代码


(2)主表脚本

  1. debugger;
  2. var row1= g_formmgr.rpts["GRID1"].gridbase.addDelBtnSelectCell.row;
  3. var addDatas = result;
  4. for(var r=0;r<addDatas.length;r++){
  5. var row = addDatas[r];
  6. g_formmgr.setValue({name:"GRID1.D3",value:row[0],r:row1});
  7. g_formmgr.setValue({name:"GRID1.E3",value:row[1],r:row1});
  8. }
复制代码


最近看过此主题的会员

esen_4O6N6U6ZN2

esen_5D22IXI1KM

dwg

esen_5G9CALTNBC

keer_

naqinga

esen_56A69VDG7S

tanxzh

lcjlcj

waejing

alimu

fenglan

liulei6511

esen_50U2PL1OSG1M

esen_4WCNFR76FD

张名

0个回答

只看楼主

登录后可回答问题,请登录注册

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

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号