Foxtable(狐表)用户栏目专家坐堂 → 两个表做日期对比,在子表特定列自动填写值


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

主题:两个表做日期对比,在子表特定列自动填写值

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


加好友 发短信
等级:婴狐 帖子:31 积分:333 威望:0 精华:0 注册:2013/10/18 15:40:00
两个表做日期对比,在子表特定列自动填写值  发帖心情 Post By:2013/10/18 16:33:00 [只看该作者]

表A(父表) 内容为用户基础信息;其中一列为“办理时间”
表B(子表)内容为用户交费信息;其中一列为“交费日期”    这两个表的“时间”格式都为“年月日”

对表B输入信息时,将输入的“交费日期”,与表A中的“办理时间”对比!
若都是同一年,则在表B“用户类型”列中自动填入“新用户”
否则填入“往年用户” 这个该怎么写......

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


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

for each dr as datarow in datatables("表B").datarows
     dim drr as datarow = datatables("表A").find("用户ID='" & dr("用户ID") & "'")
     if drr isnot nothing then
         if dr("交费日期").Year=drr("交费日期").year then
              dr("用户类型")="新用户"
         else 
             dr("用户类型")="往年用户"
         end if
     end if
next

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


加好友 发短信
等级:婴狐 帖子:31 积分:333 威望:0 精华:0 注册:2013/10/18 15:40:00
  发帖心情 Post By:2013/10/18 16:42:00 [只看该作者]

谢谢,晚上回家试试去

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/10/19 14:46:00 [只看该作者]

既然有关联,在表B设置DataColChanged事件代码:

 

Select Case e.dataCol.Name

    Case "交费日期"

        Dim pr As DataRow = e.DataRow.GetParentRow("表A")

        if  pr IsNot Nothoing then

            dim rq1 As date = pr("办理日期")

            Dim rq2 As Date = e.Datarow(“交费日期”)

            if rq1.Year = rq2.Year Then

                  e.datarow("用户类型") = “新用户”

           Else

                  e.datarow("用户类型") = “往年用户”

           End if

End Select

 

楼主可以看看这些例子:

http://www.foxtable.com/help/topics/2649.htm

 


 回到顶部