Gilt für
Leeren Workflow für den US Weather Service starten
Der Workflow wird ausgelöst, wenn in Smartsheet ein Kontrollkästchen in einem Sheet aktiviert wird. Er verwendet Koordinaten aus dieser Zeile, um die neueste Wettervorhersage vom US Weather Service abzurufen, und füllt dann dieselbe Zeile in Smartsheet mit diesen Daten aus.
Sie verwenden den US Weather Service, um Vorhersagen zu erhalten, da Sie kein Konto benötigen, um auf dessen Wetterdaten zuzugreifen.
Um die Vorhersage zu erhalten, müssen Sie zwei API-Aufrufe an den US Weather Service durchführen:
- Eine, um den Gitterpunkt zu lokalisieren, an dem sich ein geografischer Standort befindet.
- Eine zweite, um die Prognose für dieses identifizierte Gitter zu erhalten.
Sie müssen mit API-Aufrufen nicht vertraut sein, um die Schritte in dieser Anleitung auszuführen, da sie alles bietet, was Sie zum Abschließen des Workflows benötigen.
Dies sind die Schritte zum Erstellen des Workflows:
- Workflow erstellen
- Sheet erstellen
- Mit Smartsheet authentifizieren und Auslöser einrichten
- „Get Row“ (Zeile abrufen) einrichten
- Verzweigung einrichten
- Den ersten API-Aufruf einrichten
- Den zweiten API-Aufruf einrichten
- „Update Row“ (Zeile aktualisieren) einrichten
Schritt 1: Workflow erstellen
- In Smartsheet Bridge. Wählen Sie im Dashboard Workflows die Option + aus.
Geben Sie Ihrem Workflow einen Namen und wählen Sie Create New (Neu erstellen) aus. So gelangen Sie zum Designer.
Alle Workflows beginnen mit einem Auslöser und einem Zustand.
![New workflow for the API call to the US Weather Service](https://cdn.bfldr.com/NB5M6M91/at/k9tkjr9wbw786mj4kmjrrq/new-workflow-api-call.jpg)
Schritt 2: Sheet erstellen
Bevor Sie den Auslöser in Smartsheet Bridge einrichten, benötigen Sie ein Sheet in Smartsheet mit mindestens fünf Spalten.
Richten Sie Ihr Sheet mit den folgenden Spaltennamen und -typen ein:
Spaltenname | Spaltentyp |
---|---|
Datum | Datum |
Heute | Kontrollkästchen |
Längengrad | Text |
Breitengrad | Text |
Wettervorhersage | Text |
![Create the sheet for the API call to the US Weather Service](https://cdn.bfldr.com/NB5M6M91/at/hp8rf8mw6kq56t3v8f6phm5/weather-forecast-sheet-api-call.jpg)
Die Spalte Wettervorhersage kann entweder Ihre primäre Spalte oder eine reguläre Textspalte sein.
Fügen Sie in der ersten Zelle der Spalte Heute die folgende Formel ein:
=IF (Date@row = TODAY (), true, false)
- Drücken Sie die Eingabetaste, um die Formel in dieser Zelle zu speichern. Damit wird das Kontrollkästchen aktiviert, wenn der Datensatz in der Spalte Datum das heutige Datum ist, das Sie dann zum Auslösen Ihres Workflows in Smartsheet Bridge verwenden können.
- Klicken Sie mit der rechten Maustaste auf die Zelle mit der Formel und wählen Sie In Spaltenformel konvertieren aus. Dadurch wird sichergestellt, dass alle neuen Zeilen, die dem Sheet hinzugefügt werden, diese Formel in der Spalte Heute verwenden.
- Speichern Sie das Sheet.
- Bevor Sie zum Designer in Smartsheet Bridge zurückkehren, kopieren Sie die Sheet-ID. Sie finden die Sheet-ID unter Datei > Eigenschaften.
Schritt 3: Auslöser einrichten
Wählen Sie im Designer das Trigger-Element oben im Workflow aus. Dadurch wird auf der rechten Seite des Designers ein Bereich geöffnet, in dem Sie den Typ des Auslösers einrichten können, den Sie verwenden möchten. Da der Workflow durch ein Ereignis in Smartsheet ausgelöst werden soll, wird als Typ ein Integration Trigger (Integrationsauslöser) verwendet.
Wählen Sie im Bereich unter dem automatisch erweiterten Abschnitt Integrations (Integrationen) die Option Integrations Page (Seite „Integrationen“) aus.
![Set up the trigger for the API call](https://cdn.bfldr.com/NB5M6M91/at/87szkw5rjprs2t6srm493m9r/weather-forecast-trigger.jpg)
Dadurch wird ein neuer Tab mit der Seite Integrationen geöffnet.
- Suchen Sie nach Smartsheet und klicken Sie auf das Logo.
- Wählen Sie im ersten Tab des neuen Fensters Continue (Weiter) aus.
- Wählen Sie im zweiten Tab Authenticate (Authentifizieren) aus.
- Daraufhin wird ein weiteres Fenster angezeigt, in dem Sie gefragt werden, ob Sie Smartsheet Bridge den Zugriff auf Ihr Smartsheet-Konto erlauben möchten. Wählen Sie Allow (Erlauben) aus.
Wenn die Authentifizierung erfolgreich war, wechselt das Fenster zum Tab Triggers (Auslöser).
![Triggers tab](https://cdn.bfldr.com/NB5M6M91/at/jprphc46q3tw3whz5nj7x/triggers-tab.jpg)
Erweitern Sie den Abschnitt Triggers (Auslöser) und wählen Sie die Zeile mit dem Plus-Symbol aus:
- Fügen Sie im Feld Sheet ID (Sheet-ID) die Sheet-ID ein, die Sie beim Anlegen des Sheets kopiert haben. Wenn Sie wissen, dass der Name des Sheets eindeutig ist, können Sie auch den Namen eingeben.
- Wählen Sie in der Dropdown-Liste Event Type (Ereignistyp) den Auslöser When Column Values are Changed (Wenn Spaltenwerte geändert werden) aus.
- Geben Sie in das Feld, das bei der Auswahl des Ereignistyps hinzugefügt wird, den Spaltennamen Heute ein.
Wählen Sie in der Dropdown-Liste Select Workflow (Workflow auswählen) den Workflow aus, den Sie zuvor erstellt haben, und wählen Sie Save (Speichern) aus.
Dass der Auslöser erfolgreich eingerichtet wurde, erkennen Sie daran, dass das Popup-Fenster neu geladen und der Abschnitt Triggers (Auslöser) geschlossen wird.
- Schließen Sie den Tab und kehren Sie zum Designer zurück.
Fehler beim Speichern des Auslösers
Wenn Sie beim Speichern eines Auslösers eine Fehlermeldung erhalten, überprüfen Sie Folgendes:
- Achten Sie darauf, dass Sie den Spaltennamen genau so geschrieben haben wie im Sheet.
- Wenn Sie den Sheetnamen statt der Sheet-ID eingegeben haben, überprüfen Sie, ob Sie diesen richtig geschrieben haben.
- Sollten Sie nicht der Sheetinhaber sein, überprüfen Sie Ihre Sheetberechtigungen, um sicherzustellen, dass Sie noch Zugriff haben.
- Wenn bereits andere Auslöser eingerichtet sind, liegt möglicherweise ein Problem mit einem anderen Auslöser vor. Überprüfen Sie die anderen Auslöser, um sicherzustellen, dass sich bei keinem von ihnen die Berechtigungen geändert haben oder dass das im Auslöser genannte Sheet noch existiert.
Schritt 4. „Get Row“ (Zeile abrufen) einrichten
Sie haben nun den Auslöser eingerichtet, mit dem der Workflow ausgeführt wird, wenn Sie eine Änderung in der Spalte Heute vornehmen. Auch wenn im Workflow nichts anderes angegeben ist, sendet diese Aktion im Sheet nun einige grundlegende Informationen an Smartsheet Bridge. Für den ersten Schritt Ihres Workflows müssen Sie einige der folgenden Anfangsinformationen abrufen:
- Beginnen Sie damit, die Datumszelle in der ersten Zeile auf das aktuelle Datum festzulegen. Dadurch sollte das Kontrollkästchen in der Spalte Heute aufgrund der Formel, die Sie zuvor eingegeben haben, automatisch aktiviert werden.
- Speichern Sie das Sheet und kehren Sie zum Designer in Smartsheet Bridge zurück.
- Öffnen Sie das Ausführungsprotokoll, indem Sie auf die Pfeile auf der rechten Seite des Designers klicken. Zunächst ist es leer, also wählen Sie Refresh (Aktualisieren) aus. Dadurch wird der Bereich aktualisiert. Es sollte eine Ausführung mit dem Status Completed (Abgeschlossen) angezeigt werden.
- Um die anfänglichen Daten anzuzeigen, die von Smartsheet an Smartsheet Bridge gesendet wurden, klicken Sie auf die Ausführung, erweitern Sie die Zeile Trigger (Auslöser) und dann die Zeile Event (Ereignis).
- Bewegen Sie den Mauszeiger über rowId in den Auslöserdaten und wählen Sie das Symbol für Mehr aus, um eine Dropdown-Liste anzuzeigen.
Wählen Sie in der Dropdown-Liste die Option Copy Data Reference (Datenverweis kopieren) aus. Dadurch wird ein Verweis auf die geänderte Zeilen-ID in die Zwischenablage kopiert.
Durch die Verwendung der Referenz anstelle der JSON-Quelle ruft der Workflow immer die Zeile ab, die sich geändert hat, anstatt immer dieselbe Zeile zu betrachten. Dies ist wichtig, da sich wahrscheinlich bei jeder Ausführung des Workflows eine andere Zeile ändern wird.
![Set up Get Row](https://cdn.bfldr.com/NB5M6M91/at/3btx6j5qcr6r6vkt4g9tzwb/set-up-get-row.jpg)
Zustand aktualisieren und Modul hinzufügen
Klicken Sie auf den grauen Zustand und ändern Sie das Feld Name in Get Row (Zeile abrufen).
Es empfiehlt sich, die Zustände nach der Funktion der Module darunter zu benennen, um das Lesen Ihrer Workflows zu erleichtern.
- Suchen Sie das Modul Get Row (Zeile abrufen) links im Menü. Verwenden Sie das Suchfeld oder suchen Sie es, indem Sie Integrations > Smartsheet > Get Row (Integrationen > Smartsheet > Zeile abrufen) erweitern.
- Ziehen Sie das Modul in den Workflow unter dem grauen Zustand. Es wird automatisch ein Fenster zum Einrichten des Moduls geöffnet.
- Fügen Sie im Feld Row ID (Zeilen-ID) den Verweis ein, den Sie aus dem Feld rowId im Ausführungsprotokoll kopiert haben. Der eingefügte Wert sollte {{runtime.event.rowId}} lauten.
- Um die Sheet-ID abzurufen, öffnen Sie erneut das Ausführungsprotokoll und suchen Sie die Sheet-ID, indem Sie die Auslöserdaten erweitern. Kopieren Sie den Verweis auf die Sheet-ID wie zuvor für die Zeilen-ID, indem Sie das Symbol für Mehr auswählen.
- Klicken Sie erneut auf das Modul Get Row (Zeile abrufen) und fügen Sie die Referenz in das Feld Sheet ein. Der eingefügte Wert sollte {{runtime.sheetID}} lauten.
Wählen Sie oben auf der Seite Save (Speichern) aus, um die von Ihnen abgeschlossene Arbeit zu speichern.
Brandfolder Image
Schritt 5. Verzweigung einrichten
Nun müssen Sie feststellen, ob die Änderung des Kontrollkästchens im Sheet darauf zurückzuführen ist, dass das Kontrollkästchen markiert oder nicht markiert wurde. Ein deaktiviertes Kontrollkästchen sollte ignoriert werden. Wenn das Kontrollkästchen jedoch zu „Aktiviert“ geändert wird, bedeutet es, dass das in der Spalte Datum festgelegte Datum das heutige Datum ist und Sie die Wettervorhersage erfassen möchten.
Dazu müssen Sie auf die Zelle mit dem Kontrollkästchen verweisen:
- Gehen Sie zurück zum Sheet und ändern Sie das Datum in der Zeile, die Sie zuvor hinzugefügt haben, um das Kontrollkästchen zu deaktivieren. Speichern Sie anschließend das Sheet.
- Öffnen Sie in Smartsheet Bridge erneut das Ausführungsprotokoll und wählen Sie oben links im Bereich All Runs (Alle Ausführungen) aus. Aktualisieren Sie die Liste, um eine neue abgeschlossene Ausführung oben in der Liste anzuzeigen.
- Öffnen Sie diese neue Ausführung und erweitern Sie den Schritt Smartsheet - Get Row (Smartsheet – Zeile abrufen), um die Zeilendaten anzuzeigen.
- Unter row > cells > Today (Zeile > Zellen > Heute) sehen Sie den Wert false (Falsch). Daran erkennen Sie, dass das Kontrollkästchen in der Spalte Heute in der Zeile, die geändert wurde, deaktiviert war.
Kopieren Sie mithilfe der Dropdown-Liste die Datenreferenz dieses Werts.
Bedingte Verzweigung „Übereinstimmung“ hinzufügen
Der nächste Schritt besteht darin, eine Verzweigung hinzuzufügen, um zu überprüfen, ob der Wert mit den Textwerten true (aktiviert) oder false (deaktiviert) übereinstimmt.
- Geben Sie im Suchfeld Match (Übereinstimmung) ein oder erweitern Sie Utilities > Conditional Junctions > Match (Dienstprogramme > Bedingte Verzweigungen > Übereinstimmung).
- Ziehen Sie die Verzweigung in das Modul Get Row (Zeile abrufen) und nennen Sie sie Heutiges Datum.
Diese Verzweigung besteht aus drei Komponenten: der Verzweigung selbst und zwei Platzhalterzuständen. Weitere Zustände, die Sie in den Workflow ziehen können, finden Sie oben im Menü links unter Pinned Items > New State (Angeheftete Elemente > Neuer Zustand).
Hinzufügen von Zuständen zur Verzweigung
- Ziehen Sie einen neuen Zustand in den Platzhalter success und nennen Sie ihn true.
- Ziehen Sie einen weiteren neuen Zustand in den Platzhalter failure und nennen Sie ihn false.
Datenverweis zur Verzweigung hinzufügen
- Wählen Sie die Verzweigung Heutiges Datum aus, um den Einrichtungsbereich zu öffnen.
- Fügen Sie im Feld First Value (Erster Wert) den zuvor kopierten Verweis ein.
Der eingefügte Wert sollte {{states.Get Row.smartsheet.get_row.row.cells.Today.value}} lauten. - Tippen Sie im Feld Second Value (Zweiter Wert) das Wort true (wahr) ein.
Speichern Sie, was Sie bisher erstellt haben.
Brandfolder Image
Schritt 6: Den ersten API-Aufruf einrichten
Ein Profil für Ihre API-Aufrufe einrichten
Um Wettervorhersagedaten abzurufen, müssen Sie zunächst ein Profil für Ihre API-Aufrufe an den US Weather Service erstellen. Profile speichern Schlüsselinformationen für die System-APIs, mit denen Sie Ihre Workflows verbinden möchten.
- Navigieren Sie in Ihrem Smartsheet Bridge-Konto zum Tab Integrations (Integrationen).
- Wählen Sie das Dienstprogramm Call API aus.
Wählen Sie Continue > Add to Profiles (Weiter > Zu Profilen hinzufügen) aus.
Brandfolder Image- Benennen Sie Ihr Profil. Jeder Profilname muss eindeutig sein. Zum Beispiel: US-Wetter.
- Geben Sie im Feld Base URL (Basis-URL) https://api.weather.gov ein.
- Erweitern Sie das Dropdown-Menü Headers (Header):
- Geben Sie im Feld Key #1 (Schlüssel Nr. 1) „User-Agent“ ein.
Geben Sie im Feld Value #1 (Wert Nr. 1) Ihren Firmennamen und die E-Mail-Adresse durch Komma getrennt ein.
Dies ist eine Voraussetzung vonseiten des US Weather Service, damit er Sie kontaktieren kann, wenn unerwartete Aktivitäten oder Verhaltensweisen in seinen Protokollen festgestellt werden.
- Speichern Sie das Profil.
- Kehren Sie zu Ihrem Workflow zurück.
Einrichten des „Make API Call“-Moduls in Ihrem Workflow
Der erste API-Aufruf identifiziert den Grid Point einer im Sheet eingegebenen Position.
- Suchen Sie das Modul „Make API Call“ über das Suchfeld oder indem Sie Utilities > Utility Functions > Make API Call (Dienstprogramme > Dienstprogrammfunktionen > API-Aufruf vornehmen) erweitern.
- Ziehen Sie es in den Workflow unter dem Zustand true (wahr).
- Wählen Sie im „Make API Call“-Modul das soeben angelegte Profil aus der Dropdown-Liste aus.
- Geben Sie im Feld Endpoint (Endpunkt) die folgenden Punkte an: points/{{states.Get Row.smartsheet.get_row.row.cells.Longitude.value}},{{states.Get Row.smartsheet.get_row.row.cells.Latitude.value}}
- Legen Sie Method (Methode) auf GET fest.
Speichern Sie den Workflow.
Brandfolder Image
Datenreferenzen für den Tabellenaufruf
Die obige URL wird für Sie erstellt, da es für diese Anleitung nicht erforderlich ist, zu verstehen, wie API-Anforderungen funktionieren. Diese URL verweist auf die Längen- und Breitengradwerte in der Zeile, die den Workflow ausgelöst hat.
Wenn Sie diese selbst abrufen möchten, müssen Sie den Workflow erneut auslösen. Dieses Mal müssen Sie sicherstellen, dass das Kontrollkästchen aktiviert ist. Fügen Sie Informationen in eine neue Zeile ein, anstatt die erste zu verwenden, und stellen Sie sicher, dass Sie das Datum auf das heutige Datum festlegen, damit der Workflow entsprechend dem linken Zweig der Verzweigung verläuft.
Koordinaten
Der US Weather Service verlangt maximal vier Nachkommastellen für die Koordinaten.
Erforderlicher Schritt
Sie benötigen Koordinaten, um sie auch in die Felder für Längengrad und Breitengrad einzugeben. Sie können z. B. 47.6174 und -122.2001 verwenden, um das Wetter für das Smartsheet-Büro in Bellevue abzurufen.
Schritt 7: Den zweiten API-Aufruf einrichten
Der zweite API-Aufruf ruft die Vorhersage des US Weather Service basierend auf den zuvor gefundenen Grid Points ab. Um dies einzurichten, müssen Sie dem Workflow einen neuen Zustand und ein weiteres „Make API Call“-Modul hinzufügen.
- Ziehen Sie einen neuen Zustand aus den angehefteten Elementen oben im Menü auf der linken Seite, legen Sie ihn ab und nennen Sie ihn Get Forecast (Prognose abrufen).
- Ziehen Sie dann ein weiteres „Make API Call“-Modul unter den neuen Zustand.
- Wählen Sie im „Make API Call“-Modul das soeben angelegte Profil aus der Dropdown-Liste aus.
- Geben Sie im Feld Endpoint (Endpunkt) Folgendes an: gridpoints/{{states.true.call_api.make_api_call.response.properties.gridId}}/{{states.true.call_api.make_api_call.response.properties.gridX}},{{states.true.call_api.make_api_call.response.properties.gridY}}/forecast
- Legen Sie Method (Methode) auf GET fest.
Speichern Sie den Workflow.
Brandfolder Image
Datenreferenzen für den Prognoseaufruf
Wenn Sie die im obigen Endpunkt verwendeten Datenreferenzen selbst abrufen möchten, lösen Sie den Workflow erneut aus. Stellen Sie sicher, dass die geänderte oder hinzugefügte Zeile das heutige Datum aufweist, damit das Kontrollkästchen aktiviert wird.
Wenn Sie die neue Zeile erstellt und das Sheet gespeichert haben, suchen Sie die letzte Ausführung im Ausführungsprotokoll und erweitern Sie den letzten Schritt: Call API: Make API Call (API aufrufen: API-Aufruf durchführen). Suchen Sie unter Output > properties (Ausgabe > Eigenschaften) die Felder gridId, gridX und gridY. Diese Verweise können Sie dann in der URL für den Aufruf des Wetterdienstes verwenden.
Schritt 8: „Update Row“ (Zeile aktualisieren) einrichten
Da Sie nun Wetterdaten mit dem Workflow abrufen können, müssen Sie im letzten Schritt das Sheet mit der Prognose aktualisieren.
Sheet- und Zeilen-IDs hinzufügen
- Lösen Sie den Workflow erneut aus. Stellen Sie sicher, dass die geänderte oder hinzugefügte Zeile das heutige Datum aufweist, damit das Kontrollkästchen aktiviert wird.
- Fügen Sie unter dem letzten API-Aufrufmodul einen weiteren Zustand hinzu und nennen Sie ihn Update Row (Zeile aktualisieren).
- Suchen Sie nach dem Modul „Zeile aktualisieren“ oder erweitern Sie Integrations > Smartsheet > Update Row (Integrationen > Smartsheet > Zeile aktualisieren).
- Erweitern Sie im Ausführungsprotokoll den Trigger (Auslöser) der letzten Ausführung und suchen Sie nach der Sheet- und Zeilen-ID.
- Verwenden Sie die Datenreferenzen, um die Felder Sheet ID (Sheet-ID) und Row ID (Zeilen-ID) für das Modul „Zeile aktualisieren“ festzulegen.
Detaillierte Referenz zu Prognosedaten hinzufügen
- Kehren Sie zum Ausführungsprotokoll zurück und erweitern Sie den letzten Schritt (das letzte der beiden „Make API Call“-Module). In den vom US Weather Service zurückgegebenen Daten finden Sie eine Reihe von Informationen, darunter Wettervorhersagen für sieben Tage.
- Das aktuelle Wetter finden Sie unter Output > properties > periods > 0 (Ausgabe > Eigenschaften > Zeiträume > 0).
- Für diesen Workflow sollten Sie den Verweis auf detailedForecast verwenden. Kopieren Sie den Datenverweis.
- Öffnen Sie erneut das Modul „Zeile aktualisieren“ und erweitern Sie den Abschnitt Cells (Zellen).
- Fügen Sie den Verweis in das Feld Value # (Wert #) ein. Der eingefügte Wert sollte lauten: {{states.Get Forecast.call_api.make_api_call.response.properties.periods.0.detailedForecast}}
- Geben Sie im Feld Key #1 (Schlüssel Nr. 1) den Spaltennamen „Wettervorhersage“ ein.
- Speichern Sie den Workflow.
Wenn Sie sicherstellen möchten, dass der Workflow nicht fehlschlägt, wenn der US Weather Service keine Informationen zurückgeben kann, können Sie den Datenverweis im Feld Wert # wie folgt anpassen: {{states.Get Forecast.call_api.make_api_call.response.properties.periods.0.detailedForecast||Unable to fetch weather data}}
Dadurch wird sichergestellt, dass das Modul die Zeile mit dem Text nach den Symbolen „||“ aktualisiert, wenn in detailedForecast keine Daten enthalten sind.
![Add detailed forecast data reference](https://cdn.bfldr.com/NB5M6M91/at/tg397zncxsrrb8w9fwmct87/detailed-forecast-data-reference.jpg)
Abgeschlossener Workflow
Ihr Workflow wird jedes Mal ausgeführt, wenn Sie eine neue Zeile hinzufügen (entweder im linken oder im rechten Zweig der Verzweigung). Er wird auch immer dann ausgeführt, wenn das heutige Datum in einer vorhandenen Zeile festgelegt ist. Die Spalte „Wettervorhersage“ in Ihrem Sheet wird automatisch ausgefüllt, wenn der Workflow über den linken Zweig der Verzweigung verläuft oder wenn das Kontrollkästchen Today (Heute) aktiviert ist.