原文链接:SAP ALV报表开发中的变式设置参数SAP ALV报表开发中的变式设置参数https://mp.weixin.qq.com/s/gyg_-NGB2H9h7TAPSa70RQ
大家可以关注我个人公众号,所有分享内容,会在公众号第一时间推送,且阅读排版更好。
愿大家的学习,轻松且愉快。
如果大家觉得有用,希望转发关注,谢谢
下图是免费的知识星球,欢迎大家一起讨论分享。
导读
本篇分享SAP ALV report开发中一个容易忽略,却比较实用的参数设置 I_SAVE。
正文
我们在实用报表时,在一定情况下需要存储自己的专属变式,方便自己之后对报表的使用。可是,有时候存储报表变式时,User-specific 却不能编,如下图所示。
这和我们介绍的I_SAVE参数有关系。
我们在开发ALV报表时,有参数I_SAVE,如下代码样例所示,程序会根据I_SAVE值的不同,去设定User-specific 和 Default Setting是否可编辑。
CALL METHOD g_grid->set_table_for_first_display
EXPORTING
"is_layout = gs_layout
is_variant = gs_variant
i_save = 'A' "possible values U,X,A,' ' or space
CHANGING
"it_sort = gt_sort " for SubTotals
it_fieldcatalog = gt_fieldcatalog
it_outtab = gt_outtab. "
当 I_SAVE = U时,意味着,只允许用户存储针对个人的默认变式;
即,如下图,User-Specific 是勾上的,且不可编辑,而default setting却可编辑;
当用户存储变式时,勾选上default setting,系统也仅会针对此用户,将所存储的变式,设为默认变式。
当I_SAVE = X时,意味着,只允许用户存储针对所有人的默认变式;
即,User-specific 是不被勾选,且不可编辑,而default setting可编辑;
当用户在存储变式时,勾选default setting,系统将针对所有人,将所存储的变式设为默认变式。
当I_SAVE = A 时,意味着,用户可以设置个人默认变式或者所有人默认变式;
即,User-specific 和 Default setting,均可编辑;
用户可以根据自己的要求,设置个人变式或者针对所有人的变式;
当 I_SAVE = 空 时,意味着,用户不能设置个人默认变式,也不能设置所有人的默认变式;
即,User-specific 和 Default setting,均不可编辑。
参考资料如下:
U: An i_save parameter value "U" means that the user can only save user-specific layouts.
X: An i_save parameter value "X" means that the users are enabled to save only global layouts. So other users can also use these global layouts too.
A: An i_save parameter value "A" means that the SAP user can save both user specific and global layouts.
Space: An empty or space i_save parameter value which is default for i_save means users cannot save own layouts either global or user specific layout.