none
Outlook: Automatisch eingesetzter Vorgesetzter in eigenem Formular RRS feed

  • Frage

  • Hallo zusammen,

    ich habe ein Formular für einen Reiseantrag erstellt. Die Mitarbeiter sollen hiermit schon einige Angaben zu ihrer geplanten Reise eintragen können und diese an ihren Vorgesetzen senden. Dieser kann nun zustimmen ablehnen, oder den Status auf "Rücksprache erbeten" setzen. In diesem Formular habe ich diverse eigens definierte Formularfelder benutzt, welche alle einandfrei funktionieren. Veröffentlich ist dieses Formular auch unter der "Bibliothek für organisatorische Formulare".

    Nun ist als Anforderung hinzugekommen, dass in dem schon vordefinierten Feld "An:" automatisch der jeweilige Vorgesetze des Mitarbeiters eingesetzt wird, welcher dieses Formular gerade ausfüllt. Das Feld Vorgsetzter kann ich ja in den Benutzereigenschaften des Users eintragen. Dies ist somit auch im globalen Adressbuch einsehbar.

    Ich würde gerne nun dass das Feld automatisch den Vorgesetzen einträgt. Leider habe ich von VB nicht viel Ahnung, bzw. zu wenig Ahnung um dies zu realisieren, zumal in dem Vorgesetzen Feld der volle Vor und Nachname, die Telefonnummer und die Funktion des Vorgesetzen steht und nicht das Kürzel (welches man dann ja schon benutzen könnte).

    Hat jemand eine Idee, wie ich dies realisiern kann?

    Donnerstag, 20. Mai 2010 09:03

Antworten

  • Hallo,

    1. Das Vorgesetzter Feld des User Objekts kann durch ein Call auf das User Objekt aufgeruft werden.

    Unter VBA ist dieses Call:

    Dim objSysInfo, objUser As Object
    Dim strUser, strVorgesetzter As String

    Set objSysInfo = CreateObject("ADSystemInfo")
    strUser = objSysInfo.UserName
    Set objUser = GetObject("LDAP://" & strUser)
    ' Vorgesetzter Feld
    strVorgesetzter = objUser.Vorgesetzter

    'das Message Box wird das Vorgesetzter Feld geben
    MsgBox strVorgesetzter

    2. Um ein neues Mail Item zu generieren koennen Sie den VBA Code unten benutzen 

         Dim ol As Object

        Dim olmail As Object

        Dim CurrFile As String

        'because we want to use late binding we have to define

        'the constant olMailItem that will tell the OL Application

        'what kind of object to create

        Const olMailItem As Long = 0

       

        Set ol = CreateObject("Outlook.Application")

        Set olmail = ol.CreateItem(olMailItem)

      

       'message variable declaration

       

        Dim Msg As String

        Dim Subj As String

        Dim Dest As String

        Dim CC As String

       

        Msg = "Test"

        Subj = "Test"

        An = "vorgesetzter@domain.com"

        CC = ""

       

         If Dest = "" And CC = "" Then

             MsgBox ("No one to send the mail to")

           Else

            'Fill the mail item object

             With olmail

                .To = Dest

                .CC = CC

                .Subject = Subj

                .Body = Msg

                '.Attachments.Add "c:\attachment.doc"

                '.Display

                .Send

                'if you want to display the message before sending

                'choose the display option.

           

            End With

            End If

     

    Gruesse,

    Vlad

    Donnerstag, 3. Juni 2010 14:13