打印某个user在指定时间段内做过的personalization detail

版权声明:本文为博主汪子熙原创文章,未经博主允许不得转载。 https://blog.csdn.net/i042416/article/details/90114298

Requirement

This question is asked by consultant during Jerry’s supporting as dev angel.
Partner wants to develop some report in the backend to track which users have performed what kinds of Fiori group personlization but he didn’t know the corresponding database table which contains the needed information, or available API which can return the necessary information.

How to analyze this requirement

点击Personalization icon:

clipboard1

创建一个新的group, 输入title信息后回车,trigger一个send到后台的OData request,成功执行( status code 201 - created )

clipboard2

user 手动输入的title信息作为request payload传入后台:

clipboard3
clipboard4

Solution

Based on backend debugging on the OData request handling displayed above, we can write the following two simple reports.
first report
This report will display the personalization guid with given time period for current user.

clipboard5

显示输出:

clipboard6

report source code:

REPORT ZGET_PERSONALIZATION.


PARAMETERS: start TYPE WDY_CONF_USER-changedon OBLIGATORY default sy-datlo,

            end like start OBLIGATORY DEFAULT sy-datlo.


 DATA: lt_config TYPE TABLE OF wdy_conf_user,

       lt_text TYPE STANDARD TABLE OF WDY_CONF_USERt2,

       ls_text LIKE LINE OF lt_text.


START-OF-SELECTION.

    SELECT * INTO TABLE lt_config FROM WDY_CONF_USER WHERE changedon BETWEEN START and end

       and changedby = sy-uname.


    IF sy-subrc <> 0.

       WRITE: / 'no configuration found for given time period'.

       RETURN.

    ENDIF.


    SELECT * INTO TABLE lt_text FROM WDY_CONF_USERt2 FOR ALL ENTRIES IN lt_config

       WHERE config_id = lt_config-config_id.


    LOOP AT lt_text INTO ls_text.

       WRITE: / 'id: ', ls_text-config_id, ' description: ' , ls_text-description.

    ENDLOOP.

the second report
将打印出的configuration guid 6BBE9D15576F539BA37A2C26D5E6D424抄下来,执行另一个report。
该report能够打印出此configuration guid对应的configuration detail:

Source code:

REPORT ZREAD_WDY_CONF_USER.
PARAMETERS: guid type WDY_CONF_USER-config_id OBLIGATORY.
DATA: lt_config TYPE STANDARD TABLE OF WDY_CONF_USER.
START-OF-SELECTION.
  SELECT  * INTO TABLE lt_config FROM WDY_CONF_USER WHERE config_id = guid
    and changedby = sy-uname.

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

猜你喜欢

转载自blog.csdn.net/i042416/article/details/90114298
今日推荐