*&---------------------------------------------------------------------*
*& Form FRM_GET_BUNIT
*&---------------------------------------------------------------------*
* 获取合并集团下阶所有合并单元
*----------------------------------------------------------------------*
* -->P_P_CONGR 合并集团
*----------------------------------------------------------------------*
FORM frm_get_bunit TABLES pt_bunit TYPE fc00_t_ra_bunit
USING pv_congr TYPE tf189-congr.
DATA: lt_tf189 TYPE TABLE OF tf189.
CLEAR: pt_bunit,pt_bunit[].
CHECK pv_congr IS NOT INITIAL.
SELECT bunit
cuind
FROM tf189
INTO CORRESPONDING FIELDS OF TABLE lt_tf189
WHERE congr = pv_congr
AND bunit NE space.
LOOP AT lt_tf189 INTO DATA(ls_tf189).
DELETE lt_tf189 INDEX sy-tabix.
IF ls_tf189-cuind = ''.
SELECT bunit
cuind
FROM tf189
APPENDING CORRESPONDING FIELDS OF TABLE lt_tf189
WHERE congr = ls_tf189-bunit
AND bunit NE space.
ELSE.
pt_bunit[] = VALUE #( BASE pt_bunit[]
( sign = 'I'
option = 'EQ'
low = ls_tf189-bunit ) ).
ENDIF.
ENDLOOP.
SORT pt_bunit BY low.
DELETE ADJACENT DUPLICATES FROM pt_bunit COMPARING low.
ENDFORM.