以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- [求助] foxtable 改用数据库表 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=151945) |
-- 作者:susanhe -- 发布时间:2020/7/7 20:49:00 -- [求助] foxtable 改用数据库表 你好,老师 以下的BOM表(黄色标识) 是在Foxtable中。 因为数据庞大,一直下载,影响速度。如何将以下代码修改一下,使其直接从SQL中数据库表BOM表中直接取出 ?谢谢。 Dim pn As String = args(0) Dim qty As String = args(1) Dim idx As Integer = args(5) For Each dr As DataRow In DataTables("BOM").Select("FNumber=\'" & pn & "\'")
Dim ndr As DataRow = DataTables("物料需求").AddNew ndr("PartNo") = dr("PN") ndr("Date") = args(3) ndr("批号") = args(4) ndr("Demand") = dr("FQty") * qty ndr("层次") = "第" & idx & "层" Functions.Execute("sumChild",dr("PN"),ndr("Demand"), args(2), args(3), args(4),idx+1) Next |
-- 作者:有点蓝 -- 发布时间:2020/7/7 20:56:00 -- Select改为sqlSelect:http://www.foxtable.com/webhelp/topics/2900.htm |
-- 作者:susanhe -- 发布时间:2020/7/7 23:14:00 -- 老师,还请问一下以下黄色是来自另SQL数据库加一个表 ICBOM中的pn,该如何表示 ? 谢谢。 Dim pn As String = args(0) Dim qty As String = args(1) Dim idx As Integer = args(5) For Each dr As DataRow In DataTables("BOM").SQLSelect("FNumber=\'" & pn & "\'")
Dim ndr As DataRow = DataTables("物料需求").AddNew ndr("PartNo") = dr("PN") ndr("Date") = args(3) ndr("批号") = args(4) ndr("Demand") = dr("FQty") * qty ndr("层次") = "第" & idx & "层" Functions.Execute("sumChild",dr("PN"),ndr("Demand"), args(2), args(3), args(4),idx+1) Next |
-- 作者:有点蓝 -- 发布时间:2020/7/7 23:18:00 -- 在这里是一个变量,和数据库有什么关系?如果变量值来自其他数据库,只能先取出来再用 |
-- 作者:susanhe -- 发布时间:2020/7/8 7:44:00 -- 老师, 这个变量& pn & 来自数据库中的另一个表 ICBOM中。 要查找数据库表 BOM 中的 FNumbe 等于 表 ICBOM中的 pn 。 这样可以吗 ?谢谢。
|
-- 作者:有点蓝 -- 发布时间:2020/7/8 9:01:00 -- 表 ICBOM中的 pn值全部都取出来,再拼接到查询条件中 |
-- 作者:susanhe -- 发布时间:2020/7/8 13:13:00 -- 麻烦老师一下。 |
-- 作者:有点蓝 -- 发布时间:2020/7/8 13:36:00 -- 比如: Dim cmd As New SQLCommand For Each dr As DataRow In DataTables("BOM").SQLSelect("FNumber in (\'" & str.replace("|","\',\'") & "\')")cmd.ConnectionName = "数据源名称" Dim dt As DataTable cmd.CommandText = "SELECT DISTINCT pn From {ICBOM}" dt = cmd.ExecuteReader() dim str as string = dt.GetComboListString("pn") ……
|