Skip to content

Variables dans le texte

Cet article d'aide ne s'applique pas aux modèles de document. Lisez comment utiliser les variables dans les modèles de document ici.

Navigation

Les variables stockent une valeur, telle qu'un nombre, une chaîne ou un autre type de données. Les variables sont utilisées dans :

  • Nom de la tâche (dans le modèle de tâche ou lors de la création d'une tâche)
  • Description de la tâche (dans le modèle de tâche ou lors de la création d'une tâche)
  • Modèles d'e-mail
  • Actions de Script, boutons, webhooks entrants, règles e-mail pour les tâches :
    • Send HTTP request
    • Send SMS
    • Write to WhatsApp
    • Write to Instagram
  • Actions en masse, scénarios, boutons, webhooks entrants, règles e-mail pour les tâches :
    • Change name
    • Change description
    • Add comment
    • Set field value (pour les champs "Text")


Pour ajouter une variable dans le texte, par exemple dans la description de la tâche, cliquez sur le lien "different variables" (1), créez la variable et ajoutez-la au texte du champ souhaité dans le modèle de tâche (2) :

vBmUi1.jpg

Calculs avec des variables

Parfois, il ne suffit pas d'insérer la valeur d'une variable dans le texte ; il faut également effectuer des calculs avec les valeurs des variables ou traiter la chaîne obtenue. Pour ces actions, utilisez la syntaxe suivante :

%%%FORMULA TEXT%%%

Exemples

Discounted price: %%%{{Task.Price}}*0.8%%%
Work will be completed in %%%DATEDIF(NOW(); {{Task.Completion Date}}; "d")%%% %%%MULTIPLE(DATEDIF(NOW(); {{Task.Completion Date}}; "d");"day"; "days")%%%

Important

  • Le texte de la formule doit être écrit sur une seule ligne et ne peut pas être interrompu. En d'autres termes, la formule ne peut pas être repartie sur la ligne suivante en appuyant sur la touche Entrée.
  • Les variables dans la formule ne peuvent pas être formatées, par exemple en gras ou en italique.
  • Si vous devez mettre en gras le résultat de la formule, appliquez le formatage à l'ensemble de la formule avec le résultat.

IF

Pour insérer du texte en fonction des valeurs des variables (conditions), utilisez la syntaxe suivante :

%%$IF(Logical formula)$%%
TEXT
%%$ENDBLOCK$%%

Exemple

%%$IF({{Task.Order Amount}} > 100000)$%%
VIP CUSTOMER
%%$ENDBLOCK$%%


Résultat:

VIP CUSTOMER

ELSE

ELSE s'utilise uniquement avec IF. Lorsque la condition dans IF est fausse, le texte de la partie ELSE du bloc est affiché.

%%$IF(Logical formula)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%

Exemple

%%$IF({{Task. Invoice №}}="")$%%
The field [Invoice №] is not filled in
%%$ELSE$%%
The required task field is filled in! :)
%%$ENDBLOCK$%%


Résultat:

  • Si le champ n'est pas rempli, le message "The field [Invoice №] is not filled in" sera affiché.
  • Si le champ est rempli, le message "The required task field is filled in! :)" sera affiché.

ELSEIF

Permet de créer une expression plus complexe avec des conditions :

%%$IF(Logical formula)$%%
TEXT
%%$ELSEIF(Logical formula)$%%
TEXT
%%$ELSEIF(Logical formula)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%


Remarque

  • Le dernier ELSE est une partie optionnelle du bloc.

Exemple

%%$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$%%


Résultat:

  • Si les trois champs ne sont pas remplis, seul le premier message "The field [Invoice Number] is not filled in" sera affiché ; les autres seront ignorés.
  • Si les champs "Invoice Number" et "UPD Number" sont remplis, mais que le champ "Contract Number" ne l'est pas, alors le message correspondant "The field [Contract Number] is not filled in" sera affiché.

FOREACH

Lorsque une variable représente une liste de valeurs, par exemple {{Task.Subtasks}} ou {{Task.Assignee}}, et que vous devez afficher des informations pour chaque valeur, utilisez la syntaxe suivante :

%%$FOREACH(Variable;Delimiter)$%%
TEXT
%%$ENDBLOCK$%%


Important: dans cette partie de l'expression — %%$FOREACH(Variable;Delimiter)$%% — veillez à indiquer la variable de premier niveau, c.-à-d. {{Task.Subtasks}} ou {{Task.Assignee}}, et rien d'autre.

Exemple

%%$FOREACH({{Task.Assignee}};"<br>")$%%{{Task.Assignee}} - {{Task.Assignee.Position}}%%$ENDBLOCK$%%


Résultat:

linda Martinez - Designer
Jamse Davis - Developer
Mary Brown - CEO
%%$FOREACH({{Task.Subtasks}};"<br>")$%%{{Task.Subtasks.Number}} - {{Task.Subtasks.Name}}%%$ENDBLOCK$%%


Résultat:

2119 - Rough finish
2120 - Sub-final finishing
2121 - Final touches

Exemple avec condition

Syntaxe:

%%$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$%%


Résultat

De la liste entière des counterparties, seuls ceux avec un montant de contrat supérieur à 1000 seront affichés :

LLC Sunrise, 1500

LLC Sunset, 1700

LLC Dawn, 2500

Bloc ELSE à l'intérieur d'un FOREACH

Syntaxe:

%%$FOREACH(Variable;Delimiter)$%%
TEXT
 %%$IF(Logical formula)$%%
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$%%


Résultat:

LLC Sunrise, 5689845987654, 1500 $
LLC Sunset, 5689845125699, 1700 $
LLC Dawn, 5689845589674, 2500 $
LLC Light, 5689845235689, 500 $

TABLE

Si une variable représente une liste de valeurs, et que vous devez afficher l'information pour chaque valeur sous forme de tableau, utilisez la syntaxe suivante :

%%$TABLE(Variable)$%%
TEXT
%%$ENDBLOCK$%%

Exemple

L'exemple montre comment extraire uniquement les blocs nécessaires à partir du data tag ajouté dans la tâche et envoyer ces informations au client sous forme de tableau. Le tableau est ajouté en utilisant l'éditeur Planfix :

Order №{{Task.Number}}

%%$TABLE({{Data tag.Service}})$%%

{{Data tag.Service.Service Name}} {{Data tag.Service.Amount}}

%%$ENDBLOCK$%%

Montant total de la commande : %%%TEXT(SUM({{Data tag.Service.Amount}});",.2f")+MULTIPLE(SUM({{Data tag.Service.Amount}}); " ruble"; " rubles")%%%


Résultat:

Order №2118

Graphic design 1 600.00
Programming 3 000.00
Development of TA 300.00

Montant total de la commande : 4 900.00 dollars

Exemple avec en-tête et total

Pour ajouter un en-tête ou une ligne de totaux au tableau, utilisez les paramètres suivants dans la syntaxe :

%%$TABLE(Variable;0;0)$%%
Table dessinée avec l'éditeur Planfix
%%$ENDBLOCK$%%

Exemple: %%$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$%%


Résultat:

# 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

Les nombres mis en évidence en rouge indiquent combien de lignes utiliser pour l'en-tête et les totaux.

Par exemple, les nombres (1;1) dans l'exemple ci-dessus signifient qu'une ligne au début sera utilisée pour l'en-tête du tableau et une ligne à la fin sera utilisée pour les totaux du tableau.

Pour utiliser deux lignes dans l'en-tête du tableau, précisez-les ainsi — (2;1).

Exemple: %%$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$%%


Résultat:

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

Exemple avec condition

%%$TABLE(Variable;0;0;Condition_WITHOUT_If)$%%
Table drawn using the 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$%%


Résultat:

Counterparty TIN Contract amount
LLC Sunrise 5689845987654 1500$
LLC Sunset 5689845125699 1700$
LLC Dawn 5689845589674 2500$
LLC Light 5689845235689 500$


Pour ajouter un en-tête au tableau, faites un clic droit dessus et sélectionnez Row - Insert Row Above :

Pvy4PR.jpg

FOREACH et TABLE avec infoblocks

Lors de l'analyse d'un e-mail ou de la réponse à une requête HTTP, vous recevez plusieurs lignes de données et souhaitez les ajouter sous forme de texte structuré ou de tableau :

%%$FOREACH({{Infoblock.!row}};Separator)$%%
{{Infoblock.!row.Infoblock name}}
%%$ENDBLOCK$%%

%%$TABLE({{Infoblock.!row}})$%%
{{Infoblock.!row.Infoblock name}}
%%$ENDBLOCK$%%


Exemple

Extraitons les données dans les infoblocks "Product" et "Price" et ajoutons-les au tableau :

%%$TABLE({{Infoblock.!row}})$%%

{{Infoblock.!string.Product}} {{Infoblock.!string.Price}}

%%$ENDBLOCK$%%


Résultat:

Pencil 1,00
Pen 2,00
Notebook 10,00


Aller à