【发布时间】:2015-12-02 00:14:15
【问题描述】:
我需要从我们的 OpenEdge 数据库创建数据文件以导入另一个系统。这些文件必须没有格式或分隔符,但必须使用固定长度的字段。例如,导入系统正在寻找类似下面的内容,其中每个字段始终从文件中的相同位置开始,无论数据的长度如何,即使该字段中有数据。
例如,如果我导出一个名为“联系人”的临时表,其中包含名字、姓氏、城市、州、配偶姓名和最喜欢的颜色,我需要始终以名字开头位置 1,姓氏总是从位置 16 开始,城市总是从位置 31 开始,依此类推。它应该看起来像:
Jane Doe Acme NY John Blue
Joe Sixpack Spingfield IL Grey
我可以使用 PUT UNFORMATTED 摆脱 CHAR 字段周围的双引号并在没有分隔符的情况下导出,但无法强制每个字段每次都从完全相同的位置开始。它看起来像:
JaneDoeAcmeNYJohnBlue
JoeSixpackSpringfieldILGrey
有没有办法做到这一点?
我一直在做的是:
DEF TEMP-TABLE contact
FIELD first-name as CHAR FORMAT "x(15)"
FIELD last-name as CHAR FORMAT "x(15)"
FIELD city as CHAR FORMAT "x(12)"
......
FOR EACH CONTACT:
PUT UNFORMATTED first-name last-name city....
END.
【问题讨论】:
标签: openedge