标签:gt layout FieldCat 总计 小计 fieldcat ABAP ls
OO ALV总计和小计相关分享实例OO ALV的总计和小计功能可以通过Fieldcat里面设置DO_SUM来设置某一列的总计,在Sort中标记subtot参数来根据某一列进行小计。
示例代码如下:
"Fieldcat
ls_fieldcat-fieldname = c_DMBTRS.
ls_fieldcat-seltext_l = p_text.
IF p_field = 'DMBTRS'.
ls_fieldcat-do_sum = 'X'.
ENDIF.
APPEND ls_fieldcat TO gt_fieldcat .
CLEAR ls_fieldcat .
"sort
gt_sort[] = VALUE #( ( spos = 1 fieldname = c_bukrs up = c_x
subtot = c_x )
( spos = 2 fieldname = c_zflag13_t up = c_x )
( spos = 3 fieldname = c_hkont up = c_x )
CALL METHOD grv_grid->set_table_for_first_display
EXPORTING
i_bypassing_buffer = abap_true
is_layout = gs_layout
CHANGING
it_outtab = gt_out_alv[]
it_fieldcatalog = gt_fieldcat
it_sort = gt_sort[]
EXCEPTIONS
invalid_parameter_combination = 1
program_error = 2
too_many_lines = 3
OTHERS = 4.
在此基础上,可能针对小计和总计有其他要求,此时需要设置layout中的部分参数,layout中与总计和小计相关的参数如下:
TOTALS_BEF:将总计放在第一行
NO_TOTARR:在总计一行和小计行中显示箭头,这些箭头还表示总计区域。 设置此参数以抑制这些箭头
NO_TOTEXP:一个图标显示在一个(子)总计的开始线表示是否已展开的行。 设置此参数以抑制此图标。
NO_TOTLINE:不显示总计
NUMC_TOTAL:允许NUMC类型字段总计
NO_UTSPLIT:是否根据单位拆分总计
标签:gt,layout,FieldCat,总计,小计,fieldcat,ABAP,ls 来源: https://www.cnblogs.com/bgsr/p/15690954.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。