漂亮的打印机不够用,ABAP代码应该如何格式化?

How should ABAP code be formatted when pretty printer is not enough?

"Pretty Printer" 的工作 Pretty 在某些情况下很糟糕。我想知道应该如何格式化 ABAP 代码。特别是长 select 语句,例如;

SELECT SINGLE * INTO CORRESPONDING FIELDS OF ls_doc
FROM ztable INNER JOIN bkpf
ON ztable~bukrs = bkpf~bukrs
AND ztable~belnr = bkpf~belnr
AND ztable~gjahr = bkpf~gjahr
WHERE ztable~bukrs EQ gt_help_tab-bukrs
AND ztable~hkont EQ gt_help_tab-hkont
AND ztable~dekont_no EQ u_out-dekont_no
AND ztable~fiziksel_islem_tarihi EQ '01012018'
AND ztable~gjahr EQ u_out-year(4)
AND ztable~stblg EQ ''.

或执行;

perform get_type using '1' '2' '3' tables it_table changing lv_char.

我想知道我应该如何格式化我的 abap 代码以提高可读性。

代码格式的用法有很多,我们公司一般使用以下格式。

SELECT SINGLE * 
  INTO CORRESPONDING FIELDS OF ls_doc
  FROM ztable 
 INNER JOIN bkpf ON ztable~bukrs EQ bkpf~bukrs
                AND ztable~belnr EQ bkpf~belnr
                AND ztable~gjahr EQ bkpf~gjahr
 WHERE ztable~bukrs                 EQ gt_help_tab-bukrs
   AND ztable~hkont                 EQ gt_help_tab-hkont
   AND ztable~dekont_no             EQ u_out-dekont_no
   AND ztable~fiziksel_islem_tarihi EQ '01012018'
   AND ztable~gjahr                 EQ u_out-year(4)
   AND ztable~stblg                 EQ ''.

  perform get_type 
    using '1' '2' '3' 
   tables it_table 
 changing lv_char.

Abap lint project 开槽。暂不检查多行代码