有两种策略。

1)使用动态对象在循环中遍历你的JSON数组,提取需要的字段直接保存到SDA属性中。这是我几年前所做的,当时我必须从一个只能输出JSON的产品中获取数据。一旦你有了最终的SDA,你就可以把它写到一个文件里。

2) 由于你是在IRIS上,你可以使用%JSON.Adaptor。我没有使用过它,但我认为它的工作原理与%XML.Adaptor一样。如果你的类继承了%JSON.Adaptor,它基本上就知道你的JSON结构。然后,你可以创建Cache对象作为你的数据模型,用于输入的JSON,并简单地将其属性复制到SDA属性中。

希望这有帮助。

更多讨论请参考英文社区:https://community.intersystems.com/post/how-transform-json-sda-and-write...

我在VSCode中做过几次,我通常只是把XML类导入我的系统,然后一旦它们被加载,我就使用VSCode ObjectScript Explorer,把我的类从那里导出到我的项目。我只做过一两次,所以我不知道是否有更好的方法。

如果你有兴趣,这些也是一些手动操作的方法,可以用脚本来做你所有的文件。

USER>do $system.OBJ.Load("C:\Users\psteiwer\Desktop\Class.xml" )
 
加载开始于2020年10月3日17:40:03
载入文件C:\Users\psteiwer\Desktop\Class.xml为xml
导入的类。PivotSubscriptions.Utils
加载完毕,成功。
 
USER>do $system.OBJ.ExportUDL("PivotSubscriptions.Utils.CLS", "C:\Users\psteiwer\Desktop\Class.cls" )

只有现有Cache客户可以下载,如果是我们客户欢迎访问wrc.intersystems.com 下载,谢谢!