gpt4 book ai didi

ms-access - 微软 Access 2007 : Find Where a Form/Query/Report is Used

转载 作者:行者123 更新时间:2023-12-02 02:21:46 26 4
gpt4 key购买 nike

历史:我继承了一个相当大的应用程序,该应用程序是使用 MS Access 编写的,其中包含大量表单、查询和报告。因为看起来其中一些项目是作为备份方式复制的,所以我不知道它们是否真的在任何地方使用过。

问题:我正在开始清理应用程序的过程,需要一种方法来查找是否以及在何处使用了表单、报告或查询,以便我知道是否可以删除或重构它们.有没有什么好的方法让Access在按钮事件中搜索表单/报表的名称?

(Access 的查找功能似乎只能查找记录,除非我缺少设置)


编辑 - 解决方案:

1.) 正如下面的答案和评论中所提到的,通过创建一个新的 Access 文件然后逐个表单地重建应用程序,从登录屏幕开始,看看缺少什么,这将是一个有值(value)的教训.这将提供对整个应用程序的深入了解。

2.) 我找到了this post讨论使用“数据库文档管理器”转储与给定表单中使用的对象、VBA 等相关的所有信息。生成的文本文件很容易搜索到单个特定查询、报告或表单的使用。它不会为我提供与重新构建整个应用程序相同水平的知识,但它是针对目标知识/可能的清理的一个很好的权宜之计。

最佳答案

假设您有一个名为 frmOne 的表单,它有一个带有代码隐藏的命令按钮:

DoCmd.OpenReport "rptFoo"

并且 rptFoo 使用 qryFoo 作为它的记录源。

启用轨道名称自动更正,然后查看 frmOne 的对象依赖项将不会通知您 frmOne 需要 rptFoo。但是,它可以告诉您 rptFoo 需要 qryFoo。另一个问题是对象依赖项不会通知您 frmOne 已被弃用——当前版本是 frmTwo。

同样,使用 Application.SaveAsText 为数据库对象创建文本文件,然后 grep 文本文件不会告诉您 frmOne 已被弃用。

您可以尝试不同的方法来确定需要哪些数据库对象。创建一个新的数据库文件。从旧数据库导入启动表单。打开新数据库,并在表格中找出它需要的缺失项目。导入那些。起泡沫,冲洗,重复。

如果应用程序不是从启动表单驱动的,请询问用户他们使用哪些表单和报告,然后导入它们。

这种方法很乏味,可能需要几个小时。但是,我怀疑其他方法会快得多。从好的方面来说,您几乎可以保证不会将不需要的对象导入到新数据库中。如果您遗漏了任何需要的内容,您可以从旧数据库的已保存副本中导入它。

关于ms-access - 微软 Access 2007 : Find Where a Form/Query/Report is Used,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7772241/

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