Nette Möglichkeit um kurze Nachrichten an User zu verschicke

Hinweise, Tips und Tricks, FAQs - keine Anfragen!!
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Nette Möglichkeit um kurze Nachrichten an User zu verschicke

Beitrag von DeathGuardian (Expert / 759 / 0 / 3 ) »
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: Alles auswählen.

REPORT ZKAFFEE NO STANDARD PAGE HEADING.

TABLES: USR03, UINFO.

DATA: MARK(1),
      MSG LIKE SM04DIC-POPUPMSG,
      P_MSG(115) VALUE 'hier Nachricht eingeben'.

DATA: BEGIN OF ITAB_UINFO OCCURS   0,
        BNAME LIKE UINFO-BNAME,
        TCODE LIKE UINFO-TCODE,
        NAME1 LIKE USR03-NAME1,
        NAME2 LIKE USR03-NAME2,
        NAME3 LIKE USR03-NAME3,
        NAME4 LIKE USR03-NAME4,
        ABTLG LIKE USR03-ABTLG,
      END OF ITAB_UINFO.

DATA: LAENGE TYPE I, FLAG_SYBILLE.

SELECTION-SCREEN BEGIN OF SCREEN 1001.
SELECT-OPTIONS S_BNAME FOR UINFO-BNAME.
SELECTION-SCREEN END OF SCREEN 1001.

S_BNAME-SIGN = 'I'.
S_BNAME-OPTION = 'CP'.
S_BNAME-LOW = 'I*'.
APPEND S_BNAME.


PERFORM BENUTZER_ERMITTELN.

PERFORM GRUNDLISTE.


********
AT PF06.
********
  PERFORM BENUTZER_ERMITTELN.
  PERFORM GRUNDLISTE.


********
AT PF07.
********
  CALL SELECTION-SCREEN 1001 STARTING AT 3 3.
  PERFORM BENUTZER_ERMITTELN.
  PERFORM GRUNDLISTE.


********
AT PF08.
********
* Versenden
  CLEAR: USR03.
  CALL FUNCTION 'TMS_WBO_READ_USER_ADDRESS'
       EXPORTING
            IV_USER_NAME           = SY-UNAME
       IMPORTING
            ES_USR03               = USR03
       EXCEPTIONS
            USER_ADDRESS_NOT_FOUND = 1
            INTERNAL_ERROR         = 2
            OTHERS                 = 3.

  READ LINE 1 FIELD VALUE P_MSG.

  CONCATENATE USR03-NAME1 ':' INTO MSG.
  CONCATENATE MSG P_MSG INTO MSG SEPARATED BY ' '.
  LAENGE = STRLEN( MSG ).

  DO.
    CLEAR MARK.
    READ LINE SY-INDEX FIELD VALUE MARK.
    IF SY-SUBRC <> 0. EXIT. ENDIF.
    CHECK: MARK = 'X'.

    CALL FUNCTION 'TH_POPUP'
         EXPORTING
              CLIENT         = SY-MANDT
              USER           = ITAB_UINFO-BNAME
              MESSAGE        = MSG
         MESSAGE_LEN    = LAENGE
*         CUT_BLANKS     = ' '
         EXCEPTIONS
              USER_NOT_FOUND = 1
              OTHERS         = 2.

  ENDDO.

*---------------------------------------------------------------------*
*       FORM GRUNDLISTE                                               *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM GRUNDLISTE.
  SET BLANK LINES ON.
  SY-LSIND = 0.
  WRITE: / P_MSG INPUT ON.
  SKIP.
  WRITE: / '<F8> Versenden an markierte Empfänger / ' &
           '<F6> Auffrischen / ' &
           '<F7> andere Benutzerauswahl'
           COLOR COL_NEGATIVE INVERSE ON.
  ULINE.
  CLEAR MARK.

  LOOP AT ITAB_UINFO.
    WRITE: / MARK AS CHECKBOX, ITAB_UINFO-BNAME COLOR COL_KEY,
                               ITAB_UINFO-NAME1 COLOR COL_HEADING,
                               ITAB_UINFO-NAME2 COLOR COL_NORMAL,
                               ITAB_UINFO-ABTLG COLOR COL_HEADING.
    HIDE: ITAB_UINFO-BNAME.

  ENDLOOP.
ENDFORM.

*---------------------------------------------------------------------*
*       FORM BENUTZER_ERMITTELN                                       *
*---------------------------------------------------------------------*
*       ........                                                      *
*---------------------------------------------------------------------*
FORM BENUTZER_ERMITTELN.
  DATA: UINFO LIKE TABLE OF UINFOS WITH HEADER LINE.

  REFRESH ITAB_UINFO.

  CALL FUNCTION 'TH_SYSTEMWIDE_USER_LIST'
       TABLES
            LIST   = UINFO
       EXCEPTIONS
            OTHERS = 1.

  SORT UINFO BY BNAME.
  DELETE ADJACENT DUPLICATES FROM UINFO COMPARING BNAME.

  LOOP AT UINFO WHERE BNAME IN S_BNAME.

    CLEAR: USR03.
    CALL FUNCTION 'TMS_WBO_READ_USER_ADDRESS'
         EXPORTING
              IV_USER_NAME           = UINFO-BNAME
         IMPORTING
              ES_USR03               = USR03
         EXCEPTIONS
              USER_ADDRESS_NOT_FOUND = 1
              INTERNAL_ERROR         = 2
              OTHERS                 = 3.
    MOVE-CORRESPONDING UINFO TO ITAB_UINFO.
    MOVE-CORRESPONDING USR03 TO ITAB_UINFO.
    APPEND ITAB_UINFO.
  ENDLOOP.

ENDFORM.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Beitrag von realtimeedv (ForumUser / 11 / 0 / 0 ) »
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

Beitrag von DeathGuardian (Expert / 759 / 0 / 3 ) »
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.

Beitrag von jamesbu (ForumUser / 26 / 0 / 0 ) »
Diese Transaktion kann man auch nutzen, einfach und schnell:

/BEV2/ED_INT_S3 => Expressnachricht an R3 Benutzer (Rel. 4.7)

Beitrag von donny (Specialist / 253 / 0 / 2 ) »
In ECC 6.0 ist das dann /BEV2/ED_TOOL_BRKMSG
donny

Seite 1 von 1

Vergleichbare Themen

0
Antw.
841
Views
Eine kurze Frage zu SAP Control
von zickzack0312 » 14.03.2007 12:46 • Verfasst in ABAP Objects®
1
Antw.
850
Views
Backupfunktion: Möglichkeit der Sicherung der Tabellendaten
von Hutch3 » 05.08.2010 12:15 • Verfasst in ABAP® für Anfänger
5
Antw.
7476
Views
Schnellste Möglichkeit für Texteditor in Dynpro
von ralf.wenzel » 27.06.2012 11:47 • Verfasst in ABAP® Core
4
Antw.
3027
Views
Möglichkeit Komponentennamen aus Struktur zu lesen
von MarkusW » 12.02.2007 11:00 • Verfasst in ABAP® Core
5
Antw.
2279
Views
Möglichkeit Zeilen einer Tabelle zu mischen
von yanso » 09.03.2016 11:23 • Verfasst in ABAP® für Anfänger

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.