*----------------------------------------------------------------------* ***INCLUDE LZFGADEF01 . *----------------------------------------------------------------------* *&---------------------------------------------------------------------* *& Form z01 *&---------------------------------------------------------------------* FORM z01. DATA lwa_row TYPE zade. BREAK-POINT. LOOP AT total. CLEAR lwa_row. IF <vim_total_struc> IS ASSIGNED. MOVE-CORRESPONDING <vim_total_struc> TO lwa_row. ENDIF. IF NOT <action> IS INITIAL AND <action> NE 'D' AND <action> NE 'X'. IF lwa_row-descri IS INITIAL. MESSAGE 'Campo descrição obrigatório!' TYPE 'S' DISPLAY LIKE 'E'. vim_abort_saving = 'X'. EXIT. ENDIF. ENDIF. ENDLOOP. IF vim_abort_saving IS INITIAL. LOOP AT extract. CLEAR lwa_row. IF <vim_extract_struc> IS ASSIGNED. MOVE-CORRESPONDING <vim_extract_struc> TO lwa_row. ENDIF. IF NOT <action> IS INITIAL AND <action> NE 'D' AND <action> NE 'X'. IF lwa_row-descri IS INITIAL. MESSAGE 'Campo descrição obrigatório!' TYPE 'S' DISPLAY LIKE 'E'. vim_abort_saving = 'X'. EXIT. ENDIF. ENDIF. ENDLOOP. ENDIF. ENDFORM. "z01 *&---------------------------------------------------------------------* *& Form z05 *&---------------------------------------------------------------------* FORM z05. PERFORM z01. ENDFORM. "z05 *&---------------------------------------------------------------------* *& Form z08 *&---------------------------------------------------------------------* FORM z08. PERFORM z01. ENDFORM. "z08