以文本方式查看主题

-  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=144145)

--  作者:南山南
--  发布时间:2019/12/12 8:18:00
--  统计数据时出现运行错误
错误提示如下:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.10.26.1
错误所在事件:表,推广流水,DataColChanged
详细错误信息:
调用的目标发生了异常。
不能打开数据库 \'\'。应用程序可能无法识别该数据库,或文件可能损坏。
代码如下:
If e.DataCol.Name = "编号" Then
    If e.NewValue Is Nothing Then
        e.DataRow("账户币")=Nothing
        e.DataRow("现金")=Nothing
        e.DataRow("加v")=Nothing
        e.DataRow("订单日期_单数")=Nothing
        e.DataRow("订单日期_预算利润")=Nothing
        e.DataRow("订单日期_实际利润")=Nothing
        e.DataRow("过来日期_单数")=Nothing
        e.DataRow("过来日期_预算利润")=Nothing
        e.DataRow("过来日期_实际利润")=Nothing
        e.DataRow("出团_订单日期_单数")=Nothing
        e.DataRow("出团_订单日期_预算利润")=Nothing
        e.DataRow("出团_订单日期_实际利润")=Nothing
        e.DataRow("待出团_过来日期_单数")=Nothing
        e.DataRow("待出团_过来日期_预算利润")=Nothing
        e.DataRow("待出团_过来日期_实际利润")=Nothing
            e.DataRow("运营") = Nothing
            e.DataRow("推广") = Nothing
            e.DataRow("路径") = Nothing
    Else       
            Dim dr As DataRow
            dr = DataTables("ku").Find("[编码] = \'" & e.NewValue & "\'")
            If dr IsNot Nothing Then
                e.DataRow("运营") = dr("运营")
                e.DataRow("推广") = dr("平台")
                e.DataRow("路径") = dr("路径")
            End If
            Dim Filter,Filter1,Filter2,Filter3,Filter4,Filter5,Filter6 As String
        Filter = "日期 = #" & e.DataRow("日期") & "# And 编号= \'" & e.DataRow("编号") & "\'And 公司= \'" & e.DataRow("公司") & "\'"
        Filter1 = "订单日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 编号= \'" & e.DataRow("编号") & "\'"
        Filter2 = "过来日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 编号= \'" & e.DataRow("编号") & "\'"
        
        
        Filter3 = "订单日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 出团=\'出团\'And 编号= \'" & e.DataRow("编号") & "\'"
        Filter4 = "订单日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 出团=\'待出团\'And 编号= \'" & e.DataRow("编号") & "\'"
        
        Filter5 = "过来日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 出团=\'出团\'And 编号= \'" & e.DataRow("编号") & "\'"
        Filter6 = "过来日期 = #" & e.DataRow("日期") & "# And 公司= \'" & e.DataRow("公司") & "\'And 出团=\'待出团\'And 编号= \'" & e.DataRow("编号") & "\'"
        
        
        e.DataRow("账户币")=DataTables("广告费").SQLCompute("sum([消费])",Filter )
        e.DataRow("现金")=DataTables("广告费").SQLCompute("sum([现金])",Filter )
        e.DataRow("加v")=DataTables("加V").SQLCompute("sum([数量])",Filter )
        
        e.DataRow("订单日期_单数")=DataTables("易途").Compute("sum([单数])",Filter1 )
        e.DataRow("订单日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter1 )
        e.DataRow("订单日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter1 )
        
        e.DataRow("过来日期_单数")=DataTables("易途").Compute("sum([单数])",Filter2 )
        e.DataRow("过来日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter2 )
        e.DataRow("过来日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter2 )
        
        e.DataRow("出团_订单日期_单数")=DataTables("易途").Compute("sum([单数])",Filter3 )
        e.DataRow("出团_订单日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter3 )
        e.DataRow("出团_订单日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter3 )
        e.DataRow("待出团_订单日期_单数")=DataTables("易途").Compute("sum([单数])",Filter4 )
        e.DataRow("待出团_订单日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter4 )
        e.DataRow("待出团_订单日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter4 )
        
        e.DataRow("出团_过来日期_单数")=DataTables("易途").Compute("sum([单数])",Filter5 )
        e.DataRow("出团_过来日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter5 )
        e.DataRow("出团_过来日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter5 )
        e.DataRow("待出团_过来日期_单数")=DataTables("易途").Compute("sum([单数])",Filter6 )
        e.DataRow("待出团_过来日期_预算利润")=DataTables("易途").Compute("sum([预算利润])",Filter6 )
        e.DataRow("待出团_过来日期_实际利润")=DataTables("易途").Compute("sum([实际利润])",Filter6 )
    End If
End If

Tables("推广流水").Cols("账户币").GrandTotal = True 
Tables("推广流水").Cols("现金").GrandTotal = True
Tables("推广流水").Cols("加V").GrandTotal = True 
Tables("推广流水").Cols("订单日期_预算利润").GrandTotal = True
Tables("推广流水").Cols("订单日期_实际利润").GrandTotal = True 
Tables("推广流水").GrandTotal = True \'

--  作者:有点蓝
--  发布时间:2019/12/12 8:40:00
--  
数据库是不是共享使用的,会有多少人同时使用?数据库有没有被别人使用access打开了?
--  作者:南山南
--  发布时间:2019/12/12 13:13:00
--  
单机使用
--  作者:有点蓝
--  发布时间:2019/12/12 13:41:00
--  
数据库能够正常打开吗?数据库有没有被access打开处于使用状态?

把项目和数据库复制到其他目录,重新连接数据库测试