2017-05-19 1 views
0

Je veux pour générer XML à partir d'une table interne en utilisant la méthode XML tansformation, mais je veux personnaliser une balise:Comment redéfinir XML méthode de transformation

ce que j'ai comme résultat de la transformation XML:

=> Structure:

types: BEGIN OF t_vbpa, 
 
    parvw TYPE vbpa-parvw, 
 
    kunnr TYPE vbpa-kunnr, 
 
    END OF t_vbpa. 
 
data: ty_vbpa TYPE TABLE OF t_vbpa, 
 
     ds_vbpa like LINE OF ty_vbpa. 
 

 
types: BEGIN OF t_vbap, 
 
    posnr TYPE vbap-posar, 
 
    matnr TYPE vbap-matnr, 
 
    pmatn TYPE vbap-pmatn, 
 
    vbpas TYPE t_vbpa OCCURS 0, 
 
    END OF t_vbap. 
 
    data: ty_vbap TYPE TABLE OF t_vbap, 
 
     ds_vbap like LINE OF ty_vbap. 
 

 
types: BEGIN OF t_vbak, 
 
    vbeln TYPE vbak-vbeln, 
 
    erdat TYPE vbak-erdat, 
 
    ernam TYPE vbak-ernam, 
 
    vbaps TYPE t_vbap OCCURS 0, 
 
    END OF t_vbak. 
 
data: ty_vbak TYPE TABLE OF t_vbak, 
 
     ds_vbak like LINE OF ty_vbak. 
 

 
***XML 
 
    CALL TRANSFORMATION ('ID') 
 
    SOURCE tab = ty_vbak[] 
 
    RESULT XML xml_out.

=> XmL Résultat:

<?xml version="1.0" encoding="utf-16"?> 
 
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0"> 
 
<asx:values><TAB> 
 
<Line> 
 
<VBELN>13</VBELN> 
 
<ERDAT>09.04.2009</ERDAT> 
 
<ERNAM>SNG10043</ERNAM> 
 
<VBAPS> 
 
\t <item> 
 
\t \t <POSNR>10</POSNR> 
 
\t \t <MATNR>C20050</MATNR> 
 
\t \t <PMATN/> 
 
\t \t <VBPAS> 
 
\t \t \t <item> 
 
\t \t \t \t <PARVW>AG</PARVW> 
 
\t \t \t \t <KUNNR>BF0000</KUNNR> 
 
\t \t \t </item> 
 
\t \t </VBPAS> 
 
\t </item> 
 
</VBAPS> 
 
</Line> 
 
</TAB> 
 
</asx:values> 
 
</asx:abap>

ce que je veux dans le résultat:

<?xml version="1.0" encoding="utf-16"?> 
 
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0"> 
 
<asx:values> 
 
<VBELN>13</VBELN> 
 
<ERDAT>09.04.2009</ERDAT> 
 
<ERNAM>SNG10043</ERNAM> 
 
<VBAPS> 
 
\t <item_VBAP> 
 
\t \t <POSNR>10</POSNR> 
 
\t \t <MATNR>C20050</MATNR> 
 
\t \t <PMATN/> 
 
\t \t <VBPAS> 
 
\t \t \t <item_VBPA> 
 
\t \t \t \t <PARVW>AG</PARVW> 
 
\t \t \t \t <KUNNR>BF0000</KUNNR> 
 
\t \t \t </item_VBPA> 
 
\t \t </VBPAS> 
 
\t </item_VBAP> 
 
</VBAPS> 
 
</asx:values> 
 
</asx:abap>    

Toute idée comment faire?

+0

Modifiez votre réponse, s'il vous plaît. Montrez-nous la structure de la source et le code ABAP pour la transformation. – szako

Répondre