Foxtable(狐表)用户栏目专家坐堂 → 控制生产累计数不允许大于计划生产数


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

主题:控制生产累计数不允许大于计划生产数

美女呀,离线,留言给我吧!
意悠心轻
  61楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/14 23:32:00 [只看该作者]

哦,明白哪出问题了。

 


 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  62楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 9:33:00 [只看该作者]

还有问题,能否把生产进度表窗口中的按钮代码直接写到窗口5中统计显示,因为窗口5的数据源绑定生产进度表,生产进度表要每录入一次数据执行一下才好再在冲压工资表中录入下一个数量,否则很容易错,超生产计划录入数量也不知,而且我要在窗口5上显示的数据是符合当前行的产品名称、生产工序、订单号才显示统计结果,同时涉及筛选、统计,代码比较复杂,我的编程知识还是在学习阶段,还请指教。
[此贴子已经被作者于2016/12/15 9:33:54编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/15 9:34:00 [只看该作者]

 上传实例。

 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  64楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 9:40:00 [只看该作者]

 

[此贴子已经被作者于2016/12/15 20:02:09编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/15 10:12:00 [只看该作者]

 


以下内容是专门发给有点色浏览

[此贴子已经被作者于2016/12/16 16:54:34编辑过]

 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  66楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 17:18:00 [只看该作者]

我想在窗口5的选单统计中能把未生产的计划号和数量安产品名称、生产工序全显示出来。


 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  67楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 17:22:00 [只看该作者]

Dim t As Table = e.Form.DropTable
Dim Filter As String = "[产品名称] = '" & t.Current("产品名称") & "' and 生产工序='" & t.current("生产工序") & "'"
DataTables("生产进度汇总表").StopRedraw
DataTables("生产进度汇总表").DataRows.Clear
Dim Arys As List(Of String())
Arys = DataTables("冲压车间工资表").GetValues("产品名称|生产工序|订单号", filter)
For Each Ary As String() In Arys
    Dim dr As DataRow = DataTables("生产进度汇总表").AddNew()
    dr("产品名称") = Ary(0)
    dr("生产工序") = Ary(1)
    dr("订单号") = Ary(2)
    dr("实际生产数") = DataTables("冲压车间工资表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 生产工序='" & Ary(1) & "' and 订单号='" & Ary(2) & "'")
    dr("半成品进仓数") = DataTables("半成品完工进仓表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 订单号='" & Ary(2) & "'")
    dr("生产计划数") = DataTables("半成品完工进仓表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 订单号='" & Ary(2) & "'")
Next
DataTables("生产进度汇总表").ResumeRedraw
e.Form.DropDownBox.Select() '将输入焦点返回下拉列表框

 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  68楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 17:23:00 [只看该作者]

我把你的代码改成这样,但统计显示没未生产的计划单号和数量。

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/15 17:26:00 [只看该作者]

Dim t As Table = e.Form.DropTable
Dim Filter As String = "1=1"
If t.Current.IsNull("产品名称") = False Then
    filter &= " and [产品名称] = '" & t.Current("产品名称") & "'"
End If
If t.Current.IsNull("生产工序") = False Then
    filter &= " And 生产工序='" & t.current("生产工序") & "'"
End If
If t.Current.IsNull("订单号") = False Then
    filter &= " And 订单号='" & t.current("订单号") & "'"
End If

DataTables("生产进度汇总表").StopRedraw
DataTables("生产进度汇总表").DataRows.Clear
Dim Arys As List(Of String())
Arys = DataTables("冲压车间工资表").GetValues("产品名称|生产工序|订单号", filter)
For Each Ary As String() In Arys
    Dim dr As DataRow = DataTables("生产进度汇总表").AddNew()
    dr("产品名称") = Ary(0)
    dr("生产工序") = Ary(1)
    dr("订单号") = Ary(2)
    dr("实际生产数") = DataTables("冲压车间工资表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 生产工序='" & Ary(1) & "' and 订单号='" & Ary(2) & "'")
    dr("半成品进仓数") = DataTables("半成品完工进仓表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 订单号='" & Ary(2) & "'")
    dr("生产计划数") = DataTables("半成品完工进仓表").Compute("sum(数量)","[产品名称] = '" & Ary(0) & "' and 订单号='" & Ary(2) & "'")
Next

DataTables("生产进度汇总表").ResumeRedraw


e.Form.DropDownBox.Select() '将输入焦点返回下拉列表框


 回到顶部
美女呀,离线,留言给我吧!
意悠心轻
  70楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:3358 威望:0 精华:0 注册:2016/1/31 16:04:00
  发帖心情 Post By:2016/12/15 20:19:00 [只看该作者]


你的代码做出的效果还是没有完全没生产产品名称、计划数量,试录12月6日的数量在订单列窗口的未生产数明明显示有1584,安这数在本次录入数中录入,数量列却提示超计划数。

[此贴子已经被作者于2016/12/15 22:25:59编辑过]

 回到顶部