Foxtable(狐表)用户栏目专家坐堂 → [求助]不同的数据源,数据类型不同(已解决)


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

主题:[求助]不同的数据源,数据类型不同(已解决)

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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10639 威望:0 精华:0 注册:2008/9/24 11:16:00
[求助]不同的数据源,数据类型不同(已解决)  发帖心情 Post By:2016/1/5 11:10:00 [只看该作者]

一个案例:通过 Fill ,从不同的数据源生成 “效率” 表,其数据类型不同,内部表和Access数据源生成的表,“定时”、“实时”、“效率”三列均为双精度小数,而SQL Server数据源生成的表,上述三列却均为整数,显然不符要求。

现有的项目数据源为SQL Server,如何至少让效率列是数据类型为双精度小数,请各位老师指教,谢谢!


If nd1.Checked = True Then 'SQL Server
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,"sum(实际秒时) As 实时,sum(定额秒时) / sum(实际秒时) * 100 As 效率 From {扎包数据2} WHERE 日期 = '" & rq & "' and 车位 = '"& cw &"' GROUP BY 序号,车位","MES",True)
ElseIf nd2.Checked = True Then '内部表
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) as 实时,sum(定额秒时) / sum(实际秒时) * 100 as 效率 From {扎包数据} WHERE 日期 = #" & rq & "# and 车位 = '"& cw &"' GROUP BY 序号,车位",True)
ElseIf nd3.Checked = True Then 'Access
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) as 实时,sum(定额秒时) / sum(实际秒时) * 100 as 效率 From {扎包数据3} WHERE 日期 = #" & rq & "# and 车位 = '"& cw &"' GROUP BY 序号,车位","MM",True)
End If
Tables("效率").DataTable.DataCols("效率").SetFormat("0.00")
Tables("效率").AutoSizeCols()



图片点击可在新窗口打开查看此主题相关图片如下:表1.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:表2.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2016/1/5 12:35:07编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/5 11:16:00 [只看该作者]

试试这样

 

DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) As 实时, Convert(Float, sum(定额秒时)) / sum(实际秒时) As 效率 From {扎包数据2} WHERE 日期 = '" & rq & "' and 车位 = '"& cw &"' GROUP BY 序号,车位","MES",True)


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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10639 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2016/1/5 11:21:00 [只看该作者]

谢谢大红袍老师的指教,好像不行。


图片点击可在新窗口打开查看此主题相关图片如下:表3.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/5 11:25:00 [只看该作者]

不可能

 

Convert(Float, sum(定额秒时)) / sum(实际秒时) As 效率


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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10639 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2016/1/5 11:35:00 [只看该作者]


If nd1.Checked = True Then '
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) As 实时, Convert(Float, sum(定额秒时)) / sum(实际秒时) As 效率 From {扎包数据2} WHERE 日期 = '" & rq & "' and 车位 = '"& cw &"' GROUP BY 序号,车位","MES",True)
ElseIf nd2.Checked = True Then '
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) as 实时,sum(定额秒时) / sum(实际秒时) * 100 as 效率 From {扎包数据} WHERE 日期 >= #" & qc & "# And 日期 <= #" & qm & "# and 车位 = '"& cw &"' GROUP BY 序号,车位",True)
ElseIf nd3.Checked = True Then '
    DataTables("效率").Fill("Se lect 序号 as 节拍,车位 as 工位,sum(定额秒时) as 定时,sum(实际秒时) as 实时,sum(定额秒时) / sum(实际秒时) * 100 as 效率 From {扎包数据3} WHERE 日期 >= #" & qc & "# And 日期 <= #" & qm & "# and 车位 = '"& cw &"' GROUP BY 序号,车位","MM",True)
End If
Tables("效率").DataTable.DataCols("效率").SetFormat("0.00")
Tables("效率").AutoSizeCols()


效率表是 DataTableBuilder 生成的临时表,是否有关系?

Dim dtb As New DataTableBuilder("效率")
dtb.Build()

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/5 11:51:00 [只看该作者]

拷贝sql语句出来测试,看报什么错

 

http://www.foxtable.com/help/topics/1484.htm

 


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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10639 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2016/1/5 12:10:00 [只看该作者]

.NET Framework 版本:2.0.50727.8670
Foxtable 版本:2015.11.11.1
错误所在事件:
详细错误信息:
关键字 'As' 附近有语法错误。

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


加好友 发短信
等级:七尾狐 帖子:1530 积分:10639 威望:0 精华:0 注册:2008/9/24 11:16:00
  发帖心情 Post By:2016/1/5 12:35:00 [只看该作者]

问题找到,Se lect中间空格没有去掉,达到预期效果。谢谢大红袍老师的耐心指教,再次表示衷心感谢。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/1/5 12:38:00 [只看该作者]

逐个删除,看哪里出问题,转换函数convert是没问题的。

 回到顶部