Foxtable(狐表)用户栏目专家坐堂 → [求助]出错提示


  共有3933人关注过本帖树形打印复制链接

主题:[求助]出错提示

帅哥哟,离线,有人找我吗?
ntqhj
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:436 积分:2654 威望:0 精华:0 注册:2018/1/15 13:54:00
  发帖心情 Post By:2021/3/5 15:48:00 [只看该作者]

在表事件。原来access环境下的,sql下不知道写呢,改sql以下代码如何修改呢,sql下小计提示不支持后台统计
Dim g As New GroupTableBuilder("【筛选】承运人明细表", DataTables("承运人明细表"))
g.Caption = "【筛选】承运人明细表"
g.Groups.AddDef("承运车主")
'g.Groups.AddDef("车号")
g.Groups.AddDef("付款状态")
g.Totals.AddDef("支付小计")
g.Totals.AddDef("应付运费")
g.Totals.AddDef("定金")
g.Groups.AddDef("支付结算标识")
g.Groups.AddDef("支付日期", DateGroupEnum.None)
g.VerticalTotal = True
g.Decimals = 2
g.FromServer = True
g.Filter = "[付款状态] = '未支付'"
'g.Build()
'MainTable = Tables("未支付运费_统计")
Tables("承运人明细表_Table2").DataSource = g.BuildDataSource() 
[此贴子已经被作者于2021/3/5 15:51:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105965 积分:538900 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/5 16:03:00 [只看该作者]

Dim g As New sqlGroupTableBuilder("【筛选】承运人明细表", ("承运人明细表"))
g.Caption = "【筛选】承运人明细表"
g.Groups.AddDef("承运车主")
'g.Groups.AddDef("车号")
g.Groups.AddDef("付款状态")
g.Totals.Addexp("支付小计","原小计表达式列的表达式")
g.Totals.AddDef("应付运费")
g.Totals.AddDef("定金")
g.Groups.AddDef("支付结算标识")
g.Groups.AddDef("支付日期", DateGroupEnum.None)
g.VerticalTotal = True
g.Decimals = 2
g.Filter = "[付款状态] = '未支付'"
'g.Build()
'MainTable = Tables("未支付运费_统计")
Tables("承运人明细表_Table2").DataSource = g.BuildDataSource() 

 回到顶部
帅哥哟,离线,有人找我吗?
ntqhj
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:436 积分:2654 威望:0 精华:0 注册:2018/1/15 13:54:00
  发帖心情 Post By:2021/3/5 16:16:00 [只看该作者]

修改后好像不行呢
g.Totals.AddDef("支付小计","IIF([收款方向] = '本司司机收', + [应付运费],IIF([收款方向] = '外联司机收',[定金] * (-1),IIF([收款方向] = '公司自收',[定金] + [应付运费] - [已付运费],null)))")

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105965 积分:538900 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/5 16:25:00 [只看该作者]

Addexp不是AddDef

 回到顶部
帅哥哟,离线,有人找我吗?
ntqhj
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:436 积分:2654 威望:0 精华:0 注册:2018/1/15 13:54:00
  发帖心情 Post By:2021/3/6 16:00:00 [只看该作者]

老师好!“支付小计”在命令窗口中运行,不加判断条件的语句运行正常,加了判断条件的那条语句运行出错,提示:无法完成延时准备、无法预定义语句、'='附近有语法错误。是否是表达式的问题?若是该如何修改呢?
表达式列在access数据库运行可以的:
IIF([收款方向] = '本司司机收', + [应付运费],IIF([收款方向] = '外联司机收',[定金] * (-1),IIF([收款方向] = '公司自收',[定金] + [应付运费] - [已付运费],null)))

Dim g As New SQLGroupTableBuilder("统计表1","承运人明细表")  
g.Connection Name = "SQL运输管理系统"
g.Caption = "统计表1"
g.Groups.AddDef("承运车主")
g.Groups.AddDef("付款状态")
g.Groups.AddDef("支付结算标识")
g.Groups.AddDef("支付日期", DateGroupEnum.None)
g.Totals.AddDef("应付运费")
g.Totals.AddDef("定金")

g.Totals.AddExp("支付小计","IIF([收款方向] = '本司司机收', + [应付运费],IIF([收款方向] = '外联司机收',[定金] * (-1),IIF([收款方向] = '公司自收',[定金] + [应付运费] - [已付运费],null)))")
'g.Totals.Addexp("支付小计","定金 + 应付运费")

g.VerticalTotal = True
g.Decimals = 2
g.FromServer = True
g.Filter = "[付款状态] = '未支付'"
g.Build 
MainTable = Tables("统计表1")
'Tables("承运人明细表_Table2").DataSource = g.BuildDataSource()
[此贴子已经被作者于2021/3/6 16:16:10编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105965 积分:538900 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/6 16:20:00 [只看该作者]

表达式里面用到的列有没有其他表达式列?

 回到顶部
帅哥哟,离线,有人找我吗?
ntqhj
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:436 积分:2654 威望:0 精华:0 注册:2018/1/15 13:54:00
  发帖心情 Post By:2021/3/6 16:32:00 [只看该作者]

有一列的列名是:司机处的运费,表达式是:IIF([收款方向] = '本司司机收',([定金] + [应付运费])*(-1),null),会是这问题吗?若是该问题引起的该如何解决?

[此贴子已经被作者于2021/3/6 16:42:48编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105965 积分:538900 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/3/6 16:55:00 [只看该作者]

做个例子发上来看看吧

 回到顶部
帅哥哟,离线,有人找我吗?
ntqhj
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:436 积分:2654 威望:0 精华:0 注册:2018/1/15 13:54:00
  发帖心情 Post By:2021/5/17 14:27:00 [只看该作者]

老师好!按老师给的提示修改后,当鼠标移至Textbox1,只要不首先选中窗口绑定表中的的任意单元格还是出错呢,提示的出错信息是为“接单明细表不存在名为“”的列”,详细信息提示错误是:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2021.5.7.1
错误所在事件:窗口,接单与派车,TextBox1,MouseEnter
详细错误信息:
未将对象引用设置到对象的实例。

Dim str1 As String = " "
Dim t As Table = CurrentTable
If t.rows.count = 0 Then Return
'Str1 = Str1 & "计数:" & t.Aggregate(AggregateEnum.Count, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
Str1 = Str1 & "累计:" & t.Aggregate(AggregateEnum.Sum, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
Str1 = Str1 & "平均:" & t.Aggregate(AggregateEnum.Average, t.TopRow, t.LeftCol, t.BottomRow, t.RightCol) & " "
If forms("接单与派车").opened Then
     forms("接单与派车").controls("Textbox1").text = str1    
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105965 积分:538900 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/17 14:45:00 [只看该作者]

我测试没有问题,上传实例看看

 回到顶部
总数 33 上一页 1 2 3 4 下一页