F.: Gibt es eine Möglichkeit, die Worklist eines bestimmten Benutzers einzusehen?
A.: Es scheint kein Administrationswerkzeug zu existieren, mit dem die Worklist eines bestimmten Benutzers einzusehen wäre. Hier wird gezeigt, wie ein SAP-Funktionsbaustein dazu eingesetzt werden kann. Der hier gezeigte Report ist aufgrund einer Dringlichkeit sehr schnell (quick and dirty) entstanden und soll zur Erweiterung anregen. Sehr empfehlenswert ist auch diese Seite: http://www.alv-grid-display.de/alv_grid_de.html . Dort kann ruck-zuck eine ALV-Anzeige realisiert werden.
*&———————————————————————*
*& Report ZFI_WORKLIST_PER_USER
*&
*&———————————————————————*
*&
*&
*&———————————————————————*
REPORT ZFI_WORKLIST_PER_USER.
DATA: ZSWR_WIHDR LIKE TABLE OF SWR_WIHDR WITH HEADER LINE.
TYPE-POOLS: SLIS.
DATA: G_REPID LIKE SY-REPID.
DATA: GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
WA_AKTUELLE_ZEILE LIKE LINE OF ZSWR_WIHDR
.
PARAMETERS USER TYPE SY-UNAME.
CALL FUNCTION ‚SAP_WAPI_CREATE_WORKLIST‘
EXPORTING
USER = USER
* LANGUAGE = SY-LANGU
* TRANSLATE_WI_TEXT = ‚ ‚
* READ_TASK_TEXT = ‚ ‚
* IM_TASK_FILTER =
* IM_STATUS_FILTER =
* PASSIVE_SUBSTITUTION = ‚ ‚
* READ_LATEST_END = ‚ ‚
* TIME_ZONE =
* IMPORTING
* RETURN_CODE =
TABLES
WORKLIST = ZSWR_WIHDR
* WORKLIST_ATTRIBUTES =
* MESSAGE_LINES =
* MESSAGE_STRUCT =
* TASK_FILTER =
* STATUS_FILTER =
.
IF SY-SUBRC GT 4.
EXIT.
ENDIF.
*———————————————————————–
* Beginn ALV-Ausgabe
* Layout bestimmen.
PERFORM LAYOUT_ALLG_BUILD USING GS_LAYOUT.
* Daten als ALV-Liste anzeigen.
PERFORM ALV_ANZEIGEN.
*———————————————————————–
* Ende ALV-Ausgabe
* Jetzt kann END-OF-SELECTION folgen
*———————————————————————–
*———————————————————————–
* Unterprogramm fuer Ausgabe der ALV-Liste
*———————————————————————–
FORM ALV_ANZEIGEN.
G_REPID = SY-REPID.
CALL FUNCTION ‚REUSE_ALV_GRID_DISPLAY‘
EXPORTING
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_USER_COMMAND = ‚REAKTION_AUF_DOPPELKLICK‘
I_GRID_TITLE = ‚Worklist‘
I_SAVE = ‚A‘
I_STRUCTURE_NAME = ‚SWR_WIHDR‘
IS_LAYOUT = GS_LAYOUT
TABLES
T_OUTTAB = ZSWR_WIHDR.
IF SY-SUBRC 0.
“ Hier koennen Sie auf Fehler beim ALV-Aufruf reagieren“
ENDIF.
ENDFORM. „alv_anzeigen.
*———————————————————————
* Unterprogramm fuer Layoutangaben
*———————————————————————
FORM LAYOUT_ALLG_BUILD USING LS_LAYOUT TYPE SLIS_LAYOUT_ALV.
LS_LAYOUT-ZEBRA = ‚X‘.
LS_LAYOUT-COLWIDTH_OPTIMIZE = ‚X‘.
ENDFORM. „layout_allg_build.
*&———————————————————————*
*& Form REAKTION_AUF_DOPPELKLICK
*&———————————————————————*
* text
*———————————————————————-*
* –>I_UCOMM text
* –>I_SELFIELD text
*———————————————————————-*
FORM REAKTION_AUF_DOPPELKLICK USING I_UCOMM
I_SELFIELD TYPE SLIS_SELFIELD.
CASE I_UCOMM.
WHEN ‚&IC1‘. „bei Doppelklick
READ TABLE ZSWR_WIHDR INTO WA_AKTUELLE_ZEILE
INDEX I_SELFIELD-TABINDEX.
* SET PARAMETER ID ‚WID‘ FIELD WA_AKTUELLE_ZEILE-WI_ID. „Die Transaktion SWIA liest den Parameter leider nicht aus, dshalb wird sie hier nicht verwendet
* CALL TRANSACTION ‚SWIA‘ AND SKIP FIRST SCREEN.
CALL FUNCTION ‚SAP_WAPI_DIALOG_PROTOCOL‘ „Per doppelklick das Protokoll anzeigen
EXPORTING
WORKITEM_ID = WA_AKTUELLE_ZEILE-WI_ID
* IMPORTING
* RETURN_CODE =
* TABLES
* MESSAGE_LINES =
* MESSAGE_STRUCT =
.
ENDCASE.
ENDFORM. „REAKTION_AUF_DOPPELKLICK