Foxtable(狐表)用户栏目专家坐堂 → 使用记录窗口输入新数据


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

主题:使用记录窗口输入新数据

美女呀,离线,留言给我吧!
Phoebe菲比
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
使用记录窗口输入新数据  发帖心情 Post By:2022/4/11 16:14:00 [只看该作者]

最近一直在设计窗口,调整各种控件的格式实在太烦人了,想了办法用记录窗口代替各类列表、文本框、日期等控件,不知道可不可行?
不太熟悉记录窗口和表事件的功能。
现在想实现一个功能:先在“项目信息”表中找到对应的“项目名称”列表,再根据选中的项目名称在“合同信息”表中找到对应的“合同名称”列表。

这是我的代码:表事件--->PrepareEdit事件
Select Case e.Col.name
    Case "项目名称"
        e.Col.combolist = DataTables("项目信息").SQLGetComboListString(e.Col.name)
    Case "合同名称"
        e.Col.combolist = DataTables("合同信息").SQLGetComboListString("合同名称","项目名称 = '" & e.NewValue & "'")
End Select

目前该代码是不可运行的,想请各位大佬指导下。
另外还想了解下,记录窗口可不可以代替窗口输入?有什么方法可以更简洁地设计窗口,调整各类控件尺寸实在太繁琐了。

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110746 积分:563656 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/11 16:22:00 [只看该作者]

如果是为了设置下拉项目,这个代码不会有问题。

最简洁地设计方式就是花钱找个人替您做,不然还是老老实实动手吧

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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 16:27:00 [只看该作者]

请问用记录窗口可以替代窗口控件设计吗?


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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 16:29:00 [只看该作者]

目前出现了这样的问题。
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220411162818.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 16:30:00 [只看该作者]

我大概是想实现一个类似行政区域案例的目录树下拉的效果,但是每一列来自不同的表,同时能在记录窗口显示。

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110746 积分:563656 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/11 16:42:00 [只看该作者]

e.Col.combolist = DataTables("合同信息").SQLGetComboListString("合同名称","项目名称 = '" & e.row("项目名称") & "'")

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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 17:08:00 [只看该作者]

Select Case e.Col.name
    Case "项目名称"
        e.Col.combolist = DataTables("项目信息").SQLGetComboListString(e.Col.name)
    Case "合同名称"
        ' Dim r1 As String = e.Row("项目名称")
        If e.Col Is Nothing Then
            e.Row.Reject
        Else
            e.Col.combolist = DataTables("合同信息").SQLGetComboListString("合同名称","项目名称 = '" & e.Row("项目名称")  & "'")
        End If
End Select


 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110746 积分:563656 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/11 17:09:00 [只看该作者]

if判断没有任何用处,去掉

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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 17:10:00 [只看该作者]

蓝版,我还想实现一个选择性的功能:如果“项目名称”下对应项目没有对应的合同,则清空除“项目名称”外其他列的全部内容,等于新输入数据。
用于在我选错一条数据后,重新再选择一个数据。

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


加好友 发短信
等级:幼狐 帖子:158 积分:1004 威望:0 精华:0 注册:2021/8/17 15:39:00
  发帖心情 Post By:2022/4/11 17:16:00 [只看该作者]

主要是用来判断 该项目名称下是否已经录入对应的合同。
比如说我已经选中了一个已有的,但是想改成一个没有的(等于直接在该行重新输入),则需要清空其他列自动输入的值。

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