我有一个内部表,其中填充了108个条目。从9到9个条目重复出现,我想删除这些重复项。由于它们完全相同,我使用了
如果有帮助的话,我的表格有9个字段:bukrs、hkont、gjahr、belnr、budat、waers、shkzg、wrbtr、dmbtr和dmbe2。它们来自BSIS,顺序也是如此。以下是包含SELECT代码的DO循环。我将DELETE放在了DO循环之外。
前两个SELECT正常工作,并属于之前存在的代码。
这是调试器中内部表gt_bancbsis的图片。
delete adjacent duplicates from itab comparing all fields
。也尝试过不用comparing all fields
。但没有成功。如果有帮助的话,我的表格有9个字段:bukrs、hkont、gjahr、belnr、budat、waers、shkzg、wrbtr、dmbtr和dmbe2。它们来自BSIS,顺序也是如此。以下是包含SELECT代码的DO循环。我将DELETE放在了DO循环之外。
前两个SELECT正常工作,并属于之前存在的代码。
DO 12 TIMES.
lv_aux = lv_aux + 1.
lv_tamanho = STRLEN( lv_aux ).
IF lv_tamanho = 1.
CONCATENATE '0' lv_aux INTO lv_aux.
ENDIF.
CONCATENATE p_gjahr lv_aux '01' INTO z_v_first_day.
PERFORM get_last_day_of_month USING z_v_first_day
CHANGING lv_last_day.
" some other code irrelevant to the issue
SELECT bukrs hkont gjahr belnr budat waers shkzg dmbtr wrbtr dmbe2 FROM bsis
APPENDING CORRESPONDING FIELDS OF TABLE gt_bancbsis
WHERE hkont = '0051100001'
AND bukrs EQ p_bukrs
AND budat <= lv_last_day.
" some other code irrelevant to the issue
ENDDO.
DELETE ADJACENT DUPLICATES FROM gt_bancbsis COMPARING ALL FIELDS.
这是调试器中内部表gt_bancbsis的图片。
![调试器中的内表](https://istack.dev59.com/olwZd.webp)