在AX2012中,我想构建一个到SQL Server 2008R2的ODBC数据库连接。因此,我构建了32位系统-DSN“SQL Server Native Client 10.0”(C:\ Windows \ SysWOW64 \ odbcad32.exe)。
如果我将以下代码作为作业启动或直接在表单的按钮中启动,则与数据库的连接是正确的。
{
LoginProperty loginProperty;
OdbcConnection myConnection1;
Statement myStatement;
SqlStatementExecutePermission perm;
str _query;
ResultSet result;
str retVal;
;
#macrolib.ocMegaBoard
loginProperty = new LoginProperty();
loginProperty.setDSN( #OCDSN );
myConnection1 = new OdbcConnection( loginProperty );
info('OK');
}
如果我作为不同过程调用的一部分启动相同的代码,则会出现以下错误消息: '[Microsoft] [ODBC驱动程序管理器]指定的DSN包含驱动程序和应用程序'
之间的体系结构不匹配拜托,你能帮助我吗?
答案 0 :(得分:3)
已报告类似问题elsewhere。
您的代码很可能在客户端(32位)执行时工作,但在服务器AOS(64位)上执行时会失败。请务必在AOS服务器上定义DSN,此处为64位。