[Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序 [Dynamics GP]

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified [Dynamics GP]

我正在尝试通过灵巧工具创建从 excel 到 table 的表单上传事务,然后从示例脚本中复制一些代码。我从 references 得到的步骤 同样在这些脚本上:

conn.ConnectionString = 
   "Driver={Microsoft Excel Driver (*.xls)};" + 
   "Driverid=790;" + 
   "Dbq=C:\MyPath\SpreadSheet.xls;" + 
   "DefaultDir=C:\MyPath;"; 
conn.Open();

我的上级的另一个示例,脚本如下所示:

sheetbuf = itemname('(L) Sheet' of window PMS_Upload_Budget, '(L) Sheet' of window PMS_Upload_Budget);
buf1 = sheetbuf;
sheetbuf = "[" + sheetbuf +"$]";
recordset = COM_CreateObject("ADODB.Recordset");

sDriverExcel="{Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}";
sConString="DRIVER="+sDriverExcel+";DriverId=790;DBQ="+'(L) Native Path'+";DefaultDir=";

recordset.Open("SELECT COUNT(*) as RowCount FROM " + sheetbuf, sConString);
row = recordset.Fields.Item[0].Value;

recordset.Close();
recordset.Open("SELECT * FROM " + sheetbuf, sConString);
col = recordset.Fields.Count[];

当我尝试对这两个脚本进行采样时,出现如下错误

然后,我请求另一位上司的帮助。他给了我这些剧本:

所以,我尝试在他的帮助下安装 AccessDatabaseEngine_X64.exe 并使用这些脚本更改连接字符串:

sConString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" 
+ '(L) FullPath' + ";Extended Properties=""Excel 12.0 Xml; HDR=YES;IMEX=1"";";

然后又出现了这些错误:

最近,我查看了 excel 电源查询上的连接字符串,并试图将 table 中的数据传输到其他工作簿。然后,这个window上来问我的。因此,我假设第一个 references 没有 DSN 的 ODBC 无法正常工作。然后,我尝试将这些脚本添加到电源查询:

conn.ConnectionString = 
          "Dsn=DsnName;" + 
          "Uid=UserName;" + 
          "Pwd=Secret;"; 

但是,window 显示警告说“连接 属性 'uid' 只能使用凭据提供。因此,我一直在寻找将 pwd 参数输入电源的替代方法查询或灵巧脚本。

我最近尝试过的是查看 OLE/COM 对象查看器(数百个对象)和进程监视器(数百万个事件)。关于类似问题的任何提示在这里可能会有用,谢谢。

我从我的朋友参考资料中将我以前的脚本修复到这个

sheetbuf = itemname('(L) ExcelRow' of window Integrate_Transaction, '(L) ExcelRow' of window Integrate_Transaction);
buf1 = sheetbuf;
sheetbuf = "[" + sheetbuf +"$]";
connection = COM_CreateObject("ADODB.Connection");
recordset = COM_CreateObject("ADODB.Recordset");

conString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + '(L) FullPath' + ";Extended Properties=Excel 8.0;";
connection.Open(conString);
recordset.Open("SELECT COUNT(*) as RowCount FROM " + sheetbuf , connection, ADODB.adOpenDynamic, ADODB.adLockOptimistic);
row = recordset.Fields.Item[0].Value;

recordset.Close();

所以,我怀疑灵巧库应该为另外两个字符串安装其他东西。感谢您尝试回答我的困惑,我希望能为这两个字符串提供更多答案 ^^