发布时间:2025-10-15 17:08:05    次浏览
1、建立自定义函数浮点数显示FUNCTIONconversion_exit_zsign_output.*'----------------------------------------------------------------------*'*'Localinterface:*'IMPORTING*'REFERENCE(INPUT)*'EXPORTING*' REFERENCE(OUTPUT)*'----------------------------------------------------------------------DATA: output1(20) TYPE c,output2(20),outdatum TYPE p DECIMALS 6.IF not input is initial.outdatum = input.IF input 0.WRITE outdatum TO output1 .'RIGHT-JUSTIFIED .ELSE.outdatum = outdatum * ( -1 ).WRITE outdatum TO output1 .'RIGHT-JUSTIFIED.CONCATENATE '-' output1 INTO output1.ENDIF.ELSE.CLEAR output1.ENDIF.CONDENSE output1 NO-GAPS .WRITE output1 TO output2 RIGHT-JUSTIFIED .output = output2.ENDFUNCTION.2、设置ALV输出格式字段格式clear ls_fcat.ls_fcat-fieldname = 'DEC'.ls_fcat-inttype = 'P'.ls_fcat-intlen = 10.ls_fcat-col_pos = l_lin.ls_fcat-seltext_s = ls_fcat-fieldname.ls_fcat-seltext_m = ls_fcat-fieldname.ls_fcat-seltext_l = ls_fcat-fieldname.ls_fcat-edit_mask = '==ZSIGN'.append ls_fcat to ct_fcat.3、调用函数就可达到负数符号前显的效果。call function 'REUSE_ALV_GRID_DISPLAY'exportingit_fieldcat = lt_fcattablest_outtab = gt_outtabexceptionsprogram_error = 1others = 2.这种方式同样可以实现相对复杂的显示效果,如财务凭证中S表示借,H表示贷,我们在显示的时候要显示“借”或“贷”,也可以写一个类似的函数来实现。