如何使用ABAP程式碼反序列化JSON字串成ABAP結構
假設我有這個JSON字串如下圖所示:
我的任務是解析出上圖黑色方框裡的幾個欄位,比如ObjectID, ETag, BuyerID, DateTime, ID, Name等等,把它們的值儲存到對應ABAP變數裡。
下面是ABAP解析方案。
-
首先定義一個ABAP結構,包含需要解析的幾個欄位。
TYPES: BEGIN OF ty_header, objectid TYPE string, buyerid TYPE string, datetime TYPE string, id TYPE string, name TYPE string, END OF ty_header.
然後定義一個ABAP結構,欄位名為results,對應本文截圖裡加了紅色下劃線的json字串中的results欄位,型別為剛剛定義的ty_header:
TYPES: BEGIN OF ty_result, results TYPE ty_header,END OF ty_result.
同樣,再定義一個ABAP結構ty_d:
TYPES: BEGIN OF ty_d,
d TYPE ty_result,
END OF ty_d.
總之,ABAP裡定義的結構,其欄位名和層次結構必須和JSON字串一致。
-
定義一個ABAP變數用於儲存反序列化結果,型別為步驟一的ty_d:
DATA: ls_data TYPE ty_d. WRITE:/ lv_response.CALL METHOD /ui2/cl_json=>deserialize EXPORTING json = lv_response CHANGING data = ls_data.
執行上述程式碼,發現反序列化成功:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2218631/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何使用ABAP程式碼建立SAP Product CategoryGo
- 如何使用 ABAP 程式碼解析 XML 檔案XML
- 如何使用 ABAP 程式消費 SAP ABAP OData 服務
- 使用ABAP程式碼生成二維碼(QR Code)
- SAP ABAP關鍵字語法圖和ABAP程式碼自動生成工具Code Composer
- 零基礎快速學習 ABAP之一:ABAP 伺服器的架構和一個典型的 ABAP 程式結構介紹伺服器架構
- 如何使用ABAP Restful API進行程式碼的全文搜尋RESTAPI行程
- 如何查詢Authorization object在哪些ABAP程式碼裡使用到Object
- ABAP 如何解析 JSON 資料試讀版JSON
- 如何用程式碼動態生成ABAP型別型別
- ABAP初學者如何系統地學習ABAP程式設計?程式設計
- 介紹一款 ABAP 程式碼搜尋工具 RS_ABAP_SOURCE_SCAN 的使用方法
- ABAP程式碼分析工具 - 事務碼SQF
- 使用ABAP程式碼提交SAP CRM Survey調查問卷
- 使用ABAP程式碼給SAP CRM Business object建立附件AttachmentObject
- 如何減小ABAP業務程式碼的複雜度複雜度
- 如何使用 ABAP 程式碼傳送郵件到指定郵箱試讀版
- 如何使用 ABAP 程式碼傳送帶有 PDF 附件的電子郵件
- 使用ABAP建立QR Code(二維碼)
- 如何對 ABAP 資料庫表透過 ABAP 程式碼進行更新和刪除操作試讀版資料庫
- 使用ABAP程式碼建立S/4HANA裡的Sales Order
- 使用Visual Studio Code編寫和啟用ABAP程式碼 (上)
- 如何用ABAP程式碼讀取CDS view association的資料View
- ABAP Development Tool如何配置程式碼自動完成的快捷鍵dev
- 如何使用事務碼SMICM分析ABAP程式碼發起的HTTP請求的錯誤HTTP
- 一些通過SAP ABAP程式碼審查得出的ABAP程式設計最佳實踐程式設計
- 使用 Prometheus 監控 SAP ABAP 應用程式Prometheus
- 如何使用 JavaScript 程式碼連線部署在 SAP ABAP 伺服器上的 OData 服務JavaScript伺服器
- 如何使用 ABAP 程式碼消費需要傳遞 CSRF token 的 OData 服務試讀版
- 如何在 SAP ABAP 系統中使用 Adobe FormORM
- 使用 ABAP Open SQL 的 Select AS 別名,提高程式碼可讀性SQL
- 使用 ABAP 程式語言直接執行 ABAP 伺服器所在作業系統的 shell 命令伺服器作業系統
- ABAP程式碼靜態分析工具SQF - Support Query FrameworkFramework
- Go語言結構體鏈式程式設計與JSON序列化Go結構體程式設計JSON
- 如何使用ABAP非同步RFC呼叫提升應用效能非同步
- SAP ABAP Netweaver 裡的 ABAP 會話概念會話
- SAP ABAP 程式之間的呼叫
- 如何使用 ST05 事物碼,快速找到訪問指定資料庫表的 ABAP 程式碼試讀版資料庫