Foxtable(狐表)用户栏目专家坐堂 → 在有效期内每行的年月自动增长


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

主题:在有效期内每行的年月自动增长

美女呀,离线,留言给我吧!
liu1992
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:116 积分:1091 威望:0 精华:0 注册:2015/7/17 10:19:00
在有效期内每行的年月自动增长  发帖心情 Post By:2016/10/18 11:29:00 [只看该作者]

表A有一个合同有效期,表B可以根据表A的合同有效期自动生成年月的行,每行加一月。
表A

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20161018112600.png
图片点击可在新窗口打开查看
表B

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20161018112451.png
图片点击可在新窗口打开查看



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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/18 12:08:00 [只看该作者]


Dim d1 As Date = Tables("表A").Current("开始日期")
Dim d2 As Date = Tables("表A").Current("结束日期")

d1 = new Date(d1.Year,d1.Month,1)
d2 = new Date(d2.Year,d2.Month,Date.DaysInMonth(d2.Year,d2.Month))
Dim dr As DataRow
Do While d1 < d2
    dr = DataTables("表B").AddNew()
    dr("第三列") = Format(d1,"yyyy.MM")
    d1 = d1.AddMonths(1)
Loop

 回到顶部
美女呀,离线,留言给我吧!
liu1992
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:116 积分:1091 威望:0 精华:0 注册:2015/7/17 10:19:00
  发帖心情 Post By:2016/10/18 16:55:00 [只看该作者]

没有执行结果啊。
我再补充清楚一点啊,就是表A有合同号,表B也有合同号,在表A某条合同起始日期和结束日期内,表B相同合同号下自动新增年月行

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/18 16:58:00 [只看该作者]

看懂代码,改为自己的表名和列名。不会就上传项目

 回到顶部
美女呀,离线,留言给我吧!
liu1992
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:116 积分:1091 威望:0 精华:0 注册:2015/7/17 10:19:00
  发帖心情 Post By:2016/10/19 9:33:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:test.rar


请老师指导,谢谢!
密码:avic123
[此贴子已经被作者于2016/10/19 10:33:48编辑过]

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 10:08:00 [只看该作者]

Dim d1 As Date = Tables("合同管理").Current("起始日")
Dim d2 As Date = Tables("合同管理").Current("终止日")

d1 = new Date(d1.Year,d1.Month,1)
d2 = new Date(d2.Year,d2.Month,Date.DaysInMonth(d2.Year,d2.Month))
Dim dr As DataRow
DataTables("应实收记录").StopRedraw
Do While d1 < d2
    dr = DataTables("应实收记录").AddNew
    dr("合同号") = Tables("合同管理").Current("合同号")
    dr("年月") = Format(d1,"yyyy.MM")
    d1 = d1.AddMonths(1)
Loop
DataTables("应实收记录").ResumeRedraw

 回到顶部
美女呀,离线,留言给我吧!
liu1992
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:116 积分:1091 威望:0 精华:0 注册:2015/7/17 10:19:00
  发帖心情 Post By:2016/10/19 10:39:00 [只看该作者]

老师,我写在“合同管理”表的datacolchanged里面,但是没有看到执行的结果?应该写在哪里?
ps:刚刚忘记写项目的密码上去了。

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 11:05:00 [只看该作者]

datacolchanged这样

Dim dr As DataRow = e.DataRow
        If dr.IsNull("起始日") = False AndAlso dr.IsNull("终止日") = False Then
            Dim d1 As Date = dr("起始日")
            Dim d2 As Date = dr("终止日")
            
            d1 = new Date(d1.Year,d1.Month,1)
            d2 = new Date(d2.Year,d2.Month,Date.DaysInMonth(d2.Year,d2.Month))
            Dim dr2 As DataRow
            DataTables("应实收记录").StopRedraw
            Do While d1 < d2
                dr2 = DataTables("应实收记录").AddNew
                dr2("合同号") = dr("合同号")
                dr2("年月") = Format(d1,"yyyy.MM")
                d1 = d1.AddMonths(1)
            Loop
        End If
        DataTables("应实收记录").ResumeRedraw

这2个时间有变化或者重置列才会起效

 回到顶部
美女呀,离线,留言给我吧!
liu1992
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:116 积分:1091 威望:0 精华:0 注册:2015/7/17 10:19:00
  发帖心情 Post By:2016/10/19 11:27:00 [只看该作者]

不管重置还是更改这两个时间,还是没有执行结果啊!您那边能有结果吗?

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


加好友 发短信
等级:超级版主 帖子:110544 积分:562604 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/19 11:58:00 [只看该作者]

我测试没有问题
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:房产租赁管理.foxdb


 回到顶部
总数 17 1 2 下一页