以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  能不能实现以下功能?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=50299)

--  作者:tina2012
--  发布时间:2014/5/4 13:24:00
--  能不能实现以下功能?
订单窗口绑定订单表,订单需要确认,如果时间超过48小时,就自动填入“已确认”字样?、
--  作者:tina2012
--  发布时间:2014/5/4 13:34:00
--  
从“新交数量”列有值开始,超过48小时,“订单确认”列就填入“已确认”字样
--  作者:Bin
--  发布时间:2014/5/4 14:15:00
--  
当然可以,请上例子.
--  作者:有点甜
--  发布时间:2014/5/4 14:19:00
--  
 每次打开项目的时候,比较现在的时间和列的订单时间,如果大于48小时,就修改值便可。
[此贴子已经被作者于2014-5-4 14:19:48编辑过]

--  作者:tina2012
--  发布时间:2014/5/4 15:06:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb

 

一次性交完的订单明细不需要确认,分多次交货的需要进行订单确认,见上例,要求,

被接收的订单中,如果分多次交的,每次交货时需要数量确认,即在“数量确认”列填入确认人名字,如果超过48小时,没有主动确认,则自动填入“已确认”字样,48小时时间是“新交数量”列填入数值时开始计算的


--  作者:有点甜
--  发布时间:2014/5/4 15:17:00
--  

 回复5楼,你这一行需要一个时间列,标记是什么时候出货的才对吧?

 

 如果没有这个时间,就判断不了是否超过48小时的。


--  作者:有点甜
--  发布时间:2014/5/4 15:26:00
--  

 如下

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb


--  作者:tina2012
--  发布时间:2014/5/4 15:26:00
--  
那就再加一列“出库日期”
--  作者:Bin
--  发布时间:2014/5/4 15:31:00
--  
看7楼是否能满足你的需求.
--  作者:tina2012
--  发布时间:2014/5/4 16:02:00
--  

非常感谢。但是我觉得还是有一点问题

 

这段代码放在DataColChanged事件中,只有当前行有变化时才会执行,最理想的是一旦检测到时间超过48小时,就执行以下代码。放在什么事件里最合适呢?

 

Else If e.DataCol.Name = "最后操作时间" Then
    If (Date.Now - Cdate(e.DataRow("最后操作时间"))).TotalHours >= 48 Then
        e.DataRow("数量确认") = "已确认"
    End If
End If