起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: lz_net

[结贴] 关于事件自动触发问题

[复制链接]

242

主题

1418

帖子

2325

积分

金牌会员

批判主义者

Rank: 6Rank: 6

积分
2325
QQ
发表于 2014-6-9 00:00:58 | 显示全部楼层
你没有保存到数据库中呀  你看看第一个里面的循环执行了几次
如果我说对了 请别忘记点赞.
回复 支持 反对

使用道具 举报

55

主题

242

帖子

790

积分

高级会员

Rank: 4

积分
790
QQ
 楼主| 发表于 2014-6-9 00:05:55 | 显示全部楼层
本帖最后由 lz_net 于 2014-6-9 00:07 编辑
腹部流出的肉 发表于 2014-6-9 00:00
你没有保存到数据库中呀  你看看第一个里面的循环执行了几次

第一个循环可以将B表的全部行都修改,第二、三个循环只修改表中第一行对应的从表。

即第二第三个循环只触发一次。
回复 支持 反对

使用道具 举报

242

主题

1418

帖子

2325

积分

金牌会员

批判主义者

Rank: 6Rank: 6

积分
2325
QQ
发表于 2014-6-9 00:09:47 | 显示全部楼层
换getTotal()看看
如果我说对了 请别忘记点赞.
回复 支持 反对

使用道具 举报

55

主题

242

帖子

790

积分

高级会员

Rank: 4

积分
790
QQ
 楼主| 发表于 2014-6-9 00:12:55 | 显示全部楼层
腹部流出的肉 发表于 2014-6-9 00:00
你没有保存到数据库中呀  你看看第一个里面的循环执行了几次

可能是程序将第一个循环执行完,才触发B表的事件,只检测到值变化,只执行一次。C表的事件触发同理,也是只执行一次。

如果是这样,应该怎样去改呢?
回复 支持 反对

使用道具 举报

242

主题

1418

帖子

2325

积分

金牌会员

批判主义者

Rank: 6Rank: 6

积分
2325
QQ
发表于 2014-6-9 00:31:53 | 显示全部楼层
lz_net 发表于 2014-6-8 23:55
mainActivity.HX_LZZBValueChanged = function(event){//表A   
   if(event.column == 'fTZDH'){
//填充 ...

我分析可能原因是

mainActivity.HX_LZZBValueChanged中
HX_JHJH.setValue('fTZDH', fTZDH, rowID); //填充表B值
这句话执行时,就立马取执行了mainActivity.HX_JHJHValueChanged
然而不是等第一个中的循环结束时才执行第二个

以后以此类推  。。。

可以将这三段代码处理后放在第一个事件里面顺序执行
如果我说对了 请别忘记点赞.
回复 支持 反对

使用道具 举报

55

主题

242

帖子

790

积分

高级会员

Rank: 4

积分
790
QQ
 楼主| 发表于 2014-6-9 09:27:08 | 显示全部楼层
腹部流出的肉 发表于 2014-6-9 00:31
我分析可能原因是

mainActivity.HX_LZZBValueChanged中

将后两个循环写到第一个中,也未达到想要的结果。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35972
发表于 2014-6-9 11:43:30 | 显示全部楼层
你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间反馈结果,谢谢!
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

55

主题

242

帖子

790

积分

高级会员

Rank: 4

积分
790
QQ
 楼主| 发表于 2014-6-9 11:45:35 | 显示全部楼层
jishuang 发表于 2014-6-9 11:43
你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间 ...

谢谢,盼回复!
回复 支持 反对

使用道具 举报

55

主题

242

帖子

790

积分

高级会员

Rank: 4

积分
790
QQ
 楼主| 发表于 2014-6-10 11:28:14 | 显示全部楼层
jishuang 发表于 2014-6-9 11:43
你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间 ...

你好,有结果吗?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35972
发表于 2014-6-10 14:45:11 | 显示全部楼层
测试没问题
主从运行.png

代码如下:
mainActivity.dataMasterValueChanged = function(event){
if(event.column == "fName"){
   var value = event.value+"从表1";
  var data = justep.xbl("dataDetail");
  for(var i=0;i<data.getCount();i++){
    var rowid = data.getID(i);
    data.setValue("fName",value,rowid);
  }
}
};


mainActivity.dataDetailValueChanged = function(event){
if(event.column == "fName"){
   var value = event.value+"从表2";
  var data = justep.xbl("bizData1");
  for(var i=0;i<data.getCount();i++){
    var rowid = data.getID(i);
    data.setValue("fName",value,rowid);
  }
}
};



如果指的是bb这条数据对应的从数据没有修改,这是是不会修改的,因为数据没有加载,推荐在biz层,自己写sql操作数据
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-6-26 13:59 , Processed in 0.089241 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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