以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]日期判断 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143498) |
-- 作者:lgj716330 -- 发布时间:2019/11/26 21:06:00 -- [求助]日期判断 For Each nm() As String In DataTables("统计表2").GetValues("开店日期|关店日期") Dim dr As DataRow = DataTables("费用情况_Table1").AddNew() dr("开店日期") = nm(0) dr("关店日期") = nm(1) dr("销售金额") =DataTables("统计表2").Compute("Avg(销售金额)","开店日期 = \'" & nm(0) & "\' And 关店日期 = \'" & nm(1) & "\'") next 出现以下提示 详细错误信息: 无法在 System.DateTime 和 System.String 上执行“=”操作。 |
-- 作者:有点蓝 -- 发布时间:2019/11/27 9:21:00 -- For Each nm() As String In DataTables("统计表2").GetValues("开店日期|关店日期") Dim dr As DataRow = DataTables("费用情况_Table1").AddNew() msgbox(nm(0) & "|" & nm(1)) ‘这里显示什么内容’ dr("开店日期") = nm(0) dr("关店日期") = nm(1) dr("销售金额") =DataTables("统计表2").Compute("Avg(销售金额)","开店日期 = #" & nm(0) & "# And 关店日期 = #" & nm(1) & "#") next
|
-- 作者:lgj716330 -- 发布时间:2019/11/28 20:36:00 -- Dim d1 As Date = e.DataRow("开店日期") Dim d2 As Date = e.DataRow("关店日期") Dim d3 As Date = e.DataRow("查询截止日期") Dim d4 As Date = e.DataRow("查询初始日期") Dim y1 As Integer = d1.year Dim y2 As Integer = d2.year Dim y3 As Integer = d3.year Dim y4 As Integer = d4.year Dim m1 As Integer = d1.month Dim m2 As Integer = d2.month Dim m3 As Integer = d3.month Dim m4 As Integer = d4.month Select Case e.DataCol.Name Case "查询截止日期","开店日期","关店日期","查询初始日期" If d1>=d4 And d1<=d3 And e.DataRow.IsNull("开店日期") = False And e.DataRow.IsNull("关店日期") Then e.DataRow("当期经营月数") = (e.DataRow("查询截止日期")-e.DataRow("开店日期") + 1)/30 ElseIf (d1>=d4 And d1<=d3) And (d2>=d4 And d2<=d3) And e.DataRow.IsNull("开店日期") = False And e.DataRow.IsNull("关店日期")= False Then e.DataRow("当期经营月数") = (e.DataRow("关店日期")-e.DataRow("开店日期") + 1)/30 ElseIf (d2<d4 And e.DataRow.IsNull("关店日期")= False) Or d1>d3 Then e.DataRow("当期经营月数") = 0 Else e.DataRow("当期经营月数") = m3-m2+1 End If End Select 重置其中一列的时候出现以下错误信息 详细错误信息: 调用的目标发生了异常。 重载决策失败,因为没有 Public“+”可以用这些参数调用: \'Public Shared Operator +(t1 As System.TimeSpan, t2 As System.TimeSpan) As System.TimeSpan\': 与参数“t2”匹配的参数无法从“Integer”转换为“TimeSpan”。
|
-- 作者:有点蓝 -- 发布时间:2019/11/29 9:05:00 -- e.DataRow("当期经营月数") = (e.DataRow("查询截止日期")-e.DataRow("开店日期") + 1)/30 改为: e.DataRow("当期经营月数") = ((cdate(e.DataRow("查询截止日期"))-cdate(e.DataRow("开店日期"))).TotalDays+ 1)/30 Dim y,m,d As Integer DateYMD(e.DataRow("开店日期"),e.DataRow("查询截止日期"),y,m,d) e.DataRow("当期经营月数") = m + 1
|