【发布时间】:2013-04-09 22:55:36
【问题描述】:
我开发了一个解决方案,其中 PL/SQL Oracle API 生成需要打印的 PDF 的文件名(包括完整文件路径)(参数 1),然后使用 DBMS_SCHEDULER 传递该文件名和打印机名(参数2)到以下批处理文件:
"C:\Program Files (x86)\Adobe\Acrobat 4.0\Reader\AcroRd32.exe" /t %1 %2
但是,有时传递给批处理文件的文件名不存在。因为该文件不存在 Adobe 继续运行(在后台)。这会阻止 API 再次执行,直到有人手动结束 Windows 进程,因为 DBMS 作业已连接到 Adobe 实例。
不幸的是(除非 Oracle 有办法检查目录中是否存在文件)我无法在 Oracle 端解决这个问题,因此我需要在 Windows 端解决它。
因此,我可以将任何其他逻辑添加到批处理文件或任何其他脚本中,以验证文件是否存在,如果文件不存在,则结束该过程。该解决方案必须高效,因为 PDF 文件的打印对时间很敏感。
如果有人对此问题有 Oracle 方面的解决方案,那么我很乐意提供相关代码。
提前致谢。
【问题讨论】:
标签: oracle batch-file plsql acrobat dbms-scheduler