获取有关在Progress 4GL(ABL)中不再使用MS Excel文件的通知
时间:2020-03-06 14:55:15 来源:igfitidea点击:
有一个使用AppServer的GUI ADM2 Progress v9应用程序。
它需要使用户能够查看存储在AppServer上的MS Excel文件。到目前为止:
- 将.xls文件从AppServer拉到本地驱动器。
- 触发MS Excel的副本并打开文件。
问题是一旦不再需要本地驱动器上的临时文件,则需要将其删除。有什么提示吗?
解决方案
如果我们要"提供Excel副本",是否有任何特殊原因不能仅将"已启动" Excel应用程序指向App Server上的文件?
如果我们是从命令行shell启动Excel,则可以转到Excel.exe" http://myserver/myexcelbook.xls",对吗?
如果我们是通过Office Interop Assembly之类的方法打开它,则可以从诸如以下的Application.WorkBookBeforeClose`事件中注销。
ThisMethodHandlesTheWorkbookBeforeCloseEvent() { DeleteTheFile(); }
我们可以在"进度"中使用os-command函数运行Excel,并告诉它等到查看完毕后再返回进度代码。一旦我们退出Excel,请对该文件运行os-delete命令。