以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请教条件筛选重置列问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=187990) |
-- 作者:18920118515 -- 发布时间:2023/8/25 11:23:00 -- 请教条件筛选重置列问题 DataColChanged事件代码如下 Dim RKRQ As DataRow = e.DataRow If RKRQ("已售") = False If e.NewValue Is Nothing Then e.DataRow("库存天数") = Nothing e.DataRow("入库") = False e.DataRow("资源匹配后到车日期") = Nothing Else Dim KC As TimeSpan = Date.today - CDate(e.DataRow("入库日期")) e.DataRow("库存天数") = KC.TotalDays e.DataRow("入库") = True Dim zx As DataRow = e.DataRow If zx("入库日期") >= zx("资源匹配日期") And zx.IsNull("资源匹配日期") = False Then zx("资源匹配后到车日期") = zx("入库日期") ElseIf zx("入库日期") < zx("资源匹配日期") And zx.IsNull("资源匹配日期") = False Then zx("资源匹配后到车日期") = zx("资源匹配日期") End If End If 重置列代码如下: Dim Filter As String Filter = "已售 = false" DataTables("商品车库存基础表").DataCols("生产日期").RaiseDataColChanged(Filter) DataTables("商品车库存基础表").DataCols("入库日期").RaiseDataColChanged(Filter) 请教老师,按照条件重置列后,DataColChanged事件代码执行错误,执行过程不辩别“库存天数”是否为空,这是什么原因,该如何解决 |
-- 作者:有点蓝 -- 发布时间:2023/8/25 11:25:00 -- 先看看:http://www.foxtable.com/webhelp/topics/1522.htm 然后说明一下这个代码想实现什么功能
|
-- 作者:18920118515 -- 发布时间:2023/8/25 11:35:00 -- 老师: 1- DataColChanged事件代码的目的是针对“入库日期”计算库存天数 2- 重置列代码的目的是每天重算库存天数
|
-- 作者:有点蓝 -- 发布时间:2023/8/25 11:54:00 -- Dim zx As DataRow = e.DataRow Select Case e.DataCol.Name Case "入库日期" If zx("已售") = False If zx.isnull("入库日期") Then zx("库存天数") = Nothing zx("入库") = False zx("资源匹配后到车日期") = Nothing Else Dim KC As TimeSpan = Date.today - CDate(zx("入库日期")) zx("库存天数") = KC.TotalDays zx("入库") = True If zx("入库日期") >= zx("资源匹配日期") And zx.IsNull("资源匹配日期") = False Then zx("资源匹配后到车日期") = zx("入库日期") ElseIf zx("入库日期") < zx("资源匹配日期") And zx.IsNull("资源匹配日期") = False Then zx("资源匹配后到车日期") = zx("资源匹配日期") End If End If End Select
|
-- 作者:18920118515 -- 发布时间:2023/8/25 12:16:00 -- 谢谢老师 |