以文本方式查看主题 - 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=170652) |
|
-- 作者:xinghuo -- 发布时间:2021/8/3 14:47:00 -- 保质期按月标识,求教有效日期期方法。 生产日期2021-08-03 质保期12个月 到期日期 2021-08-02 Select
Case e.DataCol.Name 生产日期2021-08-03 质保期12个月 到期日期 2021-08-03 怎么提前一天? |
|
-- 作者:有点蓝 -- 发布时间:2021/8/3 14:49:00 -- e.DataRow("到期日期") = e.DataRow("生产日期").AddMonths(e.DataRow("质保期")).adddays(-1) |
|
-- 作者:xinghuo -- 发布时间:2021/8/3 16:26:00 -- 谢谢! |
|
-- 作者:xinghuo -- 发布时间:2021/8/11 11:52:00 --
|
|
-- 作者:有点蓝 -- 发布时间:2021/8/11 11:56:00 -- dim d as date = e.DataRow("生产日期").AddMonths(e.DataRow("质保期")) if d.month <> 2 then d = d.adddays(-1) end if e.DataRow("到期日期") = s
|
|
-- 作者:xinghuo -- 发布时间:2021/8/11 12:54:00 -- 这个按月判断肯定不合适,首先2月1- 28日都没问题,只有生产日期在29-31日 当有效期落到2月底才有问题,应该按日期来判断,另外还要考虑闰年的情况下。 |
|
-- 作者:有点蓝 -- 发布时间:2021/8/11 13:45:00 -- 测试没有问题,请举例说明 |
|
-- 作者:xinghuo -- 发布时间:2021/8/12 14:37:00 -- 测试下 生产日期2021年8月31日 质保期6个月 看下到期日期应该是2022年2月28日 该代码 生成日期2022年2月27日。
|
|
-- 作者:有点蓝 -- 发布时间:2021/8/12 14:39:00 -- 确定是使用5楼的代码测试的?!! |
|
-- 作者:xinghuo -- 发布时间:2021/8/13 11:55:00 -- Dim d As Date = e.DataRow("生产日期").AddMonths(e.DataRow("质保期")) If d.month <> 2 Then d = d.adddays(-1) End If e.DataRow("到期日期") = e.DataRow("生产日期").AddMonths(e.DataRow("质保期")).adddays(-1) |