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


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

主题:满足条件查找

美女呀,离线,留言给我吧!
nuoyan89
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/5 20:44:00 [显示全部帖子]

老师,要分开估计比较难了,这个系统用了4年多了,里面数据快百把万了,要满足现在的需求有其他方法吗?

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/6 8:23:00 [显示全部帖子]

老师,就是以下的代码,目前实际操作中是有空行,如图1,这个空行能不能不显示呢?2、填充的数据中能否指定列的填充(只需要采购订单号、供应商名称、单价这三列)如图2,但是实际情况是所有的都填充了如图1,请帮忙看看,谢谢

If e.KeyCode = Keys.Enter Then
    Dim sl As Integer = Val(e.Sender.Text)
    Dim bm As String = e.Form.Controls("材料编码1").text
    If sl > 0 AndAlso bm > "" Then
        Dim t As Table = e.Form.Controls("出库").Table
        If t.DataTable.HasChanges Then
            t.DataTable.save
        End If 
        If DataTables("入库明细").GetValues("供应商名称", "成品编码='" & bm & "' And 入库类型= '在库'").count > 1 Then
            Vars("bm") = bm
            Forms("窗口1").Open
        End If
        Dim filter As String = "成品编码='" & bm & "'And 入库类型= '在库'"
        If vars("供应商名称") > "" Then
            filter = filter & " and 供应商名称='" & vars("供应商") & "'"
        End If
        For Each dr As DataRow In DataTables("入库明细").Select(filter, "采购订单号")
            If dr("可出数量") >= sl Then
                Dim dr1 As DataRow = t.DataTable.AppendLoad("[_identify] = " & dr("_identify"), False)(0)
                dr1("出库数量") = sl
                dr1("可出数量") = dr1("可出数量") - sl
                Exit For
            Else
                Dim dr1 As DataRow = t.DataTable.AppendLoad("[_identify] = " & dr("_identify"), False)(0)
                dr1("出库数量") = dr1("可出数量")
                sl = sl - dr1("可出数量")
                dr1("可出数量") = 0
            End If 
        Next 
    End If
End If

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看



 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/9 9:32:00 [显示全部帖子]

老师,我把操作的步骤录了个屏,就是在最后那里之后,希望输入出库数量后,能满足下面的需求,谢谢!
1、如果供应商名称只有一家,并且出库数量小于或等于入库明细表里的可出库数,不用作任何提示,按照先进先出的原则进行分配,采购订单号、供应商名称、单价等这三列的信息填充到窗口表对应的列里;
2、如果供应商名称只有一家,但出库数量大于入库明细表里的可出库数量,需要做提示框告知,点击确定,则新增行直到把剩余的数量按照先进先出的原则进行分配完成,采购订单号、供应商名称、单价等这三列的信息填充到窗口表对应的列里,点击取消,窗口表出库数量则为空白;
3、如果供应商名称不一家,那需要弹出临时窗口,由操作工去选择对应的供应商,如果出库数量小于或等于可出库数量,按照先进先出的原则进行分配,采购订单号、供应商名称、单价等这三列的信息填充到窗口表对应的列里;
4、如果供应商名称不一家,那需要弹出临时窗口,由操作工去选择对应的供应商,如果出库数量大于可出库数量,则新增行直到把剩余的数量按照先进先出的原则进行分配完成,采购订单号、供应商名称、单价等这三列的信息填充到窗口表对应的列里,点击取消,窗口表出库数量则为空白;
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:管理项目1.rar
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:实际操作.rar






 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/9 10:06:00 [显示全部帖子]

老师,我把表分开了,这样可以吗?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/11 14:42:00 [显示全部帖子]

老师,代码我增加了两个内容,供应商名称和单价,目前操作结果如图1,但是能不能出库数量小于可出数量时让他直接在显示出来的内容中直接填充对应的信息呢(采购订单号、单价、供应商名称等),不要新增行,只有出库数量大于可出数量时才新增对应的行,最终想像如图2那样的。

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看



 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/11 22:38:00 [显示全部帖子]

代码没变,就是把供应商名称和单价自己带,老师,红色的代码不要新增,直接把单价,最早的采购订单号显示到对应编码的列里面!因为可出数量大于出库数量!
If e.KeyCode = Keys.Enter Then
    Dim sl As Integer = Val(e.Sender.Text)
    Dim bm As String = e.Form.Controls("材料编码1").text
    If sl > 0 AndAlso bm > "" Then
        Dim t As Table = e.Form.Controls("出库").Table
        If t.DataTable.HasChanges Then
            t.DataTable.save
        End If 
        If DataTables("入库明细").GetValues("供应商名称", "成品编码='" & bm & "' And 入库类型= '在库'").count > 1 Then
            Vars("bm") = bm
            Forms("窗口1").Open
        End If
        Dim filter As String = "成品编码='" & bm & "'And 入库类型= '在库'"
        If vars("供应商名称") > "" Then
            filter = filter & " and 供应商名称='" & vars("供应商") & "'"
        End If
        For Each dr As DataRow In DataTables("入库明细").Select(filter, "采购订单号")
            If dr("可出数量") >= sl Then
                Dim dr1 As DataRow = t.DataTable.addnew
                dr1("采购订单号") = dr("采购订单号")
                dr1("成品编码") = dr("成品编码")
                dr1("成品描述") = dr("成品描述")
                dr1("单价") = dr("单价")
                dr1("供应商名称") = dr("供应商名称")
                dr1("出库数量") = sl
                dr("可出数量") = dr("可出数量") - sl
                Exit For
            Else
                Dim dr1 As DataRow = t.DataTable.addnew
                dr1("采购订单号") = dr("采购订单号")
                dr1("单价") = dr("单价")
                dr1("供应商名称") = dr("供应商名称")
                dr1("成品编码") = dr("成品编码")
                dr1("成品描述") = dr("成品描述")
                dr1("出库数量") = dr("可出数量")
                sl = sl - dr("可出数量")
                dr("可出数量") = 0
            End If 
        Next 
    End If
End If

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/12 9:32:00 [显示全部帖子]

老师,我改成了红色的,我一次性出库数量大于可出数量时,按照正常的操作,应该是CGDD220727002  出库数量:734,剩下的66件,应该出这个订单号,CGDD220815010,但红色部分的代码只能做成如图1那样的,正确的应该是如图2,请帮忙看看!
If e.KeyCode = Keys.Enter Then
    Dim sl As Integer = Val(e.Sender.Text)
    Dim bm As String = e.Form.Controls("材料编码1").text
    If sl > 0 AndAlso bm > "" Then
        Dim t As Table = e.Form.Controls("出库").Table
        If t.DataTable.HasChanges Then
            t.DataTable.save
        End If 
        If DataTables("入库明细").GetValues("供应商名称", "成品编码='" & bm & "' And 入库类型= '在库'").count > 1 Then
            Vars("bm") = bm
            Forms("窗口1").Open
        End If
        Dim filter As String = "成品编码='" & bm & "'And 入库类型= '在库'"
        If vars("供应商名称") > "" Then
            filter = filter & " and 供应商名称='" & vars("供应商") & "'"
        End If
        For Each dr As DataRow In DataTables("入库明细").Select(filter, "采购订单号")
            If dr("可出数量") >= sl Then
                Dim dr8 As Row = Tables("零件库领料单_出库").current
                Dim Filter1 As String = "成品编码= '" & dr8("成品编码") & "' and 入库类型 = '在库'"
                dr8("采购订单号") = DataTables("入库明细").SQLCompute("min(采购订单号)", Filter1)
            Else
                Dim dr1 As DataRow = t.DataTable.addnew
                dr1("采购订单号") = dr("采购订单号")
                dr1("单价") = dr("单价")
                dr1("供应商名称") = dr("供应商名称")
                dr1("成品编码") = dr("成品编码")
                dr1("成品描述") = dr("成品描述")
                dr1("出库数量") = dr("可出数量")
                sl = sl - dr("可出数量")
                dr("可出数量") = 0
            End If 
        Next 
    End If
End If

图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.jpg
图片点击可在新窗口打开查看


 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/12 14:28:00 [显示全部帖子]

老师,还请帮忙看看,我咋调都达不到33楼要的效果(操作步骤:点击:窗口管理- 材料需求明细 - 查询 -- 在窗口表表格前面打勾 - 点击 生产需求明细 )

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/12 16:06:00 [显示全部帖子]

老师,有多家供应商的情况下,我选择了要的那一家,显示的不是自己指定的,我选择的是B供应商,但是显示出来的却是C供应商,请帮忙再看看,谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:1.rar

[此贴子已经被作者于2022/12/12 16:06:10编辑过]

 回到顶部
美女呀,离线,留言给我吧!
nuoyan89
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:415 积分:2896 威望:0 精华:0 注册:2020/10/9 8:45:00
  发帖心情 Post By:2022/12/13 9:06:00 [显示全部帖子]

谢谢,已找到原因,是因为有一个供应商名称写成了供应商,已改,谢谢!

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