Foxtable(狐表)用户栏目专家坐堂 → [求助]超过7天自动发mail通知。


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

主题:[求助]超过7天自动发mail通知。

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
[求助]超过7天自动发mail通知。  发帖心情 Post By:2016/6/23 14:18:00 [只看该作者]

 

入库单汇总表

有入库完成时间,在库生命周期,格式都是DateLongTime。

在库生命周期=现在的时间-入库完成时间,

如果在库完成时间大于7天就自动发mail出来。----发mail我写出来了。如何把在库时间大于7天写出来?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 16:02:00 [只看该作者]

条件可以这样写

 

DataTables("表A").Select("入库完成时间 <= #" & date.Now.AddDays(-7) & "# and 已发送 = false")


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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/6/23 16:22:00 [只看该作者]

哦。那是不是应该写到计划表里面合适点。包括发送mail。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 16:23:00 [只看该作者]

 写到计划任务里面比较好,间隔半小时之类的。

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/6/23 18:32:00 [只看该作者]

还有,我如果一定需要在库生命周期这个值,这个值怎么能自动算出来。

每时每刻都在变化好像也不合适。怎么做合适呢?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/23 19:29:00 [只看该作者]

以下是引用huhu在2016/6/23 18:32:00的发言:

还有,我如果一定需要在库生命周期这个值,这个值怎么能自动算出来。

每时每刻都在变化好像也不合适。怎么做合适呢?

 

1、参考

 

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

 

2、没必要每时每刻都计算,打开项目计算一次,或者做个计划管理,间隔一段时间计算,都可以。


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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/6/24 10:01:00 [只看该作者]

Dim dr As Row = Tables("库存明细表").Current
Dim tp As TimeSpan = Date.Now - dr("入库完成时间")
dr("在库生命周期") = tp.TotalDays
output.show(dr("在库生命周期"))

 

 


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

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/24 10:01:00 [只看该作者]

Dim tp As TimeSpan = Date.Now - Cdate(dr("入库完成时间"))

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/6/24 10:56:00 [只看该作者]

这是计划1的代码:

Dim drs As List(of DataRow) = DataTables("库存明细表").SQLSelect("状态 = '入库完成'")
For  Each dr As DataRow In drs
    Dim d  As Integer
    Dim tp As TimeSpan = Date.Today - Cdate(dr("入库完成时间"))
    d= tp.TotalDays
    dr("在库生命周期") = CStr(d) & "天"
    dr.save
Next

我现在再想的问题是,这个库存明细表的行在后台都是locked = true。那么使用上面的代码能有效吗?还是使用sqlreplacefor?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/24 11:06:00 [只看该作者]

sqlSelect的行,不能直接save的

 

示例二

如果是数据表,可以修改通过SQLSelect筛选出来的行,并保存之:

Dim drs As List(of DataRow) = DataTables("订单").SQLSelect("产品 = 'PD01'")
For Each
dr As DataRow In drs
   
dr("折扣") = 0.1
Next
DataTables(
"订单").SQLUpdate(drs)

SQLUpdate专门用于批量保存通过SQLSelect筛选出来的行。

提示:这只是一个介绍SQLSelect用法的例子,你真要更新后台数据,请使用SQLReplaceFor方法,会简洁高效很多。


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