gpt4 book ai didi

ms-access - 每 30 分钟运行一次代码的计时器

转载 作者:行者123 更新时间:2023-12-01 11:38:59 25 4
gpt4 key购买 nike

由于我处于开发模式并且我的前端需要大量更新。这是我在用户尝试打开前端时检查版本的功能:

Public Function FEPath(DBName As String)

Dim Conn As New ADODB.Connection
Dim DataConn As New ADODB.Recordset
Dim Comm As String
Dim strPath As String
Dim strDB As String
Dim strVer As String
Dim strExt As String

Comm = " SELECT tblFE.Database, tblFE.Version, tblFE.Extension " & _
" FROM tblFE WHERE tblFE.[Database] = '" & DBName & "';"

Set Conn = CurrentProject.Connection
DataConn.Open Comm, Conn, adOpenKeyset, adLockOptimistic

With DataConn
strDB = ![Database]
strVer = ![Version]
strExt = ![Extension]

strPath = "C:\Databases\" & strDB & " " & strVer & strExt

.Close
End With

Set Conn = Nothing

我需要以某种方式每 30 分钟运行一段代码,同时前端处于打开状态,以检查是否有新的前端版本可供上传。然后我会通知用户,关闭数据库,并更新到新版本。现在,版本更新总是在数据库打开时发生。如何做到这一点?

谢谢。

最佳答案

MS Access 程序员使用了一个老把戏。当您的数据库启动时,您可以使用 autoexec 宏来打开一个隐藏的表单。然后你可以使用 Form_Timer event触发您想要经常运行的任何代码。

TimerInterval form property使用毫秒,因此您可以手动将其设置为 1800000 (1000 * 60 * 30) 或使用隐藏表单的 on_load 事件来设置它。我通常选择选项 2,所以它在代码中的某处有详细说明。

Sub Form_Load()
Me.TimerInterval = 1000 * 60 * 30 ' 30 minutes
End Sub

Sub Form_Timer()
' check the front end version here
End Sub

*注意:在加载事件中设置 TimerInterval 还允许您在开发时将其设置为 0(有效地关闭它)。我不希望您需要使用 30 分钟的计时器,但是当您每 1/4 秒运行一次时,在开发数据库应用程序的其他地方时使用表单计时器可能会很痛苦。

关于ms-access - 每 30 分钟运行一次代码的计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23757801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com