Как автоматически перезагрузить отчет в MS Access?
У меня есть отчет в MS Access, где базовые данные в таблицах изменяются нерегулярно. Я бы хотел, чтобы отчет автоматически отражал эти изменения, либо перезагружая форму, скажем, каждые 10 секунд, либо отчет получит уведомление об изменениях и отобразит новые данные. Это возможно?
1 ответ
Решение
Единственный способ, которым я могу думать об этом, не элегантен:
Создайте скрытую форму с интервалом таймера 10 секунд (или любым другим интервалом, который вам нужен). Когда сработает событие таймера форм, переберите коллекцию открытых отчетов, закройте и заново откройте каждый найденный отчет.
Что-то вроде:
Public Sub RefreshOpenReports()
Dim rpt As Report
With Reports
' Iterate over all open reports...
For Each rpt In Reports
rpt.Requery
Next
End With
End Sub