Foxtable(狐表)用户栏目专家坐堂 → [求助]求几个关于下拉窗口与多值字段的问题?


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

主题:[求助]求几个关于下拉窗口与多值字段的问题?

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]求几个关于下拉窗口与多值字段的问题?  发帖心情 Post By:2018/11/26 16:21:00 [只看该作者]

第一个任务是:
在筐架表窗口中,各客户的筐架数合计,根据客户的不同,合计每个客户每种筐架的合计数,如:
客户为北京,窗口控件的铁箱等筐架数量,等于下表所示数据的合计;

第二个任务是:
表中的单笔筐架列,设置为下拉窗口类型,效果如:窗口中的下拉窗口的样子;

第三个任务是:
下拉窗口中的控件,为什么设置了初始值字符,可是绑定了列的数据后,显示的下拉窗口中,之前控件的设置的初始值字符不见了?有什么办法吗?

第四个任务是:
“单笔筐架”列的下拉窗口中输入的各样数据,以多值字段形式,显示在“单笔筐架”列的单元格中,效果如:
表中的第一行与第五行的客户北京的“单笔筐架”列,当前显示的内容。

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:测试1.table



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/26 17:14:00 [只看该作者]

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1 (1).table


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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]若“袋子和托盘”都未输入信息的情况下,单笔筐架显示:“1铁箱+1铁筐”?  发帖心情 Post By:2018/11/26 23:52:00 [只看该作者]

客户为海南,单笔筐架列显示:“铁箱+0袋子”?
能否做成:
若“袋子和托盘”都未输入信息的情况下,单笔筐架显示:“1铁箱+1铁筐”?

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
  发帖心情 Post By:2018/11/26 23:55:00 [只看该作者]

客户为海南,单笔筐架列显示:“铁箱+0袋子”?
能否做成:
若“袋子和托盘”都未输入信息的情况下,单笔筐架显示:“1铁箱+1铁筐”?
 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:测试1.table


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/27 9:08:00 [只看该作者]

代码改成

 

Dim t As Table = Tables("筐架表")
Dim v1 = val(e.Form.controls("textbox1").text)
If val(e.Form.controls("textbox1").text) <> Nothing Then
    t.Current("铁箱") = v1
Else
    v1 = 1
    t.Current("铁箱") = v1
End If
Dim v3 = val(e.Form.controls("textbox3").text)
If val(e.Form.controls("textbox3").text) <> Nothing Then
    t.Current("袋子") = v3
Else
    v3 = 1
    t.Current("袋子") = v3
End If

e.Form.DropDownBox.value = v1 & "铁箱+" & v3 & "袋子"


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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
  发帖心情 Post By:2018/11/27 10:30:00 [只看该作者]

不行呀?改的是哪个位置的代码?我都试过了,怎么不行?

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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]您的这段代码,不是太明白,我翻译了下,您看看  发帖心情 Post By:2018/11/27 10:52:00 [只看该作者]

直译:
定义筐架表t
定义下拉窗口控件textbox1中的内容字符化为v1
若控件1中内容不为空,则表中铁箱单元格内容为v1
否则v1=1,且则表中铁箱单元格内容为v1
若控件3中内容不为空,则表中铁箱单元格内容为v3
否则v3=1,且则表中铁箱单元格内容为v3
下拉窗口所在单元格内容显示为,v1铁箱+v3袋子

这其中的v1=1,v3=1,还有为什么,else还是单元格=v1或v3?
目标效果是,想要内容为空时,在下拉窗口所在单元格的内容中,不显示为空的值?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/27 12:24:00 [只看该作者]

代码没问题,我测试也没问题。

 

上传具体实例,说明如何操作,达到怎样效果才是你需要的。


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


加好友 发短信
等级:四尾狐 帖子:901 积分:8247 威望:0 精华:0 注册:2012/10/19 13:55:00
  发帖心情 Post By:2018/11/27 13:49:00 [只看该作者]

我将您的这段代码:

Dim t As Table = Tables("筐架表")
Dim v1 = val(e.Form.controls("textbox1").text)
If val(e.Form.controls("textbox1").text) <> Nothing Then
    t.Current("铁箱") = v1
Else
    v1 = 1
    t.Current("铁箱") = v1
End If
Dim v3 = val(e.Form.controls("textbox3").text)
If val(e.Form.controls("textbox3").text) <> Nothing Then
    t.Current("袋子") = v3
Else
    v3 = 1
    t.Current("袋子") = v3
End If

e.Form.DropDownBox.value = v1 & "铁箱+" & v3 & "袋子"


放进了下拉窗口的DropDownClosed属性当中替换了之前的代码。

但是,测试效果是,单笔框架列的下拉窗口中,铁箱文本框内,输入任何一个数字,袋子不输入数据,然后,袋子列的数据都只会变成了1。

如:“9铁箱+1袋子”

而不是想要的,袋子不输入数据,就不显示在单笔框架的多值文本中。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1 (1).table



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/27 15:06:00 [只看该作者]

 

Dim t As Table = Tables("筐架表")
Dim str As String = ""
Dim v1 = val(e.Form.controls("textbox1").text)
If val(e.Form.controls("textbox1").text) <> Nothing Then
    t.Current("铁箱") = v1
    str &= v1 & "铁箱+"
   
End If
Dim v3 = val(e.Form.controls("textbox3").text)
If val(e.Form.controls("textbox3").text) <> Nothing Then
    t.Current("袋子") = v3
    str &= v3 & "袋子+"
End If
e.Form.DropDownBox.value = str.trim("+")


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