SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




JavaScript soll Outlook öffnen und Dateien an eine E-Mail hinzufügen

Unbeantwortet Dieser Beitrag hat 0 Antworten

Ohne Rang
14 Beiträge
J L erstellt 18 Juli 2012 08:49
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

ich habe mir folgenden Code geschrieben der über den Internet Explorer Outlook öffnet und eine neue E-Mail generiert. Er füllt dabei das An...- Feld, Betreff, und Body. Das funktioniert alles soweit.

Jetzt zum eigentlichen Problem. Ich möchte noch Anhänge von den selektierten Listeneinträge anhängen. Den Befehl zum Anhängen habe ich auch, nur fügt er mir z.B. wenn ich drei verschiedene Dokumente selektiert habe, drei Mal das gleiche an. Manchmal fügt er sogar nur zwei oder ein Anhang hinzu. Könnt Ihr mir helfen wo das Problem liegt. Ich gehe davon aus das es an der ctx.load()- oder an der ctx.executeQueryAsync()- Metothe liegt.

Der Code:

            function mainDocumentToMail(){

            try

              {

                var theApp = new ActiveXObject('Outlook.Application')

                var theMailItem = theApp.CreateItem(0) // value 0 = MailItem

 

                //Bind the variables with the email

                theMailItem.to = 'sdf@web.de';

                theMailItem.Subject = 'sdfsdf';

                theMailItem.Body = 'dddd';

                                

                var ctx = SP.ClientContext.get_current();

                var selectedItems = SP.ListOperation.Selection.getSelectedItems(ctx); 

                var i = 0;

                var item = new Array();

               

                for (i in selectedItems) {

                  var web = ctx.get_web();    

                  var currentList = web.get_lists().getById('{ListId}');

                  item[i] = '';

                  item[i] = currentList.getItemById(selectedItems[i].id);

               

                  ctx.load(item[i]);

                  ctx.executeQueryAsync(Function.createDelegate(item[i], function () {

                    var leafUrl=item[i].get_fieldValues().FileRef;

                    var itemUrl='{SiteUrl}'.substring(0,18)+leafUrl;

                    theMailItem.Attachments.Add(itemUrl, 1, 1, 'Attachment');                 

                  }), null);

                }

               

                theMailItem.display();

        

                }

              catch(err)

              {

                alert(err);

            }

         }