ABAP语言中提供了好几种ALV的展示方式,比如grid alv,SALV,list alv,OO alv等等。
不同种类alv对应的一些数据结构也是不一样的,比如,OO alv(也就是调用 grid->set_table_for_first_display显示的ALV )中的catalog类型是 lvc_t_fcat
<img class="alignnone size-full wp-image-4643" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-11-28.png" alt="" width="605" height="199" /> <img class="alignnone size-full wp-image-4644" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46.png" alt="" width="848" height="434" srcset="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46.png 848w, http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-740x379.png 740w, http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-768x393.png 768w" sizes="(max-width: 848px) 100vw, 848px" />但是函数REUSE_ALV_GRID_DISPLAY中的catalog参数就是SLIS_T_FIELDCAT_ALV
<img class="alignnone size-full wp-image-4645" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-16-23.png" alt="" width="725" height="344" /> <img class="alignnone size-full wp-image-4649" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-1.png" alt="" width="848" height="434" srcset="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-1.png 848w, http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-1-740x379.png 740w, http://www.baidusap.com/wp-content/uploads/2017-06-14_13-04-46-1-768x393.png 768w" sizes="(max-width: 848px) 100vw, 848px" />在一些特定场合下,这两种calalog需要相互转换一下,这是就会用到函数:LVC_TRANSFER_FROM_SLIS和LVC_TRANSFER_TO_SLIS。
LVC_TRANSFER_FROM_SLIS:实现SLIS_T_FIELDCAT_ALV-->LVC_T_FCAT的转换
<img class="alignnone size-full wp-image-4647" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-03-42.png" alt="" width="705" height="308" />LVC_TRANSFER_TO_SLIS:实现LVC_T_FCAT-->SLIS_T_FIELDCAT_ALV的转换。
<img class="alignnone size-full wp-image-4646" src="http://www.baidusap.com/wp-content/uploads/2017-06-14_13-02-03.png" alt="" width="719" height="307" />以上。