Oracle 进行邮件合并的替代方法,为全国数百万员工创建信函

Oracle 进行邮件合并的替代方法,为全国数百万员工创建信函,oracle,email,merge,vbscript,Oracle,Email,Merge,Vbscript,嗨,我在这里转载我的问题 我在oracle表中有超过一百万条员工记录,记录有emp id、姓名、职务、办公室id和地址 我需要使用word模板(包括公司徽标图像)为每位员工生成信函,并将其另存为pdf 每个办公室的单一pdf,包含与该办公室员工相关的信件 我已经编写了一个批处理文件,使用pls all从oracle提取数据,并将其保存在CSV中 然后我调用open word document with open_document宏将CSV数据与word模板合并以生成字母,然后将结果保存为pdf

嗨,我在这里转载我的问题

我在oracle表中有超过一百万条员工记录,记录有emp id、姓名、职务、办公室id和地址

我需要使用word模板(包括公司徽标图像)为每位员工生成信函,并将其另存为pdf

每个办公室的单一pdf,包含与该办公室员工相关的信件

我已经编写了一个批处理文件,使用pls all从oracle提取数据,并将其保存在CSV中

然后我调用open word document with open_document宏将CSV数据与word模板合并以生成字母,然后将结果保存为pdf

批处理文件是 ------------------

For /f "delims=" %%x in (office I’d.txt) do (

 sqlplus userid/pass@emp @createcsv.sql %%x  

 move /Y %%x.lst %%x.CSV

echo %%x > datasourcename.txt

 "C:\Program Files\Microsoft Office\root\Office16\winword.exe" /x /q newtemp.dotm 
---------------------

For /f "delims=" %%x in (office I’d.txt) do (

 sqlplus userid/pass@emp @createcsv.sql %%x  

 move /Y %%x.lst %%x.CSV

echo %%x > datasourcename.txt

 "C:\Program Files\Microsoft Office\root\Office16\winword.exe" /x /q newtemp.dotm 
My dotm文件包含名为open_document的宏,用于在保存pdf文件后执行邮件合并和关闭文档

这在家用电脑上运行良好。。但在office中,由于禁用了宏,open_文档无法工作

来吧。我将宏代码写入vbscript文件。并从批处理文件中调用它。 vbscript:::---



当我运行上面的代码时,我会得到带有msg“Before Open Datasource”的msgbox,但不会得到msg“Before Open Datasource”


*请建议一些替代方法以获得所需的输出。

请详细说明“不工作”。您不认为您应该寻找一种专业的方法来生成数百万份文档吗?这就像在家里的厨房里烤一百万个面包;它永远不会扩大。