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


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

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

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/28 10:29:00 [显示全部帖子]

关联表无法实现这种功能,只能手工编码用Compute进行统计

http://www.foxtable.com/webhelp/scr/0681.h

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/28 10:55:00 [显示全部帖子]


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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/30 9:01:00 [显示全部帖子]

参考:http://www.foxtable.com/webhelp/scr/2747.htm注意看示例六


    For Each p As String() In dt.GetValues("产品名称|生产工序|订单号")
        Dim dr As DataRow = DataTables ("生产进度汇总表").AddNew()
        dr("产品") = p(0)
        dr("生产工序") = p(1)
        dr("订单号") = p(2)
        dr("实际生产数") = dt.Compute("sum(数量)","[产品名称] = '" & p(0) & "' and 生产工序='" & p(1) & "' and 订单号='" & p(2) & "'")
    Next

其它2个表也一样,自己参考改改

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/1 8:44:00 [显示全部帖子]

对于半成品和生产计划表来说,根本没有生产工序这玩意,那么上面表格同一个订单号和产品,不同的生产工序的不同的值是怎么来的?

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/1 12:13:00 [显示全部帖子]

参考:http://www.foxtable.com/webhelp/scr/1058.htm,比如:

Dim Filter As String
With e.Form.Controls("StartDate")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("EndDate")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 <= #" & .Value & "#"
    End If
End With
If Filter > "" Then Filter = " and "Filter
Arys = DataTables("冲压车间工资表").GetValues("产品名称|生产工序|订单号", "产品名称 is not null" & Filter )

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/1 21:17:00 [显示全部帖子]

Dim Filter As String
With e.Form.Controls("StartDate")
    If .Value   IsNot   Nothing   Then
        If Filter >""   Then
            Filter = Filter &   " And "
        End   If
        Filter = Filter &   "日期 >= #" & .Value &   "#"
    End   If
End   With
With e.Form.Controls("EndDate")
    If .Value   IsNot   Nothing   Then
        If Filter >""   Then
            Filter = Filter &   " And "
        End   If
        Filter = Filter &   "日期 <= #" & .Value &   "#"
    End   If
End   With
If Filter > "" Then Filter = " and " & Filter
DataTables("生产进度汇总表").DataRows.Clear
Dim Arys As List(Of String())
Arys = DataTables("冲压车间工资表").GetValues("产品名称|生产工序|订单号", "产品名称 is not null" & Filter )
.....

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/1 22:57:00 [显示全部帖子]

Dim Filter As String
With e.Form.Controls("StartDate")
    If .Value   IsNot   Nothing   Then
        If Filter >""   Then
            Filter = Filter &   " And "
        End   If
        Filter = Filter &   "日期 >= #" & .Value &   "#"
    End   If
End   With
With e.Form.Controls("EndDate")
    If .Value   IsNot   Nothing   Then
        If Filter >""   Then
            Filter = Filter &   " And "
        End   If
        Filter = Filter &   "日期 <= #" & .Value &   "#"
    End   If
End   With
If Filter > "" Then Filter = " and " & Filter
DataTables("生产进度汇总表").StopRedraw
DataTables("生产进度汇总表").DataRows.Clear
Dim Arys As List(Of String())
Arys = DataTables("冲压车间工资表").GetValues("产品名称|生产工序|订单号", "产品名称 is not null" & 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) & "'")
Next
Dim dt As DataTable
Dim g As New GroupTableBuilder("统计表1", DataTables("半成品完工进仓表"))
g.Groups.AddDef("产品名称")
g.Groups.AddDef("订单号")
g.Totals.AddDef("数量")
dt = g.Build(False)

For Each dr As DataRow In dt.DataRows
    DataTables("生产进度汇总表").ReplaceFor("半成品进仓数",dr("数量"),"[产品名称] = '" & dr("产品名称") &  "' and 订单号='" & dr("订单号") & "'")
Next
Dim g2 As New GroupTableBuilder("统计表2", DataTables("生产计划表"))
g2.Groups.AddDef("产品名称")
g2.Groups.AddDef("订单号")
g2.Totals.AddDef("数量")
dt = g2.Build(False)
For Each dr As DataRow In dt.DataRows
    DataTables("生产进度汇总表").ReplaceFor("生产计划数",dr("数量"),"[产品名称] = '" & dr("产品名称") &  "' and 订单号='" & dr("订单号") & "'")
Next
DataTables("生产进度汇总表").ResumeRedraw
[此贴子已经被作者于2016/12/1 22:58:46编辑过]

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/2 8:36:00 [显示全部帖子]

OK

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/14 22:53:00 [显示全部帖子]


[此贴子已经被作者于2016/12/15 8:07:34编辑过]

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


加好友 发短信
等级:超级版主 帖子:106481 积分:541558 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/14 23:10:00 [显示全部帖子]

需要什么筛选条件自己设置

 回到顶部
总数 24 上一页 1 2 3 下一页