连接模板,重置连接和循环

时间:2018-04-18 20:41:59

标签: vba templates connection sage-erp

返回故事 我正在使用SAGE Mas 200软件,尝试通过Access链接到它。该软件为我公司的300名投资者提供日期。对于每个投资者,我在登录时都有一个不同的投资者ID,以及我的UID和密码,因此每个连接字符串都不同。

经过多个小时的反复试验,我成功通过Access连接,发现每个数据库只能有一个活动的连接字符串。由于我有300名投资者需要从中提取数据,因此存在问题......我无法弄明白。

我是VBA的新手,所以我的知识非常有限。我已经阅读了关于链接到'模板'带有连接字符串的文件,但不确定如何格式化模板文件。有人能告诉我一个例子吗?另外,如何通过存储在数据库中的每个查询循环然后拉出相应的连接字符串?

实施例 以下是我的连接字符串示例,其中包含AAL'是投资者代码:

ODBC;DSN=SOTAMAS90;UID=tbard|AAL;PWD=password;Directory=\\mas-200\MAS90;Prefix=\\mas-200\MAS90\SY\, \\mas-200\MAS90\==\;ViewDLL=\\mas-200\MAS90\HOME;SERVER=NotTheServer

此查询名称为MAS_AAL。

另一位投资者:SMP,查询名称为MAS_SMP。等等等......

在隧道尽头有人能成为我的光明并帮助我,所以我不必手动运行300个查询。我在这里死了!!

1 个答案:

答案 0 :(得分:0)

您可以以编程方式设置连接字符串。

有一个名为SOTAMAS90的MAS 90 / MAS 200 ODBC驱动程序。在过去5年中的MAS安装中,有32位和64位驱动程序。

在VBA中,如果我没记错的话,你会做这样的事情。 (这假设您已经获取了所需的Investor对象,并且它具有称为用户名和密码的属性):



Vagrant




另一种方法是在Access中使用单个ODBC连接来设置链接的ODBC表,使用Access'获取外部数据功能。然后,您可以像对待任何其他Access表一样对待它,并直接查询它。这种方法的问题在于,当您第一次打开表格时,Access会继续提示您输入凭据,然后在一段时间内处于非活动状态。我告诉你可以在SOTAMAS90 ODBC连接中保存UID和密码,但我从来没有这样做过。

希望有所帮助。

亚伦