Foxtable(狐表)用户栏目专家坐堂 → GetComboListString 的运用


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

主题:GetComboListString 的运用

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/16 10:58:00 [显示全部帖子]

方法一:批号表加入一列表达式列,把批号和库存数量合并起来,如公式 批号+'-' + 库存数量

 

然后,代码改成

 

If e.IsFocusCell Then
    If e.Col.Name = "批号" Then
        e.Col.Combolist = DataTables("批号表").GetComboListString("表达式列", "[物料编号] =  '" & e.Row("物料编号") & "'")
    End If
End If
 
方法二:如4楼那样写代码,代码肯定没问题的,如果有问题,实例发上来测试。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/17 15:15:00 [显示全部帖子]

实例发上来测试。不可能的。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/17 16:03:00 [显示全部帖子]

以下是引用edisontsui在2018/9/17 15:58:00的发言:
我可以用QQ传吗?这里很难上传文件。

 

单独做一个新的项目发上来测试,不要整个项目发上来啊。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/18 17:56:00 [显示全部帖子]

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


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/19 10:41:00 [显示全部帖子]

请升级到最新版的商业版打开测试,除了有代码,还有表结构表数据的修改。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/19 14:40:00 [显示全部帖子]

If e.IsFocusCell Then
    If e.Col.Name = "批号" Then
        Dim fdr = DataTables("批号表").sqlfind("[物料编号] =  '" & e.Row("物料编号") & "'")
        If fdr IsNot Nothing Then
            e.Col.Combolist = fdr("批号") & "-" & fdr("库存数量")
        Else
            e.Col.Combolist = ""
        End If
    End If
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/19 16:12:00 [显示全部帖子]

代码没问题,你需要获取哪一行的库存?

 

请上传具体的对应的实例测试。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/19 16:59:00 [显示全部帖子]

以下是引用edisontsui在2018/9/19 16:58:00的发言:
你可以从23楼的附件里面看到,你现在的代码有2个问题:一、把所有批号和库存数量都显示出来了,我要的是只显示最旧那个批号及其库存数量;二、库存数量不对。

 

代码没问题,请上传对应实例测试。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/19 17:57:00 [显示全部帖子]

改成下面,如果还有问题,请上传具体实例测试
 
If e.IsFocusCell Then
    If e.Col.Name = "批号" Then
        Dim fdr = DataTables("批号表").find("[物料编号] =  '" & e.Row("物料编号") & "'", "批号")
        If fdr IsNot Nothing Then
            e.Col.Combolist = fdr("批号") & "-" & fdr("库存数量")
        Else
            e.Col.Combolist = ""
        End If
    End If
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/20 17:57:00 [显示全部帖子]

以下是引用edisontsui在2018/9/20 16:46:00的发言:
现在显示的内容是对了。但是又产生了新的问题:
当“批号”内显示出“20180801-6300”之后,我希望点击这串字符时,能将20180801这个批号输入到“批号”内,而不要将6300这些数量也输入进去。怎么写代码?谢谢。

 

changeEdit事件,写代码

 

If e.Col.name = "第四列" Then
    Dim ary() As String = e.text.split("-")
    If ary.length = 2 Then
        e.Table.FinishEditing
        e.Row(e.Col.name) = ary(0)
        e.Table.StartEditing
    End If
End If


 回到顶部
总数 14 1 2 下一页