Foxtable(狐表)用户栏目专家坐堂 → 关联表的加载问题


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

主题:关联表的加载问题

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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
关联表的加载问题  发帖心情 Post By:2020/5/15 22:20:00 [只看该作者]

窗体开发:
窗体打开加载数据,关联表(主表和明细):

1.作下面加载,效果不是很好,有时会关联加载,有时不会加载:
Dim y As Integer = Date.Today.Year
Dim m As Integer = Date.Today.Month
Dim dt1 As New Date(y, m, 1)
Dim dt2 As New Date(y, m, Date.DaysInMonth(y, m)) 
Dim Filter As String
Filter = "交货日期>= #" & dt1 & "# And 交货日期<= #" & dt2 & "#"
DataTables("订单登记主表").LoadFilter = Filter          
DataTables("订单登记主表").Load()
DataTables("订单登记明细").LoadFilter = Filter         
DataTables("订单登记明细").Load()

2.   父表与子表同步加载  :e.DataTable.LoadChildren("子表"),用这个试一下,也是不很好?
要如何实现?

3.窗口打开加载,及并发用OpenQQ实现独占式编辑,冲突?

窗口编辑

上述方案针对的是直接在表中编辑数据,如果不是在表中编辑,而是在窗口编辑,编码方式也是基本相同的。
通常只需将打开编辑窗口的代码改为:

Dim r As Row = Tables("B").Current
If
 QQClient.Ready = False Then '如果QQClient没有启动,则禁止编辑
    PopMessage("
必须启动QQClient,才能编辑此表数据!","提示",PopIconEnum.Infomation,5)
    Return

End
 If
If
 r.DataRow.RowState <>  DataRowState.Added Then '如果不是新增行
    Dim key As String = "
B"  & ":" & r("_Identify")
    If tbrk.Contains(key) = False Then
        Dim msg = QQClient.SendWait("?#" & Key & "#?",5'
向服务器发送请求编辑信息
        If msg = "OK" Then '
如果服务器返回OK
            tbrk.Add(key) '
在本地登记正在编辑此行
        ElseIf msg > "" Then '
否则显示服务器返回的信息,并取消编辑
            PopMessage("
无法编辑此行,因为:" & vbcrlf & msg ,"提示",PopIconEnum.Infomation,5)
            Return
        Else '
如果服务器没有返回信息,则取消编辑
            
PopMessage("因服务器无响应,无法编辑此行!" ,"提示",PopIconEnum.Infomation,5)
            Return
        End If
    End If

End
 If
Forms
("编辑窗口").Open()






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


加好友 发短信
等级:九尾狐 帖子:2180 积分:13804 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2020/5/16 1:51:00 [只看该作者]

1 这个代码要写在窗体的AfterLoad事件里面,肯定会关联加载

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


加好友 发短信
等级:超级版主 帖子:106204 积分:540143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/16 8:52:00 [只看该作者]

1/2、肯定可以加载,除非没有符合条件的数据

3、怎么个冲突法?

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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/5/16 9:50:00 [只看该作者]


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

窗口设计,
1,单独打录入窗口,窗口正常;
2,打开录入窗口后,打开审核窗口,就如图异常;
3,还有录入完成,在录入窗口看是正常,关联,但打开审核窗口后,发现有的记录有关联,有的记录是没有关联,同样在录入窗口,操作,没有做改动,怎会这样?

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


加好友 发短信
等级:超级版主 帖子:106204 积分:540143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/16 9:57:00 [只看该作者]

主表只能出现在一个窗口,如果有多个窗口使用同一个表的,请改为副本:http://www.foxtable.com/webhelp/topics/1906.htm

另外注意主表和副本显示和选择的行可能是不一样的,可以考虑做联动:http://www.foxtable.com/webhelp/topics/2631.htm

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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/5/16 10:34:00 [只看该作者]

1,这个又到问题,狐表不支持关联副表;
2,副表就失去关联的意义,以前,没注意,现在发现狐表的关联不是很好,同是要一个录入窗口录入数据,有的可以关联,有的没关联,没认真试,是发现不了;
3,最近越做越问题多,从单个功能,没发现问题,多个功能在一起,发现之前做的有问题,真的晕。

4,狐表不支持关联副表,发现很多设计很受限制,还在数据引用,完整性不是很好,会不完整。

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


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


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


加好友 发短信
等级:五尾狐 帖子:1152 积分:7712 威望:0 精华:0 注册:2019/6/13 9:57:00
  发帖心情 Post By:2020/5/16 12:28:00 [只看该作者]

使用模拟关联:http://www.foxtable.com/webhelp/topics/2222.htm试一下这个,是跨表引用的功能,并不是达到关联操作功能,而且这个很实用,太繁杂,看视频的时,好象废掉,但帮助没删除,不记哪个视频讲。
1,这个方法,本身就有关联设计,只一个字段,这个与关联设计没有什么区别?
2,实为跨表引值,以单号为索引,作为跨表引值,不如跨表更新或其他方法简单,实用,代码和事件设计太繁杂
3,对后续引用,引到另一个窗口进行操作,又重新设计,十分太繁杂,一套应用,用此方法,其代码量相当多,工作量相当大,

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


加好友 发短信
等级:超级版主 帖子:106204 积分:540143 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/16 13:31:00 [只看该作者]

关联表只能在一个窗口显示,如果要同时在多个窗口使用,只能使用模拟关联。

 回到顶部