Nette Möglichkeit um kurze Nachrichten an User zu verschicke

Hinweise, Tips und Tricks, FAQs - keine Anfragen!!

Nette Möglichkeit um kurze Nachrichten an User zu verschicke

Postby Mehmet1061 » Tue Oct 04, 2005 11:03 am

HI,

hab hier ein kleines Schnuckeliges Progrämmchen mit dem man schnell und ohne Probleme an Kollegen Nachrichten schicken kann, die er gleich auf den Bildschirm bekommt(per PopUp).

Sehr nützlich um an mehrere Kollegen gleichzeitzig zu sagen, das jetzt Kaffeepause ist. ;)

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. REPORT ZKAFFEE NO STANDARD PAGE HEADING.
  2.  
  3. TABLES: USR03, UINFO.
  4.  
  5. DATA: MARK(1),
  6.       MSG LIKE SM04DIC-POPUPMSG,
  7.       P_MSG(115) VALUE 'hier Nachricht eingeben'.
  8.  
  9. DATA: BEGIN OF ITAB_UINFO OCCURS   0,
  10.         BNAME LIKE UINFO-BNAME,
  11.         TCODE LIKE UINFO-TCODE,
  12.         NAME1 LIKE USR03-NAME1,
  13.         NAME2 LIKE USR03-NAME2,
  14.         NAME3 LIKE USR03-NAME3,
  15.         NAME4 LIKE USR03-NAME4,
  16.         ABTLG LIKE USR03-ABTLG,
  17.       END OF ITAB_UINFO.
  18.  
  19. DATA: LAENGE TYPE I, FLAG_SYBILLE.
  20.  
  21. SELECTION-SCREEN BEGIN OF SCREEN 1001.
  22. SELECT-OPTIONS S_BNAME FOR UINFO-BNAME.
  23. SELECTION-SCREEN END OF SCREEN 1001.
  24.  
  25. S_BNAME-SIGN = 'I'.
  26. S_BNAME-OPTION = 'CP'.
  27. S_BNAME-LOW = 'I*'.
  28. APPEND S_BNAME.
  29.  
  30.  
  31. PERFORM BENUTZER_ERMITTELN.
  32.  
  33. PERFORM GRUNDLISTE.
  34.  
  35.  
  36. ********
  37. AT PF06.
  38. ********
  39.   PERFORM BENUTZER_ERMITTELN.
  40.   PERFORM GRUNDLISTE.
  41.  
  42.  
  43. ********
  44. AT PF07.
  45. ********
  46.   CALL SELECTION-SCREEN 1001 STARTING AT 3 3.
  47.   PERFORM BENUTZER_ERMITTELN.
  48.   PERFORM GRUNDLISTE.
  49.  
  50.  
  51. ********
  52. AT PF08.
  53. ********
  54. * Versenden
  55.   CLEAR: USR03.
  56.   CALL FUNCTION 'TMS_WBO_READ_USER_ADDRESS'
  57.        EXPORTING
  58.             IV_USER_NAME           = SY-UNAME
  59.        IMPORTING
  60.             ES_USR03               = USR03
  61.        EXCEPTIONS
  62.             USER_ADDRESS_NOT_FOUND = 1
  63.             INTERNAL_ERROR         = 2
  64.             OTHERS                 = 3.
  65.  
  66.   READ LINE 1 FIELD VALUE P_MSG.
  67.  
  68.   CONCATENATE USR03-NAME1 ':' INTO MSG.
  69.   CONCATENATE MSG P_MSG INTO MSG SEPARATED BY ' '.
  70.   LAENGE = STRLEN( MSG ).
  71.  
  72.   DO.
  73.     CLEAR MARK.
  74.     READ LINE SY-INDEX FIELD VALUE MARK.
  75.     IF SY-SUBRC <> 0. EXIT. ENDIF.
  76.     CHECK: MARK = 'X'.
  77.  
  78.     CALL FUNCTION 'TH_POPUP'
  79.          EXPORTING
  80.               CLIENT         = SY-MANDT
  81.               USER           = ITAB_UINFO-BNAME
  82.               MESSAGE        = MSG
  83.          MESSAGE_LEN    = LAENGE
  84. *         CUT_BLANKS     = ' '
  85.          EXCEPTIONS
  86.               USER_NOT_FOUND = 1
  87.               OTHERS         = 2.
  88.  
  89.   ENDDO.
  90.  
  91. *---------------------------------------------------------------------*
  92. *       FORM GRUNDLISTE                                               *
  93. *---------------------------------------------------------------------*
  94. *       ........                                                      *
  95. *---------------------------------------------------------------------*
  96. FORM GRUNDLISTE.
  97.   SET BLANK LINES ON.
  98.   SY-LSIND = 0.
  99.   WRITE: / P_MSG INPUT ON.
  100.   SKIP.
  101.   WRITE: / '<F8> Versenden an markierte Empfänger / ' &
  102.            '<F6> Auffrischen / ' &
  103.            '<F7> andere Benutzerauswahl'
  104.            COLOR COL_NEGATIVE INVERSE ON.
  105.   ULINE.
  106.   CLEAR MARK.
  107.  
  108.   LOOP AT ITAB_UINFO.
  109.     WRITE: / MARK AS CHECKBOX, ITAB_UINFO-BNAME COLOR COL_KEY,
  110.                                ITAB_UINFO-NAME1 COLOR COL_HEADING,
  111.                                ITAB_UINFO-NAME2 COLOR COL_NORMAL,
  112.                                ITAB_UINFO-ABTLG COLOR COL_HEADING.
  113.     HIDE: ITAB_UINFO-BNAME.
  114.  
  115.  
  116. *---------------------------------------------------------------------*
  117. *       FORM BENUTZER_ERMITTELN                                       *
  118. *---------------------------------------------------------------------*
  119. *       ........                                                      *
  120. *---------------------------------------------------------------------*
  121. FORM BENUTZER_ERMITTELN.
  122.   DATA: UINFO LIKE TABLE OF UINFOS WITH HEADER LINE.
  123.  
  124.   REFRESH ITAB_UINFO.
  125.  
  126.   CALL FUNCTION 'TH_SYSTEMWIDE_USER_LIST'
  127.        TABLES
  128.             LIST   = UINFO
  129.        EXCEPTIONS
  130.             OTHERS = 1.
  131.  
  132.   SORT UINFO BY BNAME.
  133.   DELETE ADJACENT DUPLICATES FROM UINFO COMPARING BNAME.
  134.  
  135.   LOOP AT UINFO WHERE BNAME IN S_BNAME.
  136.  
  137.     CLEAR: USR03.
  138.     CALL FUNCTION 'TMS_WBO_READ_USER_ADDRESS'
  139.          EXPORTING
  140.               IV_USER_NAME           = UINFO-BNAME
  141.          IMPORTING
  142.               ES_USR03               = USR03
  143.          EXCEPTIONS
  144.               USER_ADDRESS_NOT_FOUND = 1
  145.               INTERNAL_ERROR         = 2
  146.               OTHERS                 = 3.
  147.     MOVE-CORRESPONDING UINFO TO ITAB_UINFO.
  148.     MOVE-CORRESPONDING USR03 TO ITAB_UINFO.
  149.     APPEND ITAB_UINFO.
  150.  
  151.  
GeSHi ©
Mehmet1061
....
....
 
Posts: 766
Joined: Thu Sep 29, 2005 2:44 pm

Postby Leonardo3909 » Mon Nov 07, 2005 12:38 pm

Kann es sein, dass das Programm nur funktioniert, wenn der User, an den die Message gesendet wird, auf dem selben Server angemeldet ist?

Gruß,
realtimeedv
Leonardo3909
.
.
 
Posts: 7
Joined: Fri May 06, 2005 2:08 pm

Postby Mehmet1061 » Mon Nov 07, 2005 1:44 pm

realtimeedv hat geschrieben:Kann es sein, dass das Programm nur funktioniert, wenn der User, an den die Message gesendet wird, auf dem selben Server angemeldet ist?

Gruß,
realtimeedv


Bin mir grad nicht ganz sicher.
Der User muss auf jedenfall im System angemeldet sein.
Wir haben das Programm bei uns nur im Entwicklungssystem und das ist bei uns nur auf einem Server.

EDIT:
Upps, funkt wirklich nur für den Server, auf dem man angemeldet ist.
Diese FuBa´s prüfen auf den angemeldeten Server ab.
Mehmet1061
....
....
 
Posts: 766
Joined: Thu Sep 29, 2005 2:44 pm

Postby Jano2162 » Thu Nov 30, 2006 4:37 pm

Diese Transaktion kann man auch nutzen, einfach und schnell:

/BEV2/ED_INT_S3 => Expressnachricht an R3 Benutzer (Rel. 4.7)
Jano2162
..
..
 
Posts: 33
Joined: Thu Nov 30, 2006 1:05 pm

Postby Pelin1208 » Thu Dec 14, 2006 3:17 pm

In ECC 6.0 ist das dann /BEV2/ED_TOOL_BRKMSG
donny
Pelin1208
...
...
 
Posts: 388
Joined: Tue Feb 21, 2006 11:50 am

Postby Atakan3195 » Wed Jun 23, 2010 10:34 am

donny hat geschrieben:In ECC 6.0 ist das dann /BEV2/ED_TOOL_BRKMSG
donny


Das ist der Programmname und nicht die Transaktion!
Atakan3195
..
..
 
Posts: 15
Joined: Wed Jun 23, 2010 10:15 am

Postby Pelin1208 » Wed Jun 23, 2010 2:56 pm

midget hat geschrieben:Das ist der Programmname und nicht die Transaktion!

:P falls das nach dreieinhalb Jahren wirklich noch einer wissen will, ist das sicher eine wertvolle Information :P
Pelin1208
...
...
 
Posts: 388
Joined: Tue Feb 21, 2006 11:50 am


Return to Tips + Tricks & FAQs

Who is online

Users browsing this forum: No registered users and 16 guests

cron