0

sendEmail() als Trigger

Hallo zusammen, ich habe ein scheinbar simples Problem, aber ich komm nicht weiter: Es soll eine email versenden sobald folgende 2 Bedingungen erfüllt sind:

Bedingung 1: neuer Eintrag in Tabelle "ERFASSUNG_STOPPS+STÖRUNGEN"  wird erstellt

Bedingung 2: in Spalte "Hauptursache" der Tabelle wird "Ungeplante Stopps – Anlagenfehler" ausgewählt

Bedingung 3: "Endezeit Stopp- oder Störung*" wurde nach 1 Stunde noch nicht erfasst.

Wie könnte ich die Bedingungen in das Script einbauen zum absenden eines emails? In "Trigger bei neuem Datensatz"?

 

sendEmail({
from: userEmail(),
to: user@firma.com,
subject: "Störungsmeldung"
text: ?Infos aus dem betroffenen Eintrag/ der Störung?
})

 

Danke im Voraus:-)

4 Antworten

null
    • Developer by Smartplanung
    • smartplanung
    • vor 11 Monaten
    • Gemeldet - anzeigen

    Wenn ich dein Anliegen richtig verstehe, möchtest Du einen Datensatz erstellen und dann eine Stunde später eine Mail versenden, wenn die Bedingungen erfüllt sind?

    Zeitbasierte Trigger sind Serverseitig nicht möglich. Das würde eine externe Anbindung erfordern (Make/n8n), welche getriggert wird (wenn Bedingung 1 und 2 zutrifft) und dann beispielsweise einen Timer von 60 Minuten stellt und anschließend erneut prüft, ob die Endzeit eingetragen wurde. Wenn keine Endzeit eingetragen wurde, wird eine Mail versendet. Das kann man dann wieder mit Ninox machen (Function exec) oder direkt im Workflow.

      • Patrick_Jermann
      • vor 11 Monaten
      • Gemeldet - anzeigen

       Danke für Deine Antwort:-)  Gibts aus Deiner Sicht einen Workaround innerhalb Ninox?

      • Developer by Smartplanung
      • smartplanung
      • vor 11 Monaten
      • Gemeldet - anzeigen

       keinen der 100% zuverlässig ist. Man könnte beim Wechseln eines Tabs oder Klicken einer Schaltfläche (z.B. zum Navigieren zu einer anderen Tabelle/Page) abfragen, ob 60 Minuten zu den offenen Störungen abgelaufen sind. Aber das setzt voraus, dass immer jemand in der Datenbank aktiv ist und würde ggf. auch erst auslösen, wenn schon 70 Minuten vorbei sind, da der Kollege nicht entsprechend interagiert hat.

      Zuverlässig lässt sich das beispielsweise mit Cronjobs von einer externen Anbindung durchführen.

      Als Beispiel:

      Ich stelle einem Kunden Datenbank-Updates bereit, welche von mir terminiert werden. Über n8n frage ich alle 60 Sekunden ab, ob ein Update bereitsteht. Wenn ja, erfolgen weitere Aktionen. Wenn nein, passiert nichts. In einem weiteren Workflow wird auch alle 60 Sekunden abgefragt, ob nun der Zeitpunkt für das Update erreicht ist. Wenn ja, wird das Update installiert. Wenn nein, passiert nichts.

      • Patrick_Jermann
      • vor 11 Monaten
      • Gemeldet - anzeigen

      Danke sehr! Hat mir super geholfen;-)

Content aside

  • vor 11 MonatenZuletzt aktiv
  • 4Antworten
  • 70Ansichten
  • 2 Folge bereits