[dump]调用转换时发生 CX_SY_CONVERSION_DATA_LOSS 异常

作者:郑德鼎 约 2 分钟阅读 更新日期:2024-02-22 2 年前更新 标签:ABAP, 开发

[dump]调用转换时发生CX_SY_CONVERSION_DATA_LOSS异常

石头 十二月 4, 2019 ABAP 1,864 views 1

调用xslt_tool转换将EXCEL的XML转换成内表时发生异常CX_SY_CONVERSION_DATA_LOSS,dump具体信息如下:

ST22中dump信息截图:

看dump信息是因为excel字段中的内容长度比内表中定义的要长,所以导致dump。

解决方法很简单,就是在调用CALL TRANSFORMATION时加上options  “accept_data_loss”,例子代码如下:

accept_data_loss含义就是可以截断excel单元格中的字符,然后保存到内表对应的字段中。

以上。

1

2

3

4

5

6

7 | An exception has occurred which is explained in more detail below. The

exception, which is assigned to class 'CX_SY_CONVERSION_DATA_LOSS' was not

caught and

therefore caused a runtime error. The reason for the exception is

Value "ATTENTION ONLY USE TYPE I OIL REFER TO AMM 12-13-04" was allocated in a

field which is not long enough. The target

field was therefore not able to store all information.

1

2

3

4

5

6

7 | * 使用xlst_tool转换工具将Excel xml转换到内表中

CALL TRANSFORMATION yxml_it_ipc_xls

PARAMETERS

p_shared_string =  lo_shared_str_nodeset

OPTIONS value_handling = 'accept_data_loss'

SOURCE XML  lv_sheet_xstr

RESULT lt_data =  lt_vbak[].
郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「[dump]调用转换时发生CX_SY_CONVERSION_DATA_LOSS异常.docx」整理生成,仅用于内部技术分享与学习交流。