Foxtable(狐表)用户栏目专家坐堂 → 后台数据问题


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

主题:后台数据问题

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/2 16:32:00 [显示全部帖子]

使用sql

先更新
up
date 订单 set 余量 = 余量 - b.用量 from 订单 as a inner join  (selec编码,sum(用量) as 用量 from 表a where 编码='614-1' group by 编码) as b on a.编码 = b.编码 where a.码 = '614-1' 

然后取临时表
Select *  From 订单 where 编码 = '614-1'  and 余量> 0 

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/3 9:39:00 [显示全部帖子]


如果使用update就没有必要在遍历了,直接一条SQL搞定

Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "update 工序清单 SET 可派工量 = 工序数量 - b.派工量 from 工序清单 as a inner join  (select 编号,sum(派工量) as 派工量 from 派工明细表 group by 编号 ) As b on a.编号 = b.编号 where " & filter
cmd.ExecuteNonQuery()

If Filter >"" Then
    Filter = Filter & " And "
End If
Filter = Filter & "[可派工量] > 0 "

If Filter > "" Then
    DataTables("工序库调用_Table1").LoadFilter = Filter '设置加载条件
    DataTables("工序库调用_Table1").Load()
End If

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/3 15:12:00 [显示全部帖子]

删除后要保存。

试试:可派工量 =  isnull(工序数量,0) - isnull(b.派工量,0)

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/3 16:33:00 [显示全部帖子]

 inner join 改为 left join

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


加好友 发短信
等级:超级版主 帖子:106132 积分:539771 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/3 17:03:00 [显示全部帖子]

上传实例测试

 回到顶部