远程桌面上的MS Access和Pass Through查询



如果这是在错误的地方,我很抱歉,但这是我的第一篇帖子,我有一个非常具体的问题,我希望其他人以前也经历过。

这里有一个小背景:

我创建了一个访问数据库,用作我们公司的CRM,它是一个访问前端和SQL后端。

在过去的几个月里,由于性能的提高,我已经将大多数查询转换为直通查询。

我们还刚刚从更传统的本地服务器和工作站迁移到远程桌面环境。

问题:

现在我们使用RDS,只有一个集中安装的MS访问和我的accdb文件,所有用户在登录RDS时都会打开(我被告知这很正常(

但是,当VBA代码激发以更改传递查询的querydef时,它会全局更改所有用户的查询,因此有时会向用户显示不正确的结果。

奇怪的是,我也使用TempVars来存储东西,但这些东西对每个用户来说都是独一无二的。

示例:

用户的主页上有一个每日任务屏幕,主屏幕上的事件加载将querydef设置为包括该用户ID号的参数,但当用户登录时,以前登录的用户最终会看到最后一个登录用户的任务。

我希望这一切都有意义,我希望有人能帮助

为每个用户创建前端的副本。将它放在users%localappdata%文件夹的子文件夹中。

创建打开应用程序的快捷方式。在这种情况下,请在命令行中使用%localappdata%。

然后,所有用户都将运行其他用户看不到的自己的副本。

RDS与否,让所有用户打开同一个FE在性能和其他方面都有缺点。我想每个用户都有自己的虚拟机吧?然后在每个虚拟机上放一份FE的副本。

或者更好:给他们一个打开应用程序的快捷方式。快捷方式应该:
-启动一个小脚本,将FE从部署文件夹复制到他们的c:\temp文件夹
-从启动FE

这样,更新将对用户透明。但是,如果在FE中保留一些静态数据,则此解决方案无效。

最新更新