通过程序将Google Drive文件移动或复制到共享的Windows文件夹/UNC



我有一个谷歌应用程序脚本,每当有人(通过触发器(编辑我们共享的谷歌工作表时,它都会构建一个新的csv文件。该文件将保存到一个专用的共享驱动器文件夹中(在写入更新的文件之前,首先通过销毁所有现有文件来清除该文件夹(。这一部分效果很好。

我需要获取CSV并在SSIS中使用它,这样我就可以对其进行日期戳并将其加载到MSSQL表中以进行历史跟踪,但除了为一些第三方应用程序(如CDATA、COZYROC(付费外,我找不到实现这一点的方法。最终,这个程序包将部署在我们的SQL代理上,按每天的时间表运行,因此它将附加到一个无法访问Google共享驱动器的服务帐户。如果我能把CSV转移到我们SQL服务器上的一个共享文件夹,我将是黄金。。。但这正是我正在努力解决的问题。

如果无法通过应用程序脚本进行某些操作,是否有人可以指导我如何以编程方式打开Excel电子表格,刷新其数据集,然后保存并关闭?我可以直接使用Power Query将我需要的数据从Google Sheet中获取到Excel中,但需要它在每天的无人值守过程中刷新自己。

我发现CData实际上有一个名为Sync的工具,它为我们提供了所需的东西。该工具有一个选项有限的免费版本(他们声称它"永远免费"(,作为本地服务运行。在一个固定的时间表上,它可以查询各种来源,包括谷歌表单,并将写到各种目的地。

免费版本在您可以使用的源和目的地方面的可用性有限(尽管有很多(,但它只允许2个连接定义。也就是说,你可以定义多个源文件,但只能定义一种源类型(即,我可以定义20个不同的Google Sheets来在20个不同工作中使用,但只能使用Google Sheets作为我的源(。

我设置了它来读取我共享的谷歌表单,并将CSV输出到我们服务器的共享中。SSIS项目读取本地CSV,根据需要对其进行处理,然后写入我们的SQL服务器。如果你不介意运行额外的服务,并且不需要一系列不同的来源和目的地,那么它似乎运行得很好。

链接到他们的同步登录页:https://www.cdata.com/sync/

使用"立即购买"按钮,在购物车中加载免费版本,然后继续结账。他们会通过电子邮件向您发送一个密钥和一个下载链接。

最新更新