我遇到以下情况:
我的方法从外部REST API调用接收响应。 JSON响应结构如下:
{“成员”:[ { “email_address”:“随机@ …
尝试命名临时表(硬编码或通过字符串追加)+'。' + hBuffer:BUFFER-FIELD(iStatus):NAME(...)
它应该有助于编译器理解你在谈论这个领域。由于它没有受到限制,这应该强制它的手,并允许您查询。
你可以用 SERIALIZE-NAME 在临时表定义中,在内部重命名相关字段。然后你必须用另一个名称来引用该字段,但是在它的序列化形式中它仍然被称为 status 。
SERIALIZE-NAME
status
这是一个例子 status -field重命名为 exampleStatus 。
exampleStatus
DEFINE TEMP-TABLE ttExample NO-UNDO FIELD exampleStatus AS CHARACTER SERIALIZE-NAME "status". /* Code to read json goes here... */ /* Access the field */ FOR EACH ttExample: DISPLAY ttExample.exampleStatus. END.
我知道做这样愚蠢的事情:
JSONData = replace( JSONData, '"status":', '"xstatus":' ).