Variablen im Text
Variablen speichern einen Wert, z. B. eine Zahl, eine Zeichenfolge oder einen anderen Datentyp. Variablen werden verwendet in:
- Aufgabenname (in der Aufgaben-Vorlage oder beim Erstellen einer Aufgabe)
- Aufgabenbeschreibung (in der Aufgaben-Vorlage oder beim Erstellen einer Aufgabe)
- E-Mail-Vorlagen
- Script-Aktionen, Buttons, eingehende Webhooks, E-Mail-Regeln für Aufgaben:
- Send HTTP request
- Send SMS
- Write to WhatsApp
- Write to Instagram
- Massenaktionen, Scripts, Buttons, eingehende Webhooks, E-Mail-Regeln für Aufgaben:
- Change name
- Change description
- Add comment
- Set field value (für "Text"-Felder)
Um eine Variable in den Text einzufügen, z. B. in die Aufgabenbeschreibung, klicken Sie auf den Link "verschiedene Variablen" (1), erstellen Sie die Variable und fügen Sie sie in den Text des gewünschten Feldes in der Aufgaben-Vorlage ein (2):
Berechnungen mit Variablen
Manchmal reicht es nicht aus, nur den Wert einer Variable in den Text einzusetzen; es müssen auch Berechnungen mit den Werten der Variablen durchgeführt oder die erhaltene Zeichenfolge verarbeitet werden. Für solche Aktionen verwenden Sie folgende Syntax:
%%%FORMULA TEXT%%%
Beispiele
Wichtig
- Der Formeltext muss in einer einzigen Zeichenfolge geschrieben werden und darf nicht umgebrochen werden. Mit anderen Worten: Die Formel darf nicht durch Drücken der Enter-Taste in die nächste Zeile gesetzt werden.
- Variablen innerhalb der Formel dürfen nicht formatiert werden, z. B. fett oder kursiv gemacht werden.
- Wenn Sie das Ergebnis der Formel fett hervorheben möchten, wenden Sie die Formatierung auf die gesamte Formel zusammen mit dem Ergebnis an.
IF
Um Text abhängig von den Werten von Variablen (Bedingungen) einzufügen, verwenden Sie folgende Syntax:
TEXT
%%$ENDBLOCK$%%
Beispiel
%%$IF({{Task.Order Amount}} > 100000)$%%
VIP CUSTOMER
%%$ENDBLOCK$%%
Ergebnis:
ELSE
ELSE wird nur zusammen mit IF verwendet. Wenn die Bedingung in IF nicht zutrifft, wird der Text aus dem ELSE-Teil des Blocks angezeigt.
%%$IF(Logische Formel)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%
Beispiel
%%$IF({{Task. Invoice №}}="")$%%
The field [Invoice №] is not filled in
%%$ELSE$%%
The required task field is filled in! :)
%%$ENDBLOCK$%%
Ergebnis:
- Wenn das Feld nicht ausgefüllt ist, wird die Meldung "The field [Invoice №] is not filled in" angezeigt.
- Wenn das Feld ausgefüllt ist, wird die Meldung "The required task field is filled in! :)" angezeigt.
ELSEIF
Ermöglicht die Erstellung komplexerer Ausdrücke mit mehreren Bedingungen:
%%$IF(Logische Formel)$%%
TEXT
%%$ELSEIF(Logische Formel)$%%
TEXT
%%$ELSEIF(Logische Formel)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%
Hinweis
- Das letzte ELSE ist ein optionaler Teil des Blocks.
Beispiel
%%$IF({{Task.Invoice Number}}="")$%%
The field [Invoice Number] is not filled in
%%$ELSEIF({{Task.UPD Number}}="")$%%
The field [UPD Number] is not filled in
%%$ELSEIF({{Task.Contract Number}}="")$%%
The field [Contract Number] is not filled in
%%$ELSE$%%
All task fields are filled in, you're awesome! :)
%%$ENDBLOCK$%%
Ergebnis:
- Wenn alle drei Felder nicht ausgefüllt sind, wird nur die erste Meldung "The field [Invoice Number] is not filled in" angezeigt, die restlichen werden übersprungen.
- Wenn die Felder "Invoice Number" und "UPD Number" ausgefüllt sind, aber das Feld "Contract Number" nicht, wird die entsprechende Meldung "The field [Contract Number] is not filled in" angezeigt.
FOREACH
Wenn eine Variable eine Liste von Werten repräsentiert, z. B. {{Task.Subtasks}} oder {{Task.Assignee}}, und Sie Informationen für jeden Wert anzeigen möchten, verwenden Sie folgende Syntax:
TEXT
%%$ENDBLOCK$%%
Beispiel
Ergebnis:
Jamse Davis - Developer
Mary Brown - CEO
Ergebnis:
2120 - Sub-final finishing
2121 - Final touches
Beispiel mit Bedingung
%%$FOREACH(Variable;Delimiter;Condition_WITHOUT_If)$%%
TEXT
%%$ENDBLOCK$%%
%%$FOREACH({{Task.Subtasks}};"";{{Task.Subtasks."Contract Amount ($)"}}>1000))$%%
{{Task.Subtasks.Counterparty}}, contract amount {{Task.Subtasks."Contract Amount ($)"}}
%%$ENDBLOCK$%%
Ergebnis
Aus der gesamten Liste der Auftraggeber/innen werden nur diejenigen angezeigt, deren Vertragsbetrag mehr als 1000 beträgt:
LLC Sunrise, 1500
LLC Sunset, 1700
LLC Dawn, 2500
ELSE-Block innerhalb eines FOREACH-Blocks
%%$FOREACH(Variable;Delimiter)$%%
TEXT
%%$IF(Logische Formel)$%%
TEXT
%%$ENDBLOCK$%%
TEXT
%%$ENDBLOCK$%%
%%$FOREACH({{Task.Subtasks}})$%%%%$IF({{Task.Subtasks.Status}}="TKP added to calculation")$%%
{{Task.Subtasks.Counterparty}}, {{Task.Subtasks.Counterparty.TIN}}, contract amount {{Task.Subtasks."Contract Amount"}} {{Task.Subtasks.Currency.Symbol}}
%%$ENDBLOCK$%%%%$ENDBLOCK$%%
Ergebnis:
LLC Sunrise, 5689845987654, 1500 $
LLC Sunset, 5689845125699, 1700 $
LLC Dawn, 5689845589674, 2500 $
LLC Light, 5689845235689, 500 $
TABLE
Wenn eine Variable eine Liste von Werten repräsentiert und Sie die Informationen für jeden Wert in Form einer Tabelle anzeigen möchten, verwenden Sie folgende Syntax:
TEXT
%%$ENDBLOCK$%%
Beispiel
Das Beispiel zeigt, wie nur die benötigten Blöcke aus dem hinzugefügten Daten-Tag in der Aufgabe extrahiert und diese Informationen dem Auftraggeber als Tabelle gesendet werden. Die Tabelle wird mit dem Planfix-Editor hinzugefügt:
Order №{{Task.Number}}
%%$TABLE({{Data tag.Service}})$%%
| {{Data tag.Service.Service Name}} | {{Data tag.Service.Amount}} |
%%$ENDBLOCK$%%
Total order amount: %%%TEXT(SUM({{Data tag.Service.Amount}});",.2f")+MULTIPLE(SUM({{Data tag.Service.Amount}}); " ruble"; " rubles")%%%
Ergebnis:
Order №2118
| Graphic design | 1 600.00 |
| Programming | 3 000.00 |
| Development of TA | 300.00 |
Total order amount: 4 900.00 dollars
Beispiel mit Kopfzeile und Gesamtsumme
Um eine Kopfzeile oder eine Summenzeile zur Tabelle hinzuzufügen, verwenden Sie die folgenden Parameter in der Syntax:
Tabelle, gezeichnet mit dem Planfix-Editor
%%$ENDBLOCK$%%
Beispiel:
%%$TABLE({{Data Tag.Service}};1;1)$%%
| # | Name | Price |
|---|---|---|
| {{Data tag.Service.Record Number}} | {{Data tag.Service.Service Name}} | {{Data tag.Service.Amount}} |
| Total | %%%SUM({{Data tag.Service.Amount}})%%% | |
%%$ENDBLOCK$%%
Ergebnis:
| # | Name | Price |
|---|---|---|
| 1 | Development of TA | 1 000.00 |
| 2 | Programming | 3 705.00 |
| 3 | Graphic design | 1 035.00 |
| 4 | Testing | 690.00 |
| Total | 6430 | |
Die in rot markierten Zahlen geben an, wie viele Zeilen für Kopfzeile und Summen verwendet werden.
Beispielsweise bedeuten die Zahlen (1;1) im obigen Beispiel, dass eine Zeile am Anfang für die Tabellenkopfzeile und eine Zeile am Ende für die Tabellen-Summen verwendet wird.
Um zwei Zeilen in der Tabellenkopfzeile zu verwenden, geben Sie dies so an — (2;1).
Beispiel:
%%$TABLE({{Data tag .Service}};2;1)$%%
| Set of services | ||
|---|---|---|
| # | Name | Price |
| {{Data tag.Service.Record Number}} | {{Data tag.Service.Service Name}} | {{Data tag.Service.Amount}} |
| Total | %%%SUM({{Data tag.Service.Amount}})%%% | |
%%$ENDBLOCK$%%
Ergebnis:
| Set of services | ||
|---|---|---|
| # | Name | Price |
| 1 | Development of TA | 1 000.00 |
| 2 | Programming | 3 705.00 |
| 3 | Graphic design | 1 035.00 |
| 4 | Testing | 690.00 |
| Total | 6430 | |
Beispiel mit Bedingung
%%$TABLE(Variable;0;0;Condition_WITHOUT_If)$%%
Tabelle, gezeichnet mit dem Planfix-Editor
%%$ENDBLOCK$%%
%%$TABLE({{Task.Subtasks}};1;0;{{Task.Subtasks.Status}}="TKP added to calculation")$%%
| Counterparty | TIN | Contract amount |
|---|---|---|
| {{Task.Subtasks.Counterparty}} | {{Task.Subtasks.Counterparty.TIN}} | {{Task.Subtasks."Contract Amount"}}{{Task.Subtasks.Currency.Symbol}} |
%%$ENDBLOCK$%%
Ergebnis:
| Counterparty | TIN | Contract amount |
|---|---|---|
| LLC Sunrise | 5689845987654 | 1500$ |
| LLC Sunset | 5689845125699 | 1700$ |
| LLC Dawn | 5689845589674 | 2500$ |
| LLC Light | 5689845235689 | 500$ |
Um der Tabelle eine Kopfzeile hinzuzufügen, klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Row - Insert Row Above:
FOREACH und TABLE mit Infoblöcken
Beim Parsen einer E-Mail oder beim Beantworten einer HTTP-Anfrage erhalten Sie mehrere Zeilen mit Daten und möchten diese als strukturierten Text oder Tabelle hinzufügen:
- Extrahieren Sie die Daten in Infoblöcke:
- Dann verwenden Sie folgende Syntax:
%%$FOREACH({{Infoblock.!line}};Separator)$%%
{{Infoblock.!line.Infoblock name}}
%%$ENDBLOCK$%%
%%$TABLE({{Infoblock.!line}})$%%
{{Infoblock.!line.Infoblock name}}
%%$ENDBLOCK$%%
Beispiel
Extrahieren wir Daten in die Infoblöcke "Product" und "Price" und fügen sie in die Tabelle ein:
%%$TABLE({{Infoblock.!line}})$%%
| {{Infoblock.!string.Product}} | {{Infoblock.!string.Price}} |
%%$ENDBLOCK$%%
Ergebnis:
| Pencil | 1,00 |
| Pen | 2,00 |
| Notebook | 10,00 |