Foxtable(狐表)用户栏目专家坐堂 → [原创]代码问题


  共有4474人关注过本帖树形打印复制链接

主题:[原创]代码问题

帅哥哟,离线,有人找我吗?
爱相随
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
[原创]代码问题  发帖心情 Post By:2014/8/7 9:47:00 [只看该作者]

老师,我有ZJJHB和ZJSQB,以ZJJHBH表的JHBH和ZJSQB表的zJJHBH建立了关联,ZJSQB表的数据是由ZJJHB点击“生成单据—资金申请单”复制而来,并且在ZJJHB的逻辑列“JZ“列设置标记为TRUE,现在,如果在ZJSQB里把单据删除了(就是找不到关联的ZJJHBH了),则要求的ZJJHB的逻辑列变为FALSE。请老师帮忙编写一下代码,谢谢!!
[此贴子已经被作者于2014-8-7 9:48:51编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/7 9:48:00 [只看该作者]

BeforeDeleteDataRow 事件

找到对应行,设置为Flase即可


 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/8/7 9:50:00 [只看该作者]

请老师帮助贴出代码,谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/7 9:52:00 [只看该作者]

你这表名看晕人.你懂写复制,自然也懂写这个. 利用FINd找到对应的行即可

如果是子父表关系,直接获取父行GetParentRow 即可

搞不定请上例子.

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/7 9:54:00 [只看该作者]

Dim dr As DataRow = DataTables("ZJJHB").Find("产品编号 = '" & e.DataRow("产品编号") & "'")
If
dr IsNot Nothing Then
    e.Datarow("JZ") = False

End
If


 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/8/7 9:55:00 [只看该作者]

好吧,谢谢老师指点。。。

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2014/8/7 9:57:00 [只看该作者]

也可以在将子表的逻辑列改为表达式列,然后设置表达式为:iif(Parent(关联表名称)._Identify > 0,true,false)

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:929 积分:6500 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2014/8/7 11:00:00 [只看该作者]

老师,我在”资计划表“里有一行资金申请计划,有一列判断是否进行过付款申请,如果点击”生成单据—付款申请单“,则将选择的行将设定的列内容自动复制到资金申请表里,同时逻辑列自动变为TRUE,现在是,如果我把刚才复制过去的行删除了,则希望逻辑列的值自动改为FALSE。两个表都有JHBH列,并以此进行了关联。在资金计划表的DataColChanged里设了了如下代码,但好像不行,是代码放置的地方不对,还是代码有问题,请老师指点,麻烦了。。。
If e.DataCol.Name = "jhbh" Then '如果内容发生变动的是JHB
Dim dn As DataRow
        '在资金申请表查找同名的计划编号(JHBH)行,将找到的行赋值给变量dr
        dn = DataTables("zjsqb").Find("[jhbh] = '" & e.NewValue & "'")
        If dn IsNot Nothing Then '如果找到了同名的计划编号行,也就是dr不是Nothing
            e.DataRow("jz") = True
       Else
            e.DataRow("jz") = False
       End If
End If
[此贴子已经被作者于2014-8-7 11:03:00编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/7 11:05:00 [只看该作者]

 

[此贴子已经被作者于2014-8-7 11:07:35编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/7 11:08:00 [只看该作者]

写在BeforeDeleteDataRow事件

 

Dim dn As DataRow = DataTables("zjsqb").Find("[jhbh] = '" & e.DataRow("jhbh") & "'")
If dn IsNot Nothing Then '如果找到了同名的产品行,也就是dr不是Nothing
    dn("jz") = False
End If


 回到顶部
总数 40 1 2 3 4 下一页