【发布时间】:2022-03-16 09:01:58
【问题描述】:
我正在使用下面的代码来生成 XML 语句。
01 GrpHdr.
02 A1.
03 MsgId PIC X(50) VALUE SPACES.
03 Test3.
05 Test31.
07 Test32 PIC X(10) VALUE SPACES.
05 Test4.
07 Test5.
09 Test6.
11 Test7 PIC X(10) VALUE SPACES.
MAIN-PARA.
MOVE 'MESSAGE ID' TO MsgId.
MOVE 'TEST32' TO Test32.
MOVE SPACES TO Test7.
INITIALIZE OUTPUT-XML.
XML GENERATE OUTPUT-XML from Grphdr
SUPPRESS Test31 EVERY NONUMERIC ELEMENT WHEN SPACES
ON EXCEPTION
DISPLAY 'GENERATE XML Error-Header'
NOT ON EXCEPTION
CONTINUE
END-XML
DISPLAY 'OUTPUT:' OUTPUT-XML .
MAIN-EXIT.
EXIT.
我已将正确的值(非空)填充到 MsgId 和 Test32 标记,并将 SPACES 填充到 Test7 标记。我期待如下输出,
<GrpHdr>
<A1>
<MsgId>MESSAGE ID</MsgId>
<Test3>
<TEST31>
<TEST32>TEST32</TEST32>
</TEST31>
</Test3>
</A1>
</GrpHdr>
但是我得到了如下所示的输出,它跳过了 MsgID 之后的所有标签,并且不显示 TEST32 标签。
<GrpHdr>
<A1>
<MsgId>MESSAGE ID</MsgId>
</A1>
</GrpHdr>
【问题讨论】: