以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]能利用“已过天数除以生产周期”的比值自动画单元格甘特图吗  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=15518)

--  作者:ppxxww
--  发布时间:2011/12/29 9:56:00
--  [求助]能利用“已过天数除以生产周期”的比值自动画单元格甘特图吗

你好!

 

1)随着日期自动变换,自动记录开始日期至今天的天数,求此代码

 

2)随着日期自动变换,自动记录今天至结束日期的天数,求此代码

 

3)能利用“已过天数除以生产周期”的比值自动画单元格甘特图吗?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:服装生产调度2003.xls

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:服装生产调度.table


--  作者:狐狸爸爸
--  发布时间:2011/12/29 10:08:00
--  

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

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

 

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


--  作者:ppxxww
--  发布时间:2011/12/29 12:39:00
--  
你好!两个固定日期之间的天数,我已在“生产周期”列有搞定,但是其中一个是固定,另一个是变化的(即TODaY),是与日俱变,那么天数每天也要自动更新,这个有点难,请看附件,并赐教!
--  作者:狐狸爸爸
--  发布时间: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()

 

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

 

 

 


--  作者:疯子不疯
--  发布时间:2011/12/29 16:18:00
--  

有QQ群吗,我想问问问题