0

Email versenden nach Eintrag in To-Do-Tabelle

Hallo zusammen,

ich würde gern einen "automatisierten" Emailversand aus einer Tabelle heraus einrichten. D.h. alle Benutzer sind gleichzeitig Einzellizenzen bei Ninox. Immer dann wenn ein Benutzer ein neues To-Do in eine Tabelle einem Bearbeiter, der nicht er selbst ist, zuweist, soll an den Bearbeiter eine Email vom Benutzer mit der Beschreibung des To-Dos gesendet werden.

Ich hatte zuerst eine Befehlsfläche "Send Email" eingerichtet und es dann mit folgendem Code probiert:

if Benutzer = user() then
if Bearbeiter = user() then
sendEmail({
from: Benutzer = userEmail(),
to: Bearbeiter = userEmail(),
subject: "NINOX neues To-Do 'Aufgabe ' + ‚Erstellt am'" + ", der Benachrichtigungsknopf wurde gerade gedrückt",
text: "Ein neues To-Do wurde für Dich in Ninox erstellt:" + " liebe Grüße, der Absender " + Benutzer
})
else
void
end
end

Das funktioniert leider so nicht.

Weil die Bedingung falsch formuliert ist und ich die Zuordnung der Bearbeiter zu deren Email nicht richtig hinterlegt habe.

 

Habt Ihr einen Lösungsvorschlag für mich? Gern auch ohne Befehlsfläche und ohne weitere Add-ons oder Plug-Ins, wenn möglich.

 

Viele Grüße

Romy

4 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Romy, die Funktion user() gibt den Namen des aktuellen Benutzers zurück. Wenn die E-Mail an den 'Bearbeiter' gehen soll, dann braucht man dessen E-Mail-Adresse. Die müsste also irgendwo hinterlegt sein (unten beispielhaft im Feld 'Bearbeiter-EMAIL'), sofern sie nicht mit dem Benutzernamen identisch ist. Als Ansatz würde ich es mal in diese Richtung versuchen: 

    if Bearbeiter != user() then
        sendEmail({
        from: userEmail(),
        to: Bearbeiter-EMAIL,
        subject: "NINOX neues To-Do, " + 'Erstellt am' + ", der Benachrichtigungsknopf wurde gerade gedrückt",
        text: "Ein neues To-Do wurde für Dich in Ninox erstellt. Liebe Grüße,  " + userName()
        })
    end

    Man kann den Code statt mit einem Button bspw. auch als Trigger "Nach Änderung" im Feld 'Bearbeiter' ausführen lassen.

    • Romy_Fischer
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hi Copytexter,

    ich habe versucht den Trigger "Nach Änderung" im Feld 'Bearbeiter' nachzustellen. Das Feld 'Bearbeiter" ist ein Mehrfachauswahlfeld. Dort habe ich als Werte die Emailadressen der einzelnen user hinterlegt. Das funktioniert anscheindend aber leider nicht. 

    Hast Du noch eine andere Idee für mich? Liegt es am Mehrfachauswahlfeld? Es sollte prinzipiell möglich sein, dass jeder user einem anderen (besser mehreren anderen) usern eine Aufgabe stellen kann.

    • Ninox-Professional
    • planoxpro
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hallo Romy, mit einem Mehrfachauswahlfeld wird die Sache etwas komplizierter. Da dort eben mehrere Einträge ausgewählt werden können, bekommt man bei Abfragen ein Array zurück. Und wenn es mehrere Bearbeiter gibt, müsste die Mail ja auch an mehrere Empfänger gesendet werden. Das könnte man so machen (Texte gekürzt):

    let myB := chosen(Bearbeiter);
    sendEmail({
        from: userEmail(),
        to: myB,
        subject: "Neues NINOX-To-Do vom " + 'Erstellt am'
        text: "Dir wurde eine neue Aufgabe zugewiesen. Grüße, " + userName()
    })

     

    Problem: Es wird dabei nicht geprüft, ob der Ersteller des Eintrags auch zu den 'Bearbeitern' gehört. Er bekäme die Mail also ggf. auch. Soll das nicht pasieren, würde ich statt einer Mail an mehrere Empfänger zu senden mit einer Schleife jedem Empfänger jeweils eine Mail zukommen lassen. Dabei ließe sich auch der Ersteller abfragen und ggf. vom Versand ausschließen:

    let myB := chosen(Bearbeiter);
    for ii in myB do
        if ii != userEmail() then
            sendEmail({
                from: userEmail(),
                to: ii,
                subject: "Neues NINOX To-Do vom " + 'Erstellt am',
                text: "Dir wurde eine neue Aufgabe zugewiesen. Grüße, " + userName()
            })
        end
    end

    So oder so: Ich würde mir das mit dem Trigger überlegen und vielleicht doch einen Button nehmen. Ansonsten würden auch bei jeder Änderung im Feld 'Bearbeiter' immer alle eine Mail bekommen. Das aber nur als Anregung.

    Natürlich wie immer alles nach bestem Wissen und Gewissen, aber ohne Gewähr. ;)

    • Romy_Fischer
    • vor 3 Jahren
    • Gemeldet - anzeigen

    Hey Copytexter,

    vielen Dank für Deine Empfehlung. Die Einrichtung hat mit dem Trigger wie gewünscht funktioniert. Wir tüfteln jetzt ein wenig an der Darstellung/Layout des Emailtextes.

    Merci!

Content aside

  • vor 3 JahrenZuletzt aktiv
  • 4Antworten
  • 803Ansichten