以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  计划管理问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=93559)

--  作者:douglas738888
--  发布时间:2016/12/1 14:23:00
--  计划管理问题

请教老师,下面代码想实现,打开通过公告窗口进行编辑的时候,计划管理暂停,当编制发布后,继续启动计划管理;

另外一个问题,打开系统,当通过公告加载新行到表里发布后,再继续新增行编辑第二个通知的时候,就报错“无法访问已释放对象”对象:DropDownCalendar”。

无法释放对象是否是此时,通知公告表是在其他电脑上被查看使用的,这种情况应该怎样解决

 

计划管理:

If Forms("通知公告").Opened Then
   MyTimers("通知公告").Enabled = False  \'暂停计划,编制通知公告
Else
   MyTimers("通知公告").Enabled = True  \'编制窗口关闭,继续执行计划
   Dim id As Integer = DataTables("通知公告").Compute("Max(_Identify)")   \'追载最新增加行
   Dim Filter As String = "[_Identify] > " & id ,发布 = True
   DataTables("通知公告").AppendLoad(Filter, False)
End If


--  作者:有点蓝
--  发布时间:2016/12/1 14:43:00
--  
看不出问题。上例子测试
--  作者:douglas738888
--  发布时间:2016/12/1 17:21:00
--  

老师,问题还是可能是系统BUG的问题,独立改为模式窗口,就不报错

另外,请教老师,上述代码是新增行的追载,就是没有此行的时候通过最大_Identify进行追载,如果是在编辑的时候删除过期的通知公告,如何能实现同步,是否要用filter的条件进行控制,不用上述代码,比如在计划管理里面写入以下代码,间隔时间为5分钟一次,是否会加大服务器的负担或者占用计算机内存

Dim dt As Date = Date.Today.AddDays(-30)
DataTables("通知公告").LoadFilter = "日期 > \'" & dt & "\' and 发布=1"
DataTables("通知公告").Load()

 

如果这样的加载在计划管理负荷重,是否有其他办法,谢谢!!

[此贴子已经被作者于2016/12/1 17:25:32编辑过]

--  作者:有点蓝
--  发布时间:2016/12/1 17:34:00
--  
如果是下拉列表,有可能是系统的bug。具体做个例子看看

没必要重新加载,直接移除过期的就行了
Dim dt As Date = Date.Today.AddDays(-30)
DataTables("通知公告").RemoveFor("日期 < \'" & dt & "\' and 发布<> 1")