我最近被要求开发一个必须与Sage Line 50财务软件集成的应用程序.
我做了一些谷歌搜索,我很惊讶缺乏与Java或.Net的Sage接口的信息.Sage是否是一个黑盒子,你需要在获得任何信息之前注册Sage Developer程序?
是否有任何开源选项允许应用与Sage交谈?
任何信息赞赏.
干杯
保罗
我必须将C#Windows应用程序与Sage Line 50集成.(将所有发票详细信息从应用程序发送到Sage).
我搜索了Google以及它所说的集成Sage Line 50的大多数地方,我们需要使用Sage开发工具包(SDK).但它不是免费的.
我们已经购买了Sage Line 50.但现在我想知道如何将我们的会计软件与Sage Line 50相结合?
我找到了这个网址
http://crmsageconnector.codeplex.com/
Run Code Online (Sandbox Code Playgroud)
他们使用Microsoft Dynamics CRM Connector for Sage Line 50来同步数据以及数据迁移.
我开发了一个简单的基于C#控制台的应用程序,用于从Sage Line 50中的表中提取一些数据,并将数据上传到Web服务器.它在Windows 7 x64上使用ODBC连接,并且工作正常.Sage帐户数据位于映射的网络驱动器上.
我开发/测试了这个软件的PC,完全安装了Sage Line 50 2011,带有v17 ODBC驱动程序,并且已经应用了所有更新.
最终,应用程序将在我们的文件服务器上作为预定作业运行,但是当我尝试在我们的Windows 2008 R2文件服务器(承载Sage帐户数据的同一文件服务器)上运行代码时,ODBC驱动程序会抛出异常, 如下:
ERROR [28000] User ID or Password invalid
ERROR [01000] The driver returned invalid (or failed to return) SQL_DRIVER_ODBC_VER: 2.00
ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
ERROR [01000] [Microsoft][ODBC Driver Manager] The driver doesn't support the version of ODBC behavior that the application requested (see SQLSetEnvAttr).
Run Code Online (Sandbox Code Playgroud)
密码错误是用词不当,因为我知道密码是正确的.ODBC配置也已确认.
我只安装了安装光盘上的Sage ODBC驱动程序,因为我不希望在我们的服务器上安装完整的Sage应用程序,并注意到S17DBC32.dll文件与我工作站上安装的文件版本不同(可能)因为Sage帐户安装的自动更新).我已经尝试将这个较新的文件复制到我们文件服务器上原始文件的顶部,并重新创建了ODBC配置,但这没有用.
我没有重新启动服务器,因为将DLL文件复制到旧文件(它是生产服务器).服务器是否需要重新启动才能使新DLL生效,或者是否有其他方法可以触发此操作?
也许我正在咆哮错误的树,Sage ODBC驱动程序DLL版本无关紧要?任何帮助非常感谢.
编辑
有机会重启服务器,新的DLL没有任何区别.我仍然看到同样的错误.