2014-09-01 17 views
7

Ho riscontrato un problema di confusione con la trasformazione SAP integrata ID.Devo utilizzare la trasformazione ID nel modo giusto?

Provo a serializzare la struttura ABAP, ma il risultato XML è sempre vuoto. Hai qualche suggerimento, cosa c'è di sbagliato nel mio codice?

DATA lv_xml TYPE xstring. 

CALL TRANSFORMATION ID 
    SOURCE test = syst 
    RESULT XML = lv_xml. 

IF lv_xml IS INITIAL. 
    MESSAGE `Oops, it's empty!` TYPE 'S' DISPLAY LIKE 'W'. 
ELSE. 
    CALL FUNCTION 'DISPLAY_XML_STRING' 
    EXPORTING 
     xml_string = lv_xml. 
ENDIF. 

risposta

7

Quasi corretta:

CALL TRANSFORMATION ID 
    SOURCE test = syst 
    RESULT XML lv_xml. " no = here! 

L'altra sintassi è corretta così, lo fa solo qualcosa di completamente diverso: si cerca un elemento chiamato XML e assegna il valore di tale elemento a lv_xml. Poiché non esiste l'elemento XML, la stringa rimane vuota.

+0

Oh, quella straordinaria sintassi! Solo un piccolo segno è diventato un grosso problema ... Grazie per la tua risposta, ora il problema è risolto. –

+2

@Yaruson: anche l'altra sintassi è valida, vedere la mia risposta aggiornata ... – vwegert