DATA : wl_is_row_id TYPE lvc_s_row,
wl_is_column_id TYPE lvc_s_col,
wl_is_row_no TYPE lvc_s_roid.
READ TABLE gt_out INTO l_out INDEX selfield-tabindex .
IF l_out-mark NE icon_checkbox .
MESSAGE '请勾选选中行' TYPE 'E' .
ENDIF.
INSERT l_out INTO gt_out INDEX selfield-tabindex .
wl_is_column_id-fieldname = 'MARK'.
wl_is_row_id = selfield-tabindex + 1 .
wl_is_row_no-row_id = selfield-tabindex + 1 .
*
CALL METHOD lr_grid->set_current_cell_via_id
EXPORTING
is_row_id = wl_is_row_id " Row No
is_column_id = wl_is_column_id. " Column No
MESSAGE E001(ZDEV) WITH '请选择拆分行!'.
endif.
FIELD-SYMBOLS: <dyn_table> TYPE table.
ASSIGN gt_tab->* TO <dyn_table>.
"取最大行
READ TABLE <dyn_table> ASSIGNING FIELD-SYMBOL(<dyn_wa>) INDEX lt_rows[ lines( lt_rows ) ]-INDEX .
gw_tab = CORRESPONDING #( <dyn_wa> ).
if gw_tab-SEL = '-'."保存后-来区别是否可以被复制
MESSAGE E001(ZDEV) WITH '商务确认数据不允许拆分,请退出重新操作'.
ENDIF.
gw_tab-ztaxno = gw_tab-ztaxno + 1.
gw_tab-SEL = 'X'.
"check 选中复制行是不是最大值
READ TABLE SPLIT_TAB WITH KEY
BUKRS = gw_tab-BUKRS
VBELN = gw_tab-VBELN
POSNR = gw_tab-POSNR
ZTAXNO = gw_tab-ZTAXNO TRANSPORTING NO FIELDS .
IF SY-SUBRC = 0 .
MESSAGE E001(ZDEV) WITH '选中行已被拆分,请选择最大序号进行拆分!'.
RETURN.
ENDIF.
INSERT gw_tab INTO <dyn_table> INDEX lt_rows[ lines( lt_rows ) ]-INDEX + 1 .
CALL METHOD refresh_alv.
if sy-subrc = 0 .
split_wa = CORRESPONDING #( gw_tab ).
APPEND split_wa TO SPLIT_TAB.
endif.
DATA : wl_is_row_id TYPE lvc_s_row,
wl_is_column_id TYPE lvc_s_col,
wl_is_row_no TYPE lvc_s_roid.
wl_is_column_id-fieldname = 'ZTAXNO'.
wl_is_row_id = lt_rows[ lines( lt_rows ) ]-INDEX + 1 .
wl_is_row_no-row_id = lt_rows[ lines( lt_rows ) ]-INDEX + 1 .
*
CALL METHOD gv_ref_grid->set_current_cell_via_id
EXPORTING
is_row_id = wl_is_row_id " Row No
is_column_id = wl_is_column_id " Column No
is_row_no = wl_is_row_no. " Row No.
BE_SPLIT = 'X'."是否被拆分
1665

被折叠的 条评论
为什么被折叠?



