OO ALV实现字段报错红框定位
在ALV页面上有些自定义字段校验时需要报错,红框定位到报错字段。针对红框报错,类CL_GUI_ALV_GRID中有SET_ERROR_CELLS方法可以实现,然而,这个方法是受保护的,所以,需要在程序中重写实现。
具体实现:
1.重写SET_ERROR_CELLS方法
定义。
1 CLASS lcl_gui_alv_grid DEFINITION INHERITING FROM cl_gui_alv_grid. 2 3 PUBLIC SECTION. 4 METHODS: 5 m_set_error_cells IMPORTING it_err TYPE lvc_t_err. 6 ENDCLASS.
实施
1 CLASS lcl_gui_alv_grid IMPLEMENTION. 2 METHOD m_set_error_cells. 3 CALL_METHOD me->set_error_cells 4 EXPORTING 5 cell_table = it_err. 6 ENDMETHOD. 7 ENDCLASS.
2.将需要报错的字段的行列ID保存到内表。
1 DATA:gt_err TYPE lvc_t_err, 2 gs_err TYPE lvc_s_err. 3 4 gs_err-row_id = &1. 5 gs_err-row_id = &2. 6 APPEND gs_err TO gt_err. 7 CLEAR:gs_err.
3.PBO刷新时,调用方法
1 IF gt_err IS NOT INITIAL. 2 CALL METHOD go_alv_grid->m_set_error_cells 3 EXPORTING 4 it_err = gt_err. 5 ENDIF.
浙公网安备 33010602011771号