继承Access / VBA程序的困境

时间:2011-04-07 20:30:40

标签: ms-access vba access-vba

10年前左右,我工作的公司的创始人决定,没有一种产品在报价和计费(标准报价和计费)中完全符合他的要求。因此,他访问了图书馆,拿起了“获取傻瓜”,将电脑塞进他的车内并坐在内陆的一个小房子里,开始创造报价和计费的终极工具(我甚至没有做到这一点) !)。我将免除你对这些程序的许多品质的评论。

快进到今天,正在运行数据库的服务器正在被替换。而且作者已经去世了。我尝试将文件移动到新服务器上的共享,但它似乎是从旧服务器自动打开的东西。禁用旧服务器上的共享会产生有关无法查找文件的错误消息。所以似乎路径在某处被硬编码。

虽然我有相当多的编程经验,但我从未接触过Office / VBA,我需要很快退出旧服务器。我在运行应用程序时尝试按“debug”,这为表单提供了代码,但我找不到任何提及路径的地方。似乎不足以成为所有代码。知道如何拆解这类程序吗?

如何使用它的简短说明:经济部门的人员使用Access 2003(较新的版本不起作用)打开位于/ProdDatabase/DB.mbd的共享文件夹中的快捷方式。他们得到一个GUI并填写它是什么。数据库现在似乎将自身复制到位置/Databases/<version string>/DB.mdb。这是Access的一些标准“复制”功能吗?我不知道这是不是原来的意图,但是有几个人经常同时使用这个程序,当我问他们时他们说“有时进入它后就找不到东西了”,所以似乎是一些竞争条件正在发生。

所以基本上,我需要一些关于如何处理这个问题的建议(除了强制性的“烧伤它!”。我正试图找到一个替代软件,但组织中存在一些惯性)。大多数情况下,我如何找到所有来源?是否有任何与我应该查找的mdb文件一起保存的辅助文件?整个树是一堆旧版本的mdb文件,什么不是。

如果您需要任何信息,请告诉我。由于我对这类程序一无所知,所以我不知道什么是相关的...

2 个答案:

答案 0 :(得分:3)

其他答案都直接解决了如何改进应用程序。我同意这些,我也喜欢@HansUp建议让一位经验丰富的Access程序员解决问题。

但是,您可能会发现通过创建将旧服务器名称映射到新服务器的DNS条目来欺骗应用程序认为它在旧服务器上是有用的。显然你不能这样做并让两台服务器都运行。我已成功完成此操作而不是Access问题,但Access程序不会知道其中的差异。

唯一棘手的部分是Windows服务器除了按照Disabling Strict Name Checking

中的说明操作外,不想回复除自己名字之外的任何内容

答案 1 :(得分:2)

  

我尝试将文件移动到   分享在新服务器上,但似乎   从中自动打开东西   旧服务器。禁用共享   旧服务器产生错误消息   无法找到文件。所以   似乎路径在某处被硬编码。

听起来像作者从GUI前端拆分了数据库。这是Access开发人员的常见做法。查看viewing/changing the link tables path上的这篇文章。