Foxtable(狐表)用户栏目专家坐堂 → 满足条件统计


  共有3071人关注过本帖平板打印复制链接

主题:满足条件统计

美女呀,在线,快来找我吧!
nuoyan89
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:450 积分:3112 威望:0 精华:0 注册:2020/10/9 8:45:00
满足条件统计  发帖心情 Post By:2022/2/19 17:30:00 [只看该作者]

老师,我在窗口表中需要设置状态,如下:我有两个表(分别为:A表和B表),根据生产批次,加工工序、使用设备、成品编码等条件,在B表中统计“加工状态” 列中如果有空值,并且表A的“待加工数”列小于或等于0,表A中的刀具状态为“待还刀”;如果加工状态列中没有空值,刀具状态为“已还刀”,如果表B中的统计根本没有这个相关的明细可统计,并且表A的“可排产数”列不等于表A中的“计划数量”,表A中的刀具状态为“待配刀”,如果表B中根本没有这个相关的明细可统计,并且表A的“合格品”列大于0,表A中的刀具状态为“无需刀具”。我想在窗口表中表事件中,请帮忙看看,谢谢!
以下这个刀码也帮忙看看,谢谢
If e.DataRow("刀具状态") <> "已还刀" AndAlso e.DataRow("使用设备") Like "*ZK*" Then
    Dim Filter12 As String = "[成品编码] = '" & e.DataRow("成品编码") & "' and [加工工序] = '" & e.DataRow("加工工序") & "'and [使用设备] = '" & e.DataRow("使用设备") & "' and [生产批次] = '" & e.DataRow("生产批次") & "'"'
    If DataTables("计划领用刀具").SQLCompute("count(加工状态)", Filter12) > 0  Then
        e.DataRow("刀具状态") = "已还刀"
    ElseIf  DataTables("计划领用刀具").SQLCompute("count(加工状态)", Filter12) < 0   Then
        e.DataRow("刀具状态") = "待还刀"
    ElseIf   e.DataRow("合格品") > 0  AndAlso  e.DataRow("待加工数") > 0 AndAlso  DataTables("计划领用刀具").SQLCompute("count(加工状态)", Filter12) = Nothing   Then
        e.DataRow("刀具状态") = "进行中"
    ElseIf  e.DataRow("待加工数") = e.DataRow("计划数量") AndAlso DataTables("计划领用刀具").SQLCompute("count(加工状态)", Filter12) = Nothing   Then
        e.DataRow("刀具状态") = "未加工"
    End If
End If

 回到顶部