Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

data Retrieving from XML format to internal table(deep structure)

Former Member
0 Likes
589

hi all,

can anybody help me how to Retrieving data from XML format to internal table(deep structure)

and if u have any sample code for that please send it.

my internal table is like this

DATA: BEGIN OF ty_text,

vbeln TYPE vbeln,

posnr TYPE posnr,

seqno TYPE seqno,

textid TYPE tdid,

tdline TYPE tdline,

END OF ty_text.

DATA: BEGIN OF ty_item,

vbeln TYPE vbeln,

posnr TYPE posnr,

product TYPE matnr,

prodes TYPE arktx,

ordqty TYPE kwmeng,

werks TYPE werks_d,

unitprc TYPE netpr,

dispct1(16),

dispct2(16),

dispct3(16),

text LIKE table of ty_text,

END OF ty_item.

DATA: BEGIN OF ty_header,

vbeln TYPE vbeln,

slstype TYPE auart,

vkorg TYPE vkorg,

vtweg TYPE vtweg,

spart TYPE spart,

soldto TYPE kunnr,

billto TYPE kunnr,

shipto TYPE kunnr,

bstkd TYPE bstkd,

bstdk(10) TYPE c,

prsdt(10) TYPE c,

audat(10) TYPE c,

ketdat(10) TYPE c,

zterm TYPE dzterm,

inco1 TYPE inco1,

item like table of ty_item,

END OF ty_header.

DATA: it_header LIKE TABLE OF ty_header WITH HEADER LINE .

and my xml file is like this:

<?xml version="1.0" encoding="utf-8" ?>

- <SO>

<VBELN>0000000057</VBELN>

<SLSTYPE>TA</SLSTYPE>

<VKORG>1000</VKORG>

<VTWEG>10</VTWEG>

<SPART>10</SPART>

<SOLDTO>0000100000</SOLDTO>

<BILLTO>0000100000</BILLTO>

<SHIPTO>0000100000</SHIPTO>

<BSTKD>sample chg 1000</BSTKD>

<BSTDK>2006-10-26</BSTDK>

<PRSDT>2006-11-10</PRSDT>

<AUDAT>2006-11-10</AUDAT>

<KETDAT>2006-10-30</KETDAT>

<ZTERM>0001</ZTERM>

<INCO1>FOB</INCO1>

- <ITEM>

- <item>

<VBELN>0000000057</VBELN>

<POSNR>000010</POSNR>

<PRODUCT>CEMENT2</PRODUCT>

<PRODES>cement type 2</PRODES>

<ORDQTY>3.000</ORDQTY>

<WERKS>370A</WERKS>

<UNITPRC>225.00</UNITPRC>

- <TEXT>

- <item>

<VBELN>0000000057</VBELN>

<POSNR>000010</POSNR>

<SEQNO>0021</SEQNO>

<TEXTID>0001</TEXTID>

<TDLINE>ssam1</TDLINE>

</item>

- <item>

<VBELN>0000000057</VBELN>

<POSNR>000010</POSNR>

<SEQNO>0021</SEQNO>

<TEXTID>0001</TEXTID>

<TDLINE>ssam2</TDLINE>

</item>

</TEXT>

</item>

- <item>

<VBELN>0000000057</VBELN>

<POSNR>000020</POSNR>

<PRODUCT>CEMENT2</PRODUCT>

<PRODES>cement type 2</PRODES>

<ORDQTY>5.000</ORDQTY>

<WERKS>370A</WERKS>

<UNITPRC>225.00</UNITPRC>

- <TEXT>

- <item>

<VBELN>0000000057</VBELN>

<POSNR>000020</POSNR>

<SEQNO>0021</SEQNO>

<TEXTID>0001</TEXTID>

<TDLINE>Test Cement Product</TDLINE>

</item>

</TEXT>

</item>

</ITEM>

</SO>

regards,

prasad

3 REPLIES 3
Read only

Former Member
0 Likes
495

Read the documentation for class : CL_IXML

BR< JAcek

Read only

Former Member
0 Likes
495

Try the function module SMUM_XML_PARSE

Read only

0 Likes
495

check this thread where i had given a sample code for transforming XML into nested ITAB

Regards

Raja