有一个表,现要计算上下行之间的日期的间隔”天数“,及最后一次日期与今天的“距今天数”,示例是
代码如下:
Select Case e.DataCol.Name
Case "分类", "处置日期"
If e.DataCol.Name = "处置日期" AndAlso e.DataRow.IsNull(e.DataCol) = False Then
Dim dr As DataRow = e.DataTable.Find("分类 = '" & e.DataRow("分类") & "' and 处置日期 <= #" & e.DataRow("处置日期") & "#","处置日期 Desc")
If dr IsNot Nothing Then
Dim tp As TimeSpan = e.DataRow("处置日期") - dr("处置日期")
e.DataRow("天数") = tp.TotalDays
dr =e.DataTable.Find("分类 = '" & e.DataRow("分类") & "' and 处置日期 <= #" & e.DataRow("处置日期") & "#","处置日期 Desc")
If dr IsNot Nothing Then
tp = Date.Today - cdate(dr("处置日期"))
e.DataRow("距今天数") = tp.TotalDays
End If
End If
End If
End Select
示例中的表是“医疗废物处置”,现在问题是:要达到“计算上下行之间的各分类的处置日期的间隔”天数“,及最后一次“处置日期”与今天的“距今天数”这个目标,上述代码请改下。这组代码产生效果是:每个“处置日期”都产生一个“距今天数”,而不是最近一个“处置日期”产生一个“距今天数”;另一问题是,”天数“一直是“0”,
[此贴子已经被作者于2014-8-29 7:33:04编辑过]