Zum Inhalt springen

Benachrichtigungsregel zum Erstellen einer HTML-Tabelle aus einer dynamischen Abfrage

Einführung

Diese Seite gibt ein Beispiel dafür, wie man eine Benachrichtigung mit HTML-formatierten Daten sendet.

Das Beispiel betrachtet den Anwendungsfall eines Unternehmens, das eine App benötigt, um einen Genehmigungsprozess für Serverneustarts zu verwalten. Die App muss in der Lage sein, eine Email an den zuständigen Systemmanager jedes Servers zu senden. Server können mehr als einen zuständigen Manager haben. Die Email sollte eine HTML-Tabelle enthalten, die die Server zeigt, die neu gestartet werden sollen.

Um dieses Beispiel einzurichten, folgen Sie den Schritten in jedem Abschnitt.

Email-Einstellungen konfigurieren

Um die Email-Einstellungen Ihrer App zu konfigurieren, befolgen Sie diese Schritte:

  1. Konfigurieren Sie den SMTP-Server:

    1. Wählen Sie IDE > Benachrichtigungsserver.
    2. Klicken Sie auf das Symbol zum Öffnen des Datensatzes für den SMTP-Eintrag. Der Dialog Benachrichtigungspunkt öffnet sich.
    3. Geben Sie im Feld Von-Adresse die Email-Adresse des Absenders ein.
    4. Geben Sie im Feld Uri die Adresse Ihres SMTP-Servers ein, einschließlich des Protokollpräfixes (smtp:// oder smtps://) und der Portnummer (normalerweise :587, kann aber auch eines von :25, :465 oder :2525 sein).
    5. Erweitern Sie den Abschnitt Sicherheit.
    6. Geben Sie die Anmeldeinformationen des SMTP-Servers in die Felder Benutzername und Passwort ein.
    7. Erweitern Sie den Abschnitt Testen.
    8. Geben Sie gültige Email-Adressen in die Felder Von und An ein und klicken Sie dann auf die Schaltfläche Test-Email. Dies sendet eine Email an und von diesen Adressen über den konfigurierten SMTP-Server.
    9. Wenn der Test erfolgreich ist, schließen Sie den Dialog Benachrichtigungspunkt.
  2. Konfigurieren Sie Ihre Email-Adresse:

    1. Wählen Sie > Benutzerprofil anzeigen. Der Dialog Benutzerprofil öffnet sich.
    2. Geben Sie im Feld Email-Adresse eine gültige Email-Adresse ein. (Dies ist die Adresse, von der die Emails zu kommen scheinen.)
    3. Drücken Sie Enter, und schließen Sie dann den Dialog.
  3. Setzen Sie die Standard-Website-URL:

    1. Wählen Sie IDE > Sicherheitsanbieter.
    2. Wählen Sie im Panel Konfiguration Mehr > Websites.
    3. Klicken Sie auf das Symbol zum Öffnen des Datensatzes für die Zeile, die als Standard markiert ist. Der Dialog Website öffnet sich.
    4. Klicken Sie auf die Schaltfläche Bearbeiten.
    5. Geben Sie im Feld URL einen Wert für die URL der App ein.
    6. Klicken Sie auf die Schaltfläche Speichern.
    7. Schließen Sie den Dialog.

Erstellen einer App

  1. Klicken Sie im Seitenmenü auf die Schaltfläche + App.
  2. Geben Sie im Feld Name ServerOwners ein und klicken Sie dann auf die Schaltfläche App erstellen.

Hinweis

Wenn Sie eine vorhandene App verwenden möchten, wählen Sie den richtigen Wert für Quell-Datenquelle aus, wenn Sie die Regeln auf dieser Seite einrichten.

Tabellen erstellen

Um die Tabellen für dieses Beispiel einzurichten, wählen Sie > App-Arbeitsbereich > Tabellen, und verwenden Sie dann die Schaltflächen + Tabelle und + Spalte, um die Tabellen und Spalten in diesem Abschnitt hinzuzufügen.

Wichtig

Klicken Sie für jede Tabelle auf die Schaltfläche Veröffentlichen in der Geschäftsschicht und dann auf die Schaltfläche Veröffentlichen in der UI-Schicht, wobei Sie die Standardeinstellungen Startseite für den Menüstandort und Tabelle und Formular für den Paneltyp auswählen.

Tabelle: Servers

Diese Tabelle speichert die Details Ihrer Server:

Spaltenname Datentyp Primär
schlüssel
Fremd
schlüssel
Erforderlich
ServerID Eindeutige ID
ServerName Zeichenfolge
ServerLocation Zeichenfolge
(Optional) Zusätzliche Details zum Server nach Bedarf.

Servertabelle

Tabelle: Owners

Diese Tabelle speichert die Details der für die Server verantwortlichen Personen:

Spaltenname Datentyp Primär
schlüssel
Fremd
schlüssel
Erforderlich
OwnerID Eindeutige ID
OwnerName Zeichenfolge
OwnerEmailAddress Email
(Optional) Zusätzliche Details zu den Eigentümern nach Bedarf.

Besitzer-Tabelle

Tabelle ServerOwners

Diese Tabelle verbindet Besitzer mit Servern:

Spaltenname Datentyp Primär
schlüssel
Fremd
schlüssel
Erforderlich
ServerOwnerID Eindeutige ID
ServerID Eindeutige ID
OwnerID Eindeutige ID

ServerOwners-Tabelle

Tipp

Für diese Tabelle wählen Sie die Registerkarte Spalten und klicken dann auf das -Symbol in der FK-Spalte, um die Fremdschlüssel hinzuzufügen.

Beispiel-Daten hinzufügen

Um Beispiel-Daten hinzuzufügen, gehen Sie wie folgt vor:

  1. Klicken Sie im App Workbench auf das App-Einstellungen -Symbol, um die App auszuführen.

  2. Auf der Startseite der App wählen Sie für jeden der Besitzer, Server und Serverbesitzer die Option aus, klicken auf die Schaltfläche Erstellen und fügen genügend Einträge hinzu, damit das Beispiel für Sie sinnvoll ist. Zum Beispiel:

    Besitzer Beispiel-Daten

    Server Beispiel-Daten

    ServerOwners Beispiel-Daten

Regeln erstellen

Regel: ServerOwners (Unterabfrage)

Diese Unterabfrage-Regel gibt die Daten in der Regel ServerOwners (Geschäftsregel) aus, ergänzt um die Namen der Besitzer und Server:

  1. Regel erstellen:

    1. Öffnen Sie Ihre App und wählen Sie > App Workbench > Regeln.

    2. Klicken Sie auf die Schaltfläche + Regel.

    3. Stellen Sie im Regel-Panel auf der Seite Regel-Builder die folgenden Werte ein:

      • Name: ServerOwners (Unterabfrage)
      • Zweck: Unterabfrage
      • Datenquelle: ServerOwners
      • Ziel: ServerOwners
    4. Klicken Sie auf die Schaltfläche Erstellen (oder drücken Sie Control+S).

  2. Tabellen hinzufügen:

    • Eigentümer:

      1. Klicken Sie auf die Registerkarte Tabellen und dann auf die Schaltfläche + Tabellen. Ein Dialog öffnet sich.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für den Eintrag Eigentümer. Der Dialog schließt sich.
    • Server:

      1. Klicken Sie auf die Schaltfläche + Tabellen.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für den Eintrag Server.
  3. Spalten auswählen: Wählen Sie die folgenden Spalten aus:

    • OwnerName in der Tabelle Eigentümer.
    • ServerName in der Tabelle Server.
    • ServerOwnerID in der Tabelle ServerEigentümer.

      ServerOwners subquery rule

  4. Regel überprüfen:

    1. Klicken Sie auf die Schaltfläche Validieren.
    2. (Optional) Überprüfen Sie die Ergebnisse der Regel im Tab Ergebnisse:

      ServerOwners subquery rule results

Regel: ServerOwnersTable (Unterabfrage)

Diese Unterabfrage-Regel erzeugt das HTML, das in der Benachrichtigung im Body verwendet wird.

  1. Regel erstellen:

    1. Wählen Sie > App-Arbeitsbereich > Regeln.
    2. Klicken Sie auf die Schaltfläche + Regel.
    3. Stellen Sie im Panel Regel auf der Seite Regel-Builder die folgenden Werte ein:

      • Name: ServerOwnersTable (Unterabfrage)
      • Zweck: Unterabfrage
      • Datenquelle: ServerEigentümer
      • Ziel: ServerEigentümer
    4. Klicken Sie auf die Schaltfläche Erstellen.

  2. Tabellen hinzufügen:

    • ServerEigentümer (Unterabfrage):

      1. Klicken Sie auf die Schaltfläche + Tabellen.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für die Regel ServerEigentümer (Unterabfrage).
  3. Tabellen verknüpfen: Ziehen Sie die Spalte ServerOwnerID von ServerEigentümer in die gleiche Spalte in ServerEigentümer (Unterabfrage).

  4. Spalten auswählen: Wählen Sie alle Spalten in der Regel ServerEigentümer (Unterabfrage) aus:

    ServerOwnersTable subquery rule

  5. Spalten hinzufügen:

    1. Spalte count:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        count(1)
        
      3. Klicken Sie auf die Schaltfläche Speichern.

    2. Spalte TableHeader:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        '<table><tbody><tr><td>Server Owner</td><td>Server Name</td></tr>'
        
      3. Geben Sie im Feld Alias TableHeader ein.

      4. Klicken Sie auf die Schaltfläche Speichern.
    3. Spalte TableBody:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        GroupConcat('<tr><td>' || SOS.OwnerName || '</td><td>' || SOS.ServerName || '</td></tr>','')
        
      3. Geben Sie im Feld Alias TableBody ein.

      4. Klicken Sie auf die Schaltfläche Speichern.
    4. Spalte TableClose:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        '</table><div>&nbsp;</div> <div>Danke,</div> <div>Server-Team</div>'
        
      3. Geben Sie im Feld Alias TableClose ein.

      4. Klicken Sie auf die Schaltfläche Speichern.
    5. Spalte TableStyle:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        '<style>table, th, td { border: 1px solid black; border-collapse: collapse; }</style>'
        

        Hinweis

        Dies bietet eine minimale Tabellenformatierung.

      3. Geben Sie im Feld Alias TableStyle ein.

      4. Klicken Sie auf die Schaltfläche Speichern.

        ServerOwnersTable

  6. Regel überprüfen:

    1. Klicken Sie auf die Schaltfläche Validieren.
    2. (Optional) Überprüfen Sie die Ergebnisse der Regel im Tab Ergebnisse:

      ServerOwnersTable results

Regel: ServerOwners (Benachrichtigung)

Diese Regel generiert die Benachrichtigung, die an Serverbesitzer gesendet wird.

  1. Regel erstellen:

    1. Wählen Sie > App Workbench > Benachrichtigungen.
    2. Klicken Sie auf die Schaltfläche + Benachrichtigung.
    3. Im Regel-Panel auf der Seite Regel-Builder setzen Sie die folgenden Werte:

      • Name: ServerOwners (Benachrichtigung)
      • Zweck: Benachrichtigung
      • Liefermethode: Email

        Tipp

        Während des Testens oder wenn Sie keinen SMTP-Server haben, setzen Sie die Liefermethode auf App Builder Alert.

    4. Klicken Sie auf die Schaltfläche Erstellen.

  2. Tabellen hinzufügen:

    • ServerOwnersTable (Unterabfrage):

      1. Klicken Sie auf die Schaltfläche + Tabellen.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für den Eintrag ServerOwnersTable (Unterabfrage).
    • ServerOwners (Geschäftsobjekt):

      1. Klicken Sie auf die Schaltfläche + Tabellen.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für den Eintrag ServerOwners (Geschäftsobjekt).
    • Owners (Geschäftsobjekt):

      1. Klicken Sie auf die Schaltfläche + Tabellen.
      2. Klicken Sie auf die Schaltfläche Hinzufügen für den Eintrag Owners (Geschäftsobjekt).
  3. Tabellen verknüpfen: Ziehen Sie die Spalte ServerOwnerID von ServerOwnersTable (Unterabfrage) in die gleiche Spalte von ServerOwners (Geschäftsobjekt).

    Tipp

    Die Verknüpfung OwnerID zwischen ServerOwners (Geschäftsobjekt) und Owners (Geschäftsobjekt) erfolgt automatisch.

  4. Spalten hinzufügen:

    1. Spalte To():

      1. Wählen Sie die Registerkarte Spalten.
      2. Klicken Sie auf die Schaltfläche + Spalte.
      3. Im Spalten- oder Ausdrucks-Panel geben Sie Folgendes ein:

        OBO.OwnerEmailAddress
        
      4. Geben Sie im Feld Alias OwnerEmail ein.

      5. Öffnen Sie das Menü Ziel und wählen Sie dann To().
      6. Klicken Sie auf die Schaltfläche Speichern.
    2. Spalte Binding():

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        SOBO.ServerOwnerID
        
      3. Öffnen Sie das Menü Ziel und wählen Sie dann Binding().

      4. Klicken Sie auf die Schaltfläche Speichern.
    3. Spalte Tabelle:

      1. Klicken Sie auf die Schaltfläche + Spalte.
      2. Geben Sie im Panel Spalte oder Ausdruck Folgendes ein:

        GroupConcat(SOTS.TableStyle || SOTS.TableHeader || SOTS.TableBody || SOTS.TableClose, '')
        
      3. Geben Sie im Feld Alias Tabelle ein.

      4. Klicken Sie auf die Schaltfläche Speichern.

        ServerOwners (Benachrichtigung) Spalten

    4. Überprüfen Sie die Regel:

      1. Klicken Sie auf die Schaltfläche Validieren.
      2. (Optional) Überprüfen Sie die Ergebnisse der Regel im Tab Ergebnisse:

        ServerOwners (Benachrichtigung) Ergebnisse

Test

  1. (Optional) Führen Sie die App aus, wählen Sie die Seite Eigentümer und überprüfen Sie, ob die Email-Adressen der Eigentümer gültig sind.
  2. Wählen Sie > App-Arbeitsbereich > Benachrichtigungen.
  3. Wählen Sie im Panel Benachrichtigungsregeln ServerOwners (Benachrichtigung) aus. (Dies ist bereits ausgewählt, wenn es die einzige Benachrichtigungsregel ist.)
  4. Klicken Sie im Panel Nachricht auf die Schaltfläche Bearbeiten.
  5. Geben Sie im Feld Betreff Ihren gewünschten Betreff ein.
  6. Geben Sie im Bearbeitungsfeld Text Folgendes ein:

    {{Table|HTML}}
    
  7. Klicken Sie auf die Schaltfläche Speichern.

  8. Klicken Sie auf die Schaltfläche Test und dann auf die Schaltfläche Fortfahren.
  9. Überprüfen Sie Ihren Email-Posteingang auf die Nachricht. (Wenn Sie mit einem App Builder Alert testen, wird eine Toast-Nachricht angezeigt, die den Inhalt der Nachricht enthält.)