以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 当前数据频繁刷新?怎么设定开关控制他只刷新一次,然后等待下次刷新启动再开始刷新…… (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=177177)
|
-- 作者:cnsjroom
-- 发布时间:2022/5/11 20:20:00
-- 当前数据频繁刷新?怎么设定开关控制他只刷新一次,然后等待下次刷新启动再开始刷新……
当前数据频繁刷新?怎么设定开关控制他只刷新一次,然后等待下次刷新启动再开始刷新……
此主题相关图片如下:1212.gif
以下内容是专门发给有点蓝浏览
计划任务1代码 【默认为运行状态】 Dim i As Integer Dim cmd As New SQ LCommand cmd.Connect ionN ame = "无纸化会议" cmd.Comma ndText = "SEL ECT Count(*) Fr om 系统设置 where 设置名=\'同步会议议题开关\' and 设置内容=\'true\'" \'判断多少符合行\' i =cmd.ExecuteScalar Dim up11 As Boolean If cmd.ExecuteScalar > 0 Then vars("up11")=True
MyTimers("同步会议议题").Enabled = True Else vars("up11")=False
MyTimers("同步会议议题").Enabled = False
End If
同步会议议题任务代码 【默认为暂停状态】
If Forms("会议主体").opened Then If vars("up11")=True Then If vars("会议主题uuid") <>"" Then Dim cmd As New SQLCo mmand cmd.Con nectio nName = "无纸化会议" Dim dt,dt1 As DataTable cmd.Comm andText = "sel ect * Fro m 会议议题 where 主题uuid=\'" & vars("会议主题uuid") &"\'" dt = cmd.Exe cuteReader() Tables("会议主体_table1").DataSource =dt Tables("会议主体_table1").SetColVisibleWidth("议题标题|500") With Tables("会议主体_table1") Dim r As Integer r = .FindRow("开始状态= true and 结束状态=false ") \'从第一行开始查找 If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. \'Tables("会议主体_table2").Filter="uuid=\'"& Tables("会议主体_table1").Current("uuid") &"\'" End If End With End If End If vars("up11")=False End If
[此贴子已经被作者于2022/5/11 20:48:39编辑过]
|
-- 作者:有点蓝
-- 发布时间:2022/5/12 8:50:00
--
个人的建议是不要使用计划管理来刷新,又不是几十万条数据,那么几行数据直接在按钮里刷新即可。
|
-- 作者:cnsjroom
-- 发布时间:2022/5/12 9:34:00
-- 回复:(有点蓝)个人的建议是不要使用计划管理来刷新...
只要是项目安装在多个终端电脑上,其中一个电脑操作,其他的终端项目自动加载数据,准确地说,也是刷新数据,显示当前表中开始状态为true 结束状态为false的数据行。
按钮刷新的话,需要用户去手动点,不大即时!
老师楼上的代码 老师有没有办法帮忙指导下呢?
|
-- 作者:有点蓝
-- 发布时间:2022/5/12 9:51:00
--
自动刷新就是这种效果了,没有办法的
|
-- 作者:cnsjroom
-- 发布时间:2022/5/12 10:25:00
-- 回复:(有点蓝)自动刷新就是这种效果了,没有办法的...
1、当点击开始议题按钮后 会将系统设置表中同步会议议题开关=true
2、任务1 计划代码 (5000ms定时自动运行) 判断系统设置表中同步会议议题开关=true 设置变量up11=true 启动同步会议议题计划任务
3、启动同步会议议题任务计划代码 (默认暂停) 开始判断up11=true时 (false时不做任何操作) 刷新数据 然后更新变量up11=false
老师 我当前的设计思路及内容如上 当前问题就在第3,不能实现第2设置变量up11=false时 暂停第3这个计划任务
有没有办法实现呢?
|
-- 作者:有点蓝
-- 发布时间:2022/5/12 10:32:00
--
这个意思?
3、启动同步会议议题任务计划代码 (默认暂停) 开始判断up11=true时 (false时不做任何操作) MyTimers("同步会议议题任务计划").Enabled = false 刷新数据 然后更新变量up11=false
同步会议议题任务代码 【默认为暂停状态】 If Forms("会议主体").opened Then If vars("up11")=True Then MyTimers("同步会议议题").Enabled = False If vars("会议主题uuid") <>"" Then Dim cmd As New SQLCo mmand cmd.Con nectio nName = "无纸化会议" Dim dt,dt1 As DataTable cmd.Comm andText = "sel ect * Fro m 会议议题 where 主题uuid=\'" & vars("会议主题uuid") &"\'" dt = cmd.Exe cuteReader() Tables("会议主体_table1").DataSource =dt Tables("会议主体_table1").SetColVisibleWidth("议题标题|500") With Tables("会议主体_table1") Dim r As Integer r = .FindRow("开始状态= true and 结束状态=false ") \'从第一行开始查找 If r >= 0 Then \'如果找到的话 .Position = r \'定位到找到的行. \'Tables("会议主体_table2").Filter="uuid=\'"& Tables("会议主体_table1").Current("uuid") &"\'" End If End With End If End If vars("up11")=False End If
[此贴子已经被作者于2022/5/12 10:34:31编辑过]
|
-- 作者:cnsjroom
-- 发布时间:2022/5/12 11:06:00
-- 回复:(有点蓝)这个意思?3、启动同步会议议题任务计...
还是没有实现 数据一样的是按照计划任务的时间在刷新!
同步会议议题这个计划任务我设置了允许暂停的!
楼上的代码运行后貌似没有暂停
|
-- 作者:有点蓝
-- 发布时间:2022/5/12 11:27:00
--
是不是还有其它代码有启动了计划?
|
-- 作者:cnsjroom
-- 发布时间:2022/5/12 15:43:00
-- 回复:(有点蓝)是不是还有其它代码有启动了计划?
此主题相关图片如下:1.png
同步会议议题如果找到开始状态=true 结束状态=false的数据后 会定位到符合条件的行
同时该定位操作,会触发会议议题卡片表currentchanged代码:
有没有办法实现:
如何当前定位到的行,状态没有改变,那就视为默认打开资料按钮不要再次模拟点击,
下面红色部分代码怎么修正呢?
会议议题卡片表currentchanged代码:
Dim zs1 As Integer = Tables(e.form.name & "_table1").Count Dim zl As WinForm.Button = e.Form.Controls("默认打开资料") If zs1 >0 Then If Tables(e.form.name & "_table1").Current("uuid")<>"" Then vars("议题uuid")=Tables(e.form.name & "_table1").Current("uuid") vars("主题uuid")=Tables(e.form.name & "_table1").Current("主题uuid") vars("议题标题")=Tables(e.form.name & "_table1").Current("议题标题") Tables(e.form.name & "_table2").Filter="uuid=\'" & Tables(e.form.name & "_table1").Current("uuid") &"\'and 会议议题= \'" & Tables(e.form.name & "_table1").Current("议题标题") &"\'" zl.PerformClick End If End If
默认打开资料按钮代码:
Dim wb As WinForm.WebBrowser = e.Form.Controls("WebBrowser1") Dim tb As WinForm.TabControl = e.Form.Controls("TabControl1") Dim pc As WinForm.PictureBox = e.Form.Controls("PictureBox1") If Tables(e.form.name & "_table2").Current Is Nothing Then wb.Address=Nothing pc.Image = GetImage(Nothing) Return End If Dim lst As List(of String) lst = Tables(e.form.name & "_table2").Current.DataRow.Lines("文件名") \'msgbox("第一个文件为:" & lst(0)) vars("文件名")=lst(0) Dim dr As DataRow = Tables(e.form.name & "_table2").Current.DataRow Dim fl As String = ProjectPath & "下载文件\\" & lst(0) If FileSys.FileExists(fl) AndAlso CRCCheckFile(fl) = dr.SQLGetValue("CRC值") Then \'如果本地存在同名文件且CRC校验值相同 \'则直接使用本地文件 Else \'否则从数据库提取文件 If dr.SQLLoadFile("附件",fl) = False Then \'如果提取文件失败 Messagebox.Show("附件提取失败,可能并不存在附件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information) Return End If End If Dim bbb As String =dr("文件类型") If bbb.Contains("bmp") Or bbb.Contains("jpg") Or bbb.Contains("gif") Or bbb.Contains("png") Then wb.Address = Nothing pc.Image = GetImage(fl) tb.SelectedIndex=1 Else If bbb.Contains("xls") Or bbb.Contains("xlsx") Or bbb.Contains("doc") Or bbb.Contains("docx") Or bbb.Contains("txt") Or bbb.Contains("pdf") Then wb.Address = fl pc.Image = GetImage(Nothing) tb.SelectedIndex=0 End If vars("文件")=fl If Forms("全屏预览").opened Then Dim bt As WinForm.Button = Forms("全屏预览").Controls("Button1") bt.PerformClick End If
|
-- 作者:有点蓝
-- 发布时间:2022/5/12 15:51:00
--
[此贴子已经被作者于2022/5/12 15:53:12编辑过]
|