以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何用表达式计算详细时间? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=11699) |
||||
-- 作者:benten -- 发布时间:2011/8/8 15:54:00 -- 如何用表达式计算详细时间? 我在狐表中设置了三列,分别是:开始时间,结束时间,和累计时间。其中开始时间和结束时间是TIME类型,累计时间是保留一位不数的数值型。请问我要如何实现用结束时间-开始时间,得到一个数值保存在累计时间列中? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/8 16:06:00 -- 这个不能用表达式,只能用代码。
|
||||
-- 作者:benten -- 发布时间:2011/8/8 17:23:00 -- 不好意思,我对狐表还不太了解,这个代码加在哪里?我没看懂。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/8 17:26:00 -- 表属性 - 事件 - DataColchanged事件 http://www.foxtable.com/help/topics/1445.htm
作为初学者,还是先系统看一下帮助文件吧。 |
||||
-- 作者:benten -- 发布时间:2011/8/9 11:31:00 -- 非常感谢。 |
||||
-- 作者:fbi168 -- 发布时间:2011/9/16 19:19:00 -- 不错确实能显示所用时间,但是分钟怎么不是60秒进位啊? |
||||
-- 作者:xuefoxtable -- 发布时间:2011/12/25 21:05:00 -- 你好,请问你还在线吗?我是foxtable初学者,我也有这样的问题,我想看一下你给的这段代码,但我下载打开后代码编辑段里是空的,我该到哪里看看这个代码段啊!谢谢了 |
||||
-- 作者:yangming -- 发布时间:2011/12/25 22:58:00 -- 以下是引用xuefoxtable在2011-12-25 21:05:00的发言:
你好,请问你还在线吗?我是foxtable初学者,我也有这样的问题,我想看一下你给的这段代码,但我下载打开后代码编辑段里是空的,我该到哪里看看这个代码段啊!谢谢了 菜单--数据表-表属性 - 事件 - DataColchanged事件中
Select Case e.DataCol.Name [此贴子已经被作者于2011-12-25 22:58:42编辑过]
|
||||
-- 作者:xuefoxtable -- 发布时间:2011/12/26 16:18:00 -- 恩,非常感谢,找到了。还有我把这段程序插到新建的项目里后,发现杂项输出结构里第一,二,三列仍然是字符型,而它应该是日期型或其它才对,我应该怎么把它变成日期型啊?我下面这段小程序有没有什么问题啊?谢谢了(程序目的是:先求出两个时间段,再求两段的和,其中求时间段时,某个时间可能是空的)再次谢谢了
Select Case e.DataCol.Name Case "第一列","第二列" If e.DataRow.IsNull("第一列") and e.DataRow.IsNull("第二列") Then e.DataRow("第五列") = Nothing Else if e.DataRow.IsNull("第一列") e.DataRow("第五列") = (e.DataRow("第二列") -"#某个时间#").TotalHours Else if e.DataRow.IsNull("第二列") e.DataRow("第五列") = ("#某个时间#")-e.DataRow("第二列")) TotalHours else e.DataRow("第五列") = (e.DataRow("第二列") - e.DataRow("第一列")).TotalHours End If case "第三列","第四列" If e.DataRow.IsNull("第三列") and e.DataRow.IsNull("第四列") Then e.DataRow("第六列") = Nothing Else if e.DataRow.IsNull("第三列") e.DataRow("第六列") = (e.DataRow("第四列") -"#某个时间#").TotalHours Else if e.DataRow.IsNull("第四列") e.DataRow("第六列") = ("#某个时间#")-e.DataRow("第三列")) TotalHours else e.DataRow("第六列") = (e.DataRow("第四列") - e.DataRow("第三列")).TotalHours End If e.datarouw("第七列")=(e.DataRow("第五列") + e.DataRow("第六列")).TotalHoursEnd Select end select |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/26 22:41:00 -- 先看帮助,从使用指南开始看,看三遍,会用了,再看开发指南,就不会有这样的疑问了。 数据类型是一切的基础,使用指南是开发指南的基础。
|