Foxtable(狐表)用户栏目专家坐堂 → [求助]能利用“已过天数除以生产周期”的比值自动画单元格甘特图吗


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

主题:[求助]能利用“已过天数除以生产周期”的比值自动画单元格甘特图吗

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/29 10:08:00 [显示全部帖子]

1、求两个日期之间的天数,参考:

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

 

2、既然是编码,想怎样绘制都都可以,先按顺序学习帮助,多练多问,基础好了,理解了示例代码,才能举一反三。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/12/29 14:30:00 [显示全部帖子]

任务表的DataColChanged事件代码改为:

 

Select Case e.DataCol.Name
    Case "开始日期","结束日期"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("开始日期") OrElse dr.IsNull("结束日期")  Or dr("开始日期") > dr("结束日期")
            dr("生产周期") = Nothing
            dr("已过天数") = Nothing
            dr("剩余天数") = Nothing
        Else
            Dim tp As TimeSpan = dr("结束日期") - dr("开始日期")
            dr("生产周期") = tp.TotalDays
            If Date.Today > = dr("开始日期") AndAlso Date.Today <= dr("结束日期")
                dr("已过天数") = (Date.today - cdate(dr("开始日期"))).TotalDays
                dr("剩余天数") = dr("生产周期") - dr("已过天数")
            Else
                dr("已过天数") = Nothing
                dr("剩余天数") = Nothing
            End If
        End If
End Select

 

在项目事件AfterOpenProject事件中增加一行代码:

DataTables("任务").DataCols("开始日期").RaiseDataColChanged()

 

这样每次打开项目,就得到了最新的数据,管它数据是否是变化的,至少我打开项目之后,数据是最新的,而且是不变的。

 

 

 


 回到顶部