当前位置:网站首页>一个 ABAP 工具,能打印系统里某个用户对 BSP 应用的浏览历史记录

一个 ABAP 工具,能打印系统里某个用户对 BSP 应用的浏览历史记录

2022-08-10 14:59:00 汪子熙

只要一个用户在 SAP ABAP 系统里浏览过 BSP 页面,会留下浏览历史记录。

本工具会解析出这些记录,打印出该用户浏览的历史事件,和浏览过的页面名称。

使用方法很简单,直接输入待查询的用户名即可:

在这里插入图片描述

下图显示,我在 2018年8月10日之后,就再也没有在 AG3 系统浏览过 BSP 应用了:
在这里插入图片描述

工具源代码:

REPORT ztool_display_page_name.

PARAMETERS: name TYPE trdir-unam OBLIGATORY DEFAULT 'WANGJER'.

DATA: lt_trdir TYPE STANDARD TABLE OF trdir,
      lt_page  TYPE STANDARD TABLE OF o2pagdir.

TYPES: BEGIN OF ty_impl,
         name TYPE o2pagdir-implclass,
       END OF ty_impl.

TYPES: tt_impl TYPE STANDARD TABLE OF ty_impl.

START-OF-SELECTION.

  SELECT * INTO TABLE lt_trdir FROM trdir WHERE unam = name.
  IF sy-subrc <> 0 .
    WRITE: / 'No browse history found for current user'.
    RETURN.
  ENDIF.

  DATA: lt_impl  TYPE tt_impl,
        ls_trdir TYPE trdir,
        ls_impl  TYPE ty_impl.

  LOOP AT lt_trdir INTO ls_trdir.
    ls_impl-name = ls_trdir-name.
    APPEND ls_impl TO lt_impl.
  ENDLOOP.

  SELECT * INTO TABLE lt_page FROM o2pagdir FOR ALL ENTRIES IN lt_impl
    WHERE changedby = name AND implclass = lt_impl-name.

  SORT lt_page BY changedon DESCENDING.
  LOOP AT lt_page ASSIGNING FIELD-SYMBOL(<page>).
    WRITE: / <page>-implclass COLOR COL_GROUP, ' Last accessed on:', <page>-changedon COLOR COL_KEY,
    ' Component name: ' , <page>-applname+0(20) COLOR COL_NEGATIVE, ' view name: ', <page>-pagename+0(30) COLOR COL_POSITIVE.
  ENDLOOP.
原网站

版权声明
本文为[汪子熙]所创,转载请带上原文链接,感谢
https://jerry.blog.csdn.net/article/details/126264933