获取报告选择的默认值

2020-08-17 08:18发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我正在尝试以编程方式...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我正在尝试以编程方式获取默认选择参数和报告的选择选项。 但是我似乎找不到能够完成此功能的功能模块。 有多种方法可以获取变量的值,但是我尝试过的任何方法都不会返回没有变量的报表的默认选择值。 我已经尝试了以下功能模块:

  • RS_VARIANT_VALUES_TECH_DATA:返回随变量存储的选择值。 将变体留空不返回任何结果。
  • RS_VARIANT_CONTENTS:的功能与RS_VARIANT_VALUES_TECH_DATA几乎相同,但也允许将变量导出保留为空,在这种情况下,它将返回所有选择屏幕参数和选择选项,但不包含默认值。
  • RS_REFRESH_FROM_SELECTOPTIONS:的作用与调用RS_VARIANT_CONTENTS并使变量导出为空相同。

是否缺少我可以获取默认选择值的功能模块?

谢谢。

4条回答
jovirus
2020-08-17 08:26 .采纳回答

您试图实现的目标是不可能的(至少不能以非常简单的方式)。

报表的默认值是在报表的INITIALIZATION事件期间设置的,或者是默认定义的 选择参数的值。

变量存储/检索逻辑对报表的初始化或默认值一无所知。

报表的变量值存储在表VARI和VARID中 。 这些表中仅存储所创建变量的值。 因此,所有RS_VARIANT * FM都只能基于已保存在VARI和VARID中的值来选择值。

最重要的是,没有FM可以为您执行此操作。 您可能还有其他一些选项,这些选项可能不充分,不建议使用或工作量过多:

  • 存储名称为DEFAULT且不更改任何参数的变量
    取决于报告,可能会有 动态的默认值,用于不同的用户,日期等。
    当程序更新导致默认值更改时需要更新
  • 以编程方式将报表设置为以默认值在后台运行(仅 设置,无发布:JOB_OPEN,SUBMIT,但无JOB_CLOSE),并从表VARI中读取临时变量ID(例如&0000000000001)中的值(您从表TBTCP中获得了临时VARIANT,该值包含作业的步骤),然后删除 job
    肯定会为您获取"当前默认值",但您必须"运行/执行"报告的初始化过程,在该过程中执行编码并执行授权检查
  • 以编程方式读取编码 并对其进行分析
    确定最有效的方法

一周热门 更多>