如何查找excel表是否在系统中使用progress 4GL打开?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查找excel表是否在系统中使用progress 4GL打开?相关的知识,希望对你有一定的参考价值。
我是progress 4GL的新手。我使用progress 4GL将一些数据导出为CSV文件格式。我面临的问题是,如果我第一次运行该程序,那么就会创建 CSV 文件,但如果我运行另一个程序,在我的机器上保持 CSV 文件打开,那么数据就不会写入同一个 CSV 文件。相反,它给出了错误。我想用一个CSV(sample.csv)文件来存储多个程序的数据。
如果可以通过在我的机器上保持CSV文件打开来写入数据,那么告诉我方法,或者我想知道如果文件打开了(sample.csv),那么我需要给用户一个信息 "请关闭CSV文件"。
我这边的程序我试了一下。我得到的错误附后。
OUTPUT TO "C:UsersastPicturesSaved Picturessample.csv".
EXPORT DELIMITER ";" "CustNum" "Name".
FOR EACH customer NO-LOCK:
EXPORT DELIMITER ";" Cust-Num Name.
END.
OUTPUT CLOSE.
答案
你不能向文件写入,因为Excel(在这种情况下)对文件有锁定。
你可以发现错误--错误信息中显示了它的编号。
output to c: empfoo.csv.
put unformatted 'lockme'.
output close.
catch e as progress.lang.error:
if e:getMessageNum(1) = 98 then
message 'please close the file' view-as alert-box.
else
undo, throw e.
end catch.
以上是关于如何查找excel表是否在系统中使用progress 4GL打开?的主要内容,如果未能解决你的问题,请参考以下文章