Foxtable(狐表)用户栏目专家坐堂 → AFTERLOAD事件的调整问题


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

主题:AFTERLOAD事件的调整问题

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
AFTERLOAD事件的调整问题  发帖心情 Post By:2016/10/25 11:49:00 [只看该作者]

请教老师,以下代码在AFTERLOAD下打开窗口执行,用局域网,如何实现 计算机A 发布指令后, 计算机B能及时收到 就是LABEL的数字及时变化

 

目前,计算机B要重新登录后才能得到计算机A发布的指令,AFTERLOAD代码应该放在哪个属性下

(服务器的表里已经有指令数据了)

 

AFTERLOAD

Dim Filter181 As String = ""
Dim Count181 As Double
Count181 = DataTables("投标策划安排意见").Compute("Count(信息编号)","执行人 Like  '%" & _UserName & "%' and (收阅确认 not Like '%" & _UserName & "%' or 收阅确认 Is null)")
Dim lbl181 As WinForm.Label
lbl181 = e.Form.Controls("Label181")
Application.DoEvents()
lbl181.Text = "" & Count181 & ""

 

TIMETICK

Dim pbx181 As WinForm.PictureBox = e.Form.Controls("PictureBox37")
Dim lbl181 As WinForm.Label = e.Form.Controls("Label181")
If lbl181 IsNot Nothing Then
   Dim Count181 As Double
   Count181 = Tables("投标策划安排意见").DataTable.Compute("Count(信息编号)","执行人 Like  '%" & _UserName & "%' and (收阅确认 not Like '%" & _UserName & "%' or 收阅确认 Is null)")
   If Count181 = 0 Then
        pbx181.ImageFile = "GGreen.ico" '显示图片
    ElseIf Count181 >= 1 Then
        pbx181.ImageFile= "RRed.ico" '显示图片
    End If
lbl181.Text = "" & Count181 & ""
   'End If
End If

[此贴子已经被作者于2016/10/25 11:51:05编辑过]

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


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/25 12:00:00 [只看该作者]

TIMETICK
Dim pbx181 As WinForm.PictureBox = e.Form.Controls("PictureBox37")
Dim lbl181 As WinForm.Label = e.Form.Controls("Label181")
Dim Count181 As Double
Count181 = Tables("投标策划安排意见").DataTable.Compute("Count(信息编号)","执行人 Like  '%" & _UserName & "%' and (收阅确认 not Like '%" & _UserName & "%' or 收阅确认 Is null)")
If Count181 = 0 Then
    pbx181.ImageFile = "GGreen.ico" '显示图片
ElseIf Count181 >= 1 Then
    pbx181.ImageFile= "RRed.ico" '显示图片
End If
lbl181.Text = "" & Count181 & ""
Application.DoEvents()


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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2016/10/25 13:56:00 [只看该作者]

老师,加了Application.DoEvents() 还是原来的问题,计算机B只有重新登录后LABEL的数值才会有变化,TIMETICK不会及时同步反应代码功能

 

 

[此贴子已经被作者于2016/10/25 14:11:53编辑过]

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


加好友 发短信
等级:四尾狐 帖子:857 积分:6156 威望:0 精华:0 注册:2015/12/24 13:02:00
  发帖心情 Post By:2016/10/25 13:58:00 [只看该作者]

。。。。
[此贴子已经被作者于2016/10/25 13:58:32编辑过]

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


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/25 14:26:00 [只看该作者]

TIMETICK启用了没有?

图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2016/10/25 14:59:00 [只看该作者]

单机测试时就都启用了,在计算机A上发布指令后,切换登录用户后LABEL的值能变电,就是在计算机B上无法变动,感觉是要重新加载表LABEL的值才会变化

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


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/25 15:39:00 [只看该作者]

TIMETICK
Dim pbx181 As WinForm.PictureBox = e.Form.Controls("PictureBox37")
Dim lbl181 As WinForm.Label = e.Form.Controls("Label181")
Dim Count181 As Double
Count181 = Tables("投标策划安排意见").DataTable.Compute("Count(信息编号)","执行人 Like  '%" & _UserName & "%' and (收阅确认 not Like '%" & _UserName & "%' or 收阅确认 Is null)")
If Count181 = 0 Then
    pbx181.ImageFile = "GGreen.ico" '显示图片
ElseIf Count181 >= 1 Then
    pbx181.ImageFile= "RRed.ico" '显示图片
End If
lbl181.Text = "" & Count181 & ""
msgbox(Count181) ‘看能不能弹出内容’
Application.DoEvents()

另外表数据要保存,查出来的数据才会变化。最后如果这些都是内部数据表,放弃吧

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2016/10/25 15:57:00 [只看该作者]

老师不是内部表,启动项目后从服务器上加载进来的。      启动项目后弹出的值为0 

 

保存:在计算机A发指令的时候,通过BUTTON已经保存表数据了,保存后,服务器上SQLSERVER里面的表也及时增加行和数据了,经测试就是要重新加载表才能在

 

计算机B上变电数值。

[此贴子已经被作者于2016/10/25 16:01:02编辑过]

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


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/10/25 16:32:00 [只看该作者]

有没有每隔一段时间就弹出msgbox(Count181

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


加好友 发短信
等级:五尾狐 帖子:1174 积分:8782 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2016/10/25 16:52:00 [只看该作者]

msgbox(Count181) ‘看能不能弹出内容’加入这句代码后,一启动登录就无限的不断的出现小窗口显示值为0,只有重新启动计算机。

 

测试过程中,又发现,如果通过按键重新加载这张表后,数字可以变化。

 

相当于:第一次启动项目登录的时候,所COUNT的行为0,LABEL也显示0 ;   当计算机A增加行发布指令后,数据库里面的表也同步增加行和数据了,

 

            但是此时,计算机B已先于计算机A启动项目登录,所加载的表还没有计算机A后增加的行,不能被COUNT到,只要计算机B重新登录后,才加载新行进来被COUNT

 

           这时的LABEL才统计行。

 

问题:应该是后台的数据表的变动,怎样能及时同步加载到每台计算机上。


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