以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]语法错误 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102601) |
-- 作者:lgj716330 -- 发布时间:2017/6/22 19:04:00 -- [求助]语法错误 Dim b As New SQLCrossTableBuilder("利润附表","科目余额") b.AddTable("科目余额","项目明细","店铺基础档案","店铺名称") \'添加统计表 b.AddTable("科目余额","科目代码","科目档案表","科目编码") \'添加统计表 b.HGroups.AddDef("日期",DateGroupEnum.year,"年") b.HGroups.AddDef("日期",DateGroupEnum.month,"月") b.HGroups.AddDef("公司") b.HGroups.AddDef("汇总部门","部门") b.HGroups.AddDef("店铺类型") b.VGroups.AddDef("成本大类") \'添加一级科目名称列用于垂直分组 b.Totals.AddExp("本月","case when 收支性质=\'收入\' then 本期发生额_贷方 else 本期发生额_借方 end") b.Totals.AddExp("累计","case when 收支性质=\'收入\' then 本年累计_贷方 else 本年累计_借方 end") b.Decimals = 2 \'小数点取0位 b.Build \'生成统计表 Dim dic As new Dictionary(of String, String) For Each c As Col In Tables("利润附表").cols dic.add(c.Caption, c.name) Next If dic.ContainsKey("6603财务费用_利息成本_本月") = False Then DataTables("利润附表").dataCols.add("6603财务费用_利息成本_本月", Gettype(Double)) DataTables("利润附表").dataCols.add("6603财务费用_利息成本_累计", Gettype(Double)) dic.add("6603财务费用_利息成本_本月", "6603财务费用_利息成本_本月") dic.add("6603财务费用_利息成本_累计", "6603财务费用_利息成本_累计") End If DataTables("利润附表").dataCols.add("6603财务费用_合计_本月", Gettype(Double),"isnull(" & dic("6603财务费用_利息成本_本月") & ",0)+isnull(" & dic("6603财务费用_其他成本_本月") & ",0)") 我的统计表里没有“6603财务费用_利息成本”的数据,但后面的代码都用到了这列,所以必须把这列动态生成出来,但结果仍提示以下错误: 无法设置列“6603财务费用_合计_本月“的表达式,原因:语法错误:“6603财务费用_利息成本_本月”运算符后缺少操作数。 最后提示“给定关键字不在字典中”。 然后我在统计表里录入一条“6603财务费用_利息成本”的虚拟数据,就没有错误提示了 不知如何解决。(附件上传不了)
[此贴子已经被作者于2017/6/22 19:13:20编辑过]
|
-- 作者:有点色 -- 发布时间:2017/6/22 19:23:00 -- 不存在列 【6603财务费用_其他成本_本月】 吧?
代码基本没问题,上传实例测试。 |
-- 作者:lgj716330 -- 发布时间:2017/6/22 20:51:00 -- 列6603财务费用_其他成本_本月,是有数据的,所以没问题 实例上传不了,可能是我的IE版本的问题 |
-- 作者:有点色 -- 发布时间:2017/6/22 23:58:00 -- 弹出值看看
msgbox(dic("6603财务费用_利息成本_本月"))
msgbox("isnull(" & dic("6603财务费用_利息成本_本月") & ",0)+isnull(" & dic("6603财务费用_其他成本_本月") & ",0)")
|
-- 作者:lgj716330 -- 发布时间:2017/6/23 9:24:00 -- 弹不出来。 不知是不是在科目前面加了一个编码的关系,我把编码去掉,问题就没了。编码我主要是用于排序用。
|
-- 作者:有点蓝 -- 发布时间:2017/6/23 9:26:00 -- 请上传实例测试 |
-- 作者:lgj716330 -- 发布时间:2017/6/23 9:57:00 -- 附件搞不上来,我还是把前面的编码去掉,用代码排序得了 |