top of page
  • Autorenbildkim

Power Apps Hacks - E-Mail aus Power Apps heraus versenden

Aktualisiert: 6. Sept. 2022

Herzlich willkommen und Moin Moin zu diesem Beitrag in der Videoserie "Power Apps Hacks".


In dieser Serie behandeln wir einen bunten Blumenstrauß an Power Platform Tipps, Tricks und Funktionen.

In diesem Beitrag zeigen wir Euch zwei Möglichkeiten, wie Ihr aus Power Apps heraus E-Mails versenden könnt.


Wenn Ihr Ideen für diese Videoreihe habt, hinterlasst uns einfach einen Kommentar unter dem Video!


Im Video stellen wir einen Use Case vor. In diesem Blogbeitrag geben wir dazu nochmal eine Schritt-für-Schritt-Anleitung, wie Ihr den Use Case mit verschiedenen Möglichkeiten nachbauen könnt.




Use Case: Kontaktinformationen per E-Mail aus Power Apps heraus versenden

Stellen wir uns in unserem Beispiel ein einfaches Formular vor, dass wir in unserer Power App ausfüllen wollen, um Informationen zu einem neuen potenziellen Kunden zu sammeln.

Wenn wir die wichtigsten Informationen zum Kunden ausgefüllt haben, soll der Mitarbeiter den Datensatz in eine SharePoint-Liste übermitteln können. Danach soll die Person, die den neuen Kontakt erfasst hat, eine Zusammenfassung der Kontaktinformationen sowie den Link zum SharePoint-Datensatz erhalten.


Kontaktformular erstellen

Im ersten Schritt wollen wir unser Kontaktformular erstellen. In unserer SharePoint-Liste haben wir folgende Spalten, die wir in der PowerApps App ausfüllen müssen:

  • Name - Textzeile

  • E-Mail - Textzeile

  • Interessiert sich für - Auswahlfeld / Dropdown

  • Ist auf uns aufmerksam geworden über - Auswahlfeld / Dropdown



Formulareingaben in SharePoint-Liste übertragen

Im nächsten Schritt wollen wir die OnSelect-Eigenschaft des Button "Formular senden" mit dem Code füllen, den wir benötigen, um die Eingaben des Nutzers an SharePoint zu übermitteln. Dafür verwenden wir die Patch()-Funktion und folgenden Code:

// 01. Das Kontaktformular in die SharePoint Liste "Kontaktaufnahme" übertragen und den Datensatz über eine Kontextvariable wieder in die App holen
UpdateContext(
    {
        locKontakt: Patch(
            Kontaktaufnahme,
            Defaults(Kontaktaufnahme),
            {
                Name: txtNameSM.Text,
                'E-Mail': txtMailSM.Text,
                Interessiert_an: cbxInteresseSM.Selected.Value,
                Aufmerksam_durch: cbxAufmerksamDurchSM.Selected.Value
            }
        )
    }
);

Indem wir die Kontextvariable locKontakt "um den Patch herum" setzen, brauchen wir nicht in einem zusätzlichen Schritt uns die an SharePoint übermittelten Werte holen, sondern bekommen in der locKontakt-Variable alle Informationen aus dem Datensatz in der SharePoint-Liste, wie z.B. die URL zum Datensatz:


E-Mail senden nach der Formularübertragung

Nun wollen wir im letzten Schritt den soeben übermittelten Datensatz noch per E-Mail versenden können. In unserem Beispiel senden wir die E-Mail an den Ersteller des SharePoint-Datensatzes.


Wir zeigen Euch in diesem Beitrag zwei Möglichkeiten, diese E-Mail zu versenden.


E-Mail mittels Office365Outlook-Connector versenden

Um diesen Connector zu verwenden, muss er zunächst über die Konnektoren im linken Bereich des PowerApps Studio eingebunden werden.

Nachdem der Connector eingebunden wurde, gehen wir wieder auf die OnSelect-Eigenschaft unseres Buttons "Formular senden" und fügen die folgende Aktion unseres Office365Outlook-Connectors ein:


//02. Die E-Mail versenden mit den Kontaktinformationen
Office365Outlook.SendEmailV2(

//Empfänger eingeben
    locKontakt.'Erstellt von'.Email,
//E-Mail Betreff
    "Neuer Kontakt: " & locKontakt.Name,

//E-Mail Body / Inhalt
    "Hallo! Soeben hast du erfolgreich einen neuen Kontakt erfasst. Hier nochmal die Zusammenfassung deiner Übertragung <br>
    <b> Name: </b> " & locKontakt.Name & " <br>
    <b> E-Mail: </b>" & locKontakt.'E-Mail' & " <br>
    <b> Intersse an: </b>" & locKontakt.Interessiert_an & " <br>
    <b> Aufmerksam durch: </b>" & locKontakt.Aufmerksam_durch & " <p>
    
    <a href="&locKontakt.'Link to item'&">Datensatz öffnen</a> <p>

    Viele Grüße
"
)

Der gesamte Code auf dem OnSelect des Buttons sieht dann so aus:

// 01. Das Kontaktformular in die SharePoint Liste "Kontaktaufnahme" übertragen und den Datensatz über eine Kontextvariable wieder in die App holen
UpdateContext(
    {
        locKontakt: Patch(
            Kontaktaufnahme,
            Defaults(Kontaktaufnahme),
            {
                Name: txtNameSM.Text,
                'E-Mail': txtMailSM.Text,
                Interessiert_an: cbxInteresseSM.Selected.Value,
                Aufmerksam_durch: cbxAufmerksamDurchSM.Selected.Value
            }
        )
    }
);

//02. Die E-Mail versenden mit den Kontaktinformationen
Office365Outlook.SendEmailV2(

//Empfänger eingeben
    locKontakt.'Erstellt von'.Email,
//E-Mail Betreff
    "Neuer Kontakt: " & locKontakt.Name,

//E-Mail Body / Inhalt
    "Hallo! Soeben hast du erfolgreich einen neuen Kontakt erfasst. Hier nochmal die Zusammenfassung deiner Übertragung <br>
    <b> Name: </b> " & locKontakt.Name & " <br>
    <b> E-Mail: </b>" & locKontakt.'E-Mail' & " <br>
    <b> Intersse an: </b>" & locKontakt.Interessiert_an & " <br>
    <b> Aufmerksam durch: </b>" & locKontakt.Aufmerksam_durch & " <p>
    
    <a href="&locKontakt.'Link to item'&">Datensatz öffnen</a> <p>

    Viele Grüße
"
)

Zunächst wird das Formular übermittelt und im Anschluss daran eine Benachrichtigung an den Ersteller versendet.


Wenige Sekunden nach der Formularübermittlung erhalten wir dann folgende Nachricht in unserem Outlook-Postfach:




E-Mail mittels Launch-Funktion versenden

Eine weitere Möglichkeit, eine E-Mail mittels PowerApps zu versenden, oder viel eher die Standard-E-Mail-App auf dem Endgerät zu öffnen und gewisse Eingaben aus der PowerApps App zu übernehmen, bietet die Launch()-Funktion. Mit der Launch()-Funktion können wir Website-Adressen via PowerApps aufrufen, eine andere PowerApps App öffnen, aber auch mit bestimmten Parametern z.B. unsere E-Mail App auf dem mobilen Endgerät oder Laptop öffnen und gewisse Werte übergeben.


Wie das genau geht, zeigt folgender Code, den wir nun statt dem Office365Outlook-Connector in das OnSelect unseres Buttons "Formular senden" eingefügt haben:

    Launch(
        //Empfänger eingeben
        "mailto:" & locKontakt.'Erstellt von'.Email,
        {
            //E-Mail Betreff
            subject: "Neuer Kontakt: " & locKontakt.Name,
            //E-Mail Body / Inhalt
            body:     
            "Hallo! Soeben hast du erfolgreich einen neuen Kontakt erfasst. Hier nochmal die Zusammenfassung deiner Übertragung.
            Name: " & locKontakt.Name & "
            E-Mail: " & locKontakt.'E-Mail' & "
            Intersse an: " & locKontakt.Interessiert_an & "
            Aufmerksam durch: " & locKontakt.Aufmerksam_durch & "
            Link: " & locKontakt.'Link to item'& "
            
            Viele Grüße
"
        }
    )

Wenn wir nun also den Button "Formular senden" betätigen und einen neuen Kontakt übermitteln, öffnet sich direkt nach der Übermittlung die Outlook-App auf meinem Computer, öffnet eine neue Nachricht und schreibt Werte in den Empfänger, den Betreff und den E-Mail-Inhalt. Ich könnte diese Nachricht jetzt noch editieren, wenn ich sie z.B. an einen Kollegen weiterleiten möchte.


Ich kann also aus Power Apps heraus ohne weitere Einrichtung E-Mails mit flexiblen Inhalten & Empfängern versenden, was wir im Geschäftsalltag auch häufig für unsere Kunden einsetzen.

155 Ansichten0 Kommentare

Aktuelle Beiträge

Alle ansehen
bottom of page