Foxtable(狐表)用户栏目专家坐堂 → 请教 临时表可以用upfate吗?


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

主题:请教 临时表可以用upfate吗?

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


加好友 发短信
等级:九尾狐 帖子:2585 积分:20430 威望:0 精华:0 注册:2012/5/19 11:57:00
请教 临时表可以用upfate吗?  发帖心情 Post By:2025/4/1 14:46:00 [只看该作者]

请教 临时表可以用upfate吗?

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


加好友 发短信
等级:超级版主 帖子:113188 积分:576369 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/4/1 14:48:00 [只看该作者]

不能的

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


加好友 发短信
等级:九尾狐 帖子:2585 积分:20430 威望:0 精华:0 注册:2012/5/19 11:57:00
  发帖心情 Post By:2025/4/1 15:47:00 [只看该作者]

我以为代码 数据能正常出来 就是有点耗时 谢谢帮我优化一下代码 或者有啥好办法提高速度 感谢

Dim exp1 As String  = "单据状态='已审核' and 单据类别='横机'"
Tables(e.form.Name & "_Table1").fill("selec  加工商名称,产品名称,产品规格,产品型号,sum(发出数量) as 计划数,0 as 已交货数量, 0 as 未交货数量,状态,可超出比例,'' As 是否已完成,开单时间  from  {加工计划明细} where " & exp1 & " group by 加工商名称,产品名称,产品规格,产品型号,状态,可超出比例,是否已完成,开单时间","wjhansdata",True)
Tables(e.form.Name & "_Table1").DataTable.DataCols("开单时间").SetDateTimeFormat(DateTimeFormatEnum.DateTime)
With Tables(e.form.Name & "_Table1")
    .MergeMode = MergeModeEnum.Standard
    .MergeCols.Clear()
   .MergeCols.Add("加工商名称")
      .MergeCols.Add("产品名称")
    .MergeCols.Add("产品规格")
    .MergeCols.Add("产品型号")
    .MergeSort = "加工商名称,产品名称,产品规格,产品型号"
    .AllowMerge = True
End With
If Tables(e.form.Name & "_Table1").rows.count=0
    Tables(e.form.Name & "_Table1").GrandTotal = False
Else
    Tables(e.form.Name & "_Table1").Cols("计划数").GrandTotal = True
    Tables(e.form.Name & "_Table1").Cols("已交货数量").GrandTotal = True
    Tables(e.form.Name & "_Table1").Cols("未交货数量").GrandTotal = True
    Tables(e.form.Name & "_Table1").GrandTotal = True '显示合计模式
End If
 
Dim exp As String 
For Each dr As Row In Tables(e.form.Name & "_Table1").rows
exp="单据类别='横机' and 加工商名称='" & dr("加工商名称")  & "' And 产品名称='" & dr("产品名称") & "' And 产品规格='" & dr("产品规格") & "' And 产品型号='" & dr("产品型号") & "'"    
dr("已交货数量")=DataTables("加工收发明细").SQLCompute("Sum(收回数量)",exp)

Next

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


加好友 发短信
等级:二尾狐 帖子:503 积分:4963 威望:0 精华:0 注册:2012/4/20 8:42:00
  发帖心情 Post By:2025/4/1 15:52:00 [只看该作者]

DataTables("加工收发明细").SQLCompute("Sum(收回数量)",exp)你这个表,可以提前加载出来,根据你自己上面的条件,加载出来之后,使用DataTables("加工收发明细").Compute("Sum(收回数量)",exp),就不会耗时了。


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


加好友 发短信
等级:九尾狐 帖子:2585 积分:20430 威望:0 精华:0 注册:2012/5/19 11:57:00
  发帖心情 Post By:2025/4/1 16:00:00 [只看该作者]

DataTables("加工收发明细")这个表已经加载了

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


加好友 发短信
等级:超级版主 帖子:113188 积分:576369 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/4/1 16:15:00 [只看该作者]

Tables(e.form.Name & "_Table1").fill("select a.*,b.已交货数量 from (select  加工商名称,产品名称,产品规格,产品型号,sum(发出数量) as 计划数,0 as 已交货数量, 0 as 未交货数量,状态,可超出比例,'' As 是否已完成,开单时间  from  {加工计划明细} where 单据状态='已审核' and 单据类别='横机' group by 加工商名称,产品名称,产品规格,产品型号,状态,可超出比例,是否已完成,开单时间) as a left join (select  加工商名称,产品名称,产品规格,产品型号,sum(收回数量) as 已交货数量 from {加工收发明细} group by 加工商名称,产品名称,产品规格,产品型号) as b on a.加工商名称=b.加工商名称 AND a.产品名称=b.产品名称 and a.产品规格=b.产品规格 and a.产品型号=b.产品型号","wjhansdata",True)

去掉Dim exp As String 以及后面所有代码

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


加好友 发短信
等级:九尾狐 帖子:2585 积分:20430 威望:0 精华:0 注册:2012/5/19 11:57:00
  发帖心情 Post By:2025/4/1 16:30:00 [只看该作者]

加工商名称 产品名称 产品规格 产品型号 有重复记录的 多算了

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


加好友 发短信
等级:超级版主 帖子:113188 积分:576369 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/4/1 16:36:00 [只看该作者]

Tables(e.form.Name & "_Table1").fill("select a.*,b.已交货数量 from (select  加工商名称,产品名称,产品规格,产品型号,sum(发出数量) as 计划数,0 as 已交货数量, 0 as 未交货数量,状态,可超出比例,'' As 是否已完成,开单时间  from  {加工计划明细} where 单据状态='已审核' and 单据类别='横机' group by 加工商名称,产品名称,产品规格,产品型号,状态,可超出比例,是否已完成,开单时间) as a left join (select  c.加工商名称,c.产品名称,c.产品规格,c.产品型号,sum(c.收回数量) as 已交货数量 from {加工收发明细} as c inner join  {加工计划明细} as  d on c.加工商名称=d.加工商名称 AND c.产品名称=d.产品名称 and c.产品规格=d.产品规格 and c.产品型号=d.产品型号 where d.单据状态='已审核' and d.单据类别='横机' group by c.加工商名称,c.产品名称,c.产品规格,c.产品型号) as b on a.加工商名称=b.加工商名称 AND a.产品名称=b.产品名称 and a.产品规格=b.产品规格 and a.产品型号=b.产品型号","wjhansdata",True)

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


加好友 发短信
等级:九尾狐 帖子:2585 积分:20430 威望:0 精华:0 注册:2012/5/19 11:57:00
  发帖心情 Post By:2025/4/1 16:43:00 [只看该作者]

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

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


加好友 发短信
等级:超级版主 帖子:113188 积分:576369 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/4/1 16:45:00 [只看该作者]

3楼原代码肯定也有重复啊,不同的开单时间,肯定是有多行

 回到顶部
总数 12 1 2 下一页