Foxtable(狐表)用户栏目专家坐堂 → 全局表事件的PrepareEdit,效果却是只在主表中显示,而相应的副本表的功能却失效了,求应该怎么改?


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

主题:全局表事件的PrepareEdit,效果却是只在主表中显示,而相应的副本表的功能却失效了,求应该怎么改?

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


加好友 发短信
等级:四尾狐 帖子:902 积分:8258 威望:0 精华:0 注册:2012/10/19 13:55:00
全局表事件的PrepareEdit,效果却是只在主表中显示,而相应的副本表的功能却失效了,求应该怎么改?  发帖心情 Post By:2019/7/2 16:28:00 [只看该作者]

Select Case MainTable.Name
    Case "入库表" ,"出库表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
            End Select
        End If
    Case "过磅表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
            End Select
        End If
End Select

请问,以上代码写在全局表事件的PrepareEdit中,且Initialize项目事件已开启
For Each dt As DataTable In DataTables
    dt.GlobalHandler.PrepareEdit = True
Next
但是,效果却是只在主表中显示,而相应的副本表的功能却失效了,求应该怎么改?

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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/2 16:39:00 [只看该作者]

Case "入库表" ,"出库表","窗口1_table1" 加上副本表的名称

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


加好友 发短信
等级:四尾狐 帖子:902 积分:8258 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)Case "入库表" ,"出库表","窗口1_tab...  发帖心情 Post By:2019/7/2 16:51:00 [只看该作者]

既然已经是全局表事件中设置了,为什么还要专门制定副本表?
代码中已经设定过:
如主表为“入库表”的所有副表,包括主表和窗口副本表都应该同理的吗?
是我理解有误吗?

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


加好友 发短信
等级:四尾狐 帖子:902 积分:8258 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)Case "入库表" ,"出库表","窗口1_tab...  发帖心情 Post By:2019/7/2 16:59:00 [只看该作者]

Select Case MainTable.Name
    Case "入库表" ,"出库表" ,"开单界面窗口_入库表" ,"开单界面窗口_出库表" ,"录入界面窗口_入库表" ,"入库界面窗口_入库表","出库界面窗口_出库表" ,"定位入库窗口_入库表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
            End Select
        End If
    Case "过磅表","过磅界面窗口_过磅表","过磅窗口_过磅表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
            End Select
        End If
End Select

窗口表依旧失效?

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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/2 17:02:00 [只看该作者]

Select Case MainTable.Name

改为

Select Case e.Table.Name

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


加好友 发短信
等级:四尾狐 帖子:902 积分:8258 威望:0 精华:0 注册:2012/10/19 13:55:00
回复:(有点蓝)Select Case MainTable.Name改为Sele...  发帖心情 Post By:2019/7/2 17:16:00 [只看该作者]

Select Case e.Table.Name
    Case "入库表" ,"出库表" ,"开单界面窗口_入库表" ,"开单界面窗口_出库表" ,"录入界面窗口_入库表" ,"入库界面窗口_入库表","出库界面窗口_出库表" ,"定位入库窗口_入库表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
                Case "工序"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("工序", "[客户] = '" & e.Row("客户") & "' And [品名规格] = '" & e.Row("品名规格") & "'")
                Case "单位"
                    e.Col.Combolist = DataTables("入库表").GetComboListString("单位", "[客户] = '" & e.Row("客户") & "' And [品名规格] = '" & e.Row("品名规格") & "' And [工序] = '" & e.Row("工序") & "'")
            End Select
        End If
    Case "过磅表","过磅界面窗口_过磅表","过磅窗口_过磅表"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Select Case e.Col.name
                Case "客户"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("客户", "[车间] = '" & e.Row("车间") & "'")
                Case "品名规格"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("品名规格", "[客户] = '" & e.Row("客户") & "'")
                Case "工序"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("工序", "[客户] = '" & e.Row("客户") & "' And [品名规格] = '" & e.Row("品名规格") & "'")
                Case "单位"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("单位", "[客户] = '" & e.Row("客户") & "' And [品名规格] = '" & e.Row("品名规格") & "' And [工序] = '" & e.Row("工序") & "'")
                Case "流水线"
                    e.Col.Combolist = DataTables("过磅表").GetComboListString("流水线", "[客户] = '" & e.Row("客户") & "' And [品名规格] = '" & e.Row("品名规格") & "' And [工序] = '" & e.Row("工序") & "'")
            End Select
        End If
End Select

其他表都生效了,但是,含有“出库表”的副本表全都失效了?

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


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/2 17:28:00 [只看该作者]

确定副本表名称是正确的

既然副本Table是独立的,所以它必须有自己的名称,这样才能和原Table区分开来,其名称为 :

窗口名称_控件名称


 回到顶部