如何在OPENEDGE中将字段导出为CSV

时间:2017-08-23 00:43:38

标签: openedge progress-4gl

美好的一天

我有两个问题。目前我有一个表列表,其数据需要导出到csv。我的代码在这里:

def temp table tt-table
field f1 as int
field f2 as char
field . . . .

output to value(session:temp-directory + "temp.csv").

put f1 at 1
"," f2. . .       

 output close.

有没有办法自动执行此操作或缩短此代码?每个表平均有30-40个字段,需要导出5个表。

第二部分:

如果我将它们导回到我们的系统,是否可以根据字段数量及其相应的变量类型动态创建变量?

1 个答案:

答案 0 :(得分:4)

您可以使用IMPORTEXPORT语句。要将临时表导出为CSV文件,请使用以下代码:

OUTPUT TO VALUE(SESSION:TEMP-DIRECTORY + "temp.csv").

FOR EACH tt-table NO-LOCK:
    EXPORT tt-table.      
END.

OUTPUT CLOSE.

我不知道从文件动态构建临时表的方法。但要将文件导入同一个表,请执行以下操作:

INPUT FROM VALUE(SESSION:TEMP-DIRECTORY + "temp.csv").

REPEAT:
    CREATE tt-table.
    IMPORT tt-table.
END.

INPUT CLOSE.