Мәтіндегі айнымалылар
Навигация
Айнымалылар сан, жол немесе басқа деректер түріндегі мәнді сақтайды. Айнымалылар келесі жерлерде қолданылады:
- Тапсырма атауы (тапсырма үлгісінде немесе тапсырма жасағанда)
- Тапсырма сипаттамасы (тапсырма үлгісінде немесе тапсырма жасағанда)
- Электрондық пошта үлгілері
- Скрипт әрекеттері, батырмалар, кіріс вебхуктары, тапсырмаларға арналған email ережелері:
- Send HTTP request
- Send SMS
- Write to WhatsApp
- Write to Instagram
- Бөлшектеп енгізу әрекеттері, скрипттер, батырмалар, кіріс вебхуктары, тапсырмаларға арналған email ережелері:
- Change name
- Change description
- Add comment
- Set field value (for "Text" fields)
Айнымалыны мәтінге қосу үшін, мысалы, тапсырма сипаттамасында, "different variables" сілтемесіне (1) басып, айнымалыны құрып, оны тапсырма үлгісіндегі қажетті өрістің мәтініне қосыңыз (2):
Calculations with Variables
Кейде айнымалы мәнін мәтінге қою жеткіліксіз болып, сол мәндермен есептеулер жүргізу немесе шыққан жолды өңдеу қажет болады. Ондай әрекеттер үшін келесі синтаксисті пайдаланыңыз:
%%%FORMULA TEXT%%%
Мысалдар
Маңызды
- Формула мәтіні бір қатарға жазылуы тиіс және үзілуге (Enter пернесін басып келесі қатарға бөлінуге) болмайды.
- Формуладағы айнымалыларға форматтау қолдануға болмайды, мысалы, оны қалың немесе қисық етіп өзгертуге болмайды.
- Егер формула нәтижесін қалың етіп көрсету қажет болса, нәтижесі бар толық формулаға форматтауды қолданыңыз.
IF
Айнымалылардың мәндеріне (шарттарға) байланысты мәтінді енгізу үшін келесі синтаксисті пайдаланыңыз:
TEXT
%%$ENDBLOCK$%%
Мысал
%%$IF({{Task.Order Amount}} > 100000)$%%
VIP CUSTOMER
%%$ENDBLOCK$%%
Нәтиже:
ELSE
ELSE тек IF-пен бірге қолданылады. IF шартын орындамаса, блоктың ELSE бөлігіндегі мәтін көрсетіледі.
%%$IF(Logical formula)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%
Мысал
%%$IF({{Task. Invoice №}}="")$%%
The field [Invoice №] is not filled in
%%$ELSE$%%
The required task field is filled in! :)
%%$ENDBLOCK$%%
Нәтиже:
- Егер өріс толтырылмаса, "The field [Invoice №] is not filled in" деген хабар көрсетіледі.
- Егер өріс толтырылған болса, "The required task field is filled in! :)" деген хабар көрсетіледі.
ELSEIF
Күрделі шарттық өрнектер жасауға көмектеседі:
%%$IF(Logical formula)$%%
TEXT
%%$ELSEIF(Logical formula)$%%
TEXT
%%$ELSEIF(Logical formula)$%%
TEXT
%%$ELSE$%%
TEXT
%%$ENDBLOCK$%%
Ескерту
- Соңғы ELSE блогы міндетті емес.
Мысал
%%$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$%%
Нәтиже:
- Егер үш өрістің бәрі де толтырылмаған болса, тек бірінші хабар "The field [Invoice Number] is not filled in" көрсетіледі, қалғандары өткізіледі.
- Егер "Invoice Number" пен "UPD Number" өрістері толтырылса, бірақ "Contract Number" толтырылмаса, онда сәйкес хабар "The field [Contract Number] is not filled in" көрсетіледі.
FOREACH
Айнымалы мәндер тізімін көрсетсе, мысалы {{Task.Subtasks}} немесе {{Task.Assignee}}, және әр мән бойынша ақпарат көрсету қажет болса, келесі синтаксисті пайдаланыңыз:
TEXT
%%$ENDBLOCK$%%
Мысал
Нәтиже:
Jamse Davis - Developer
Mary Brown - CEO
Нәтиже:
2120 - Sub-final finishing
2121 - Final touches
Шартпен мысал
%%$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$%%
Нәтиже
Барлық қарсы тараптар тізімінен тек келісім сомасы 1000-нан көп болатындары көрсетіледі:
LLC Sunrise, 1500
LLC Sunset, 1700
LLC Dawn, 2500
FOREACH ішіндегі ELSE блогы
%%$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$%%
Нәтиже:
LLC Sunrise, 5689845987654, 1500 $
LLC Sunset, 5689845125699, 1700 $
LLC Dawn, 5689845589674, 2500 $
LLC Light, 5689845235689, 500 $
TABLE
Егер айнымалы мәндер тізімін көрсетсе және әр мән бойынша ақпаратты кесте түрінде көрсету қажет болса, келесі синтаксисті пайдаланыңыз:
TEXT
%%$ENDBLOCK$%%
Мысал
Мысал тасымалдаушыда қосылған деректер тегінің тек қажетті блоктарын шығарып, осы ақпаратты клиентке кесте түрінде жіберуді көрсетеді. Кесте Planfix редакторы арқылы қосылады:
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")%%%
Нәтиже:
Order №2118
| Graphic design | 1 600.00 |
| Programming | 3 000.00 |
| Development of TA | 300.00 |
Total order amount: 4 900.00 dollars
Тақырыпша және жалпы сомамен мысал
Кестеге тақырыпша немесе жалпы сомалар жолын қосу үшін синтаксиске келесі параметрлерді қолданыңыз:
Table drawn using the Planfix editor
%%$ENDBLOCK$%%
Мысал:
%%$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$%%
Нәтиже:
| # | 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 | |
Қызылмен бөлінген сандар тақырыпша мен жалпы сомаларда қанша қатар пайдаланылатынын көрсетеді.
Мысалы, жоғарыдағы (1;1) сандары кестенің басында бір жол тақырыпшаға пайдаланылатынын және соңында бір жол жалпы сомаларға пайдаланылатынын білдіреді.
Екі қатарды тақырыпшада пайдалану үшін былай көрсетіңіз — (2;1).
Мысал:
%%$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$%%
Нәтиже:
| 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 | |
Шартпен мысал
%%$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$%%
Нәтиже:
| Counterparty | TIN | Contract amount |
|---|---|---|
| LLC Sunrise | 5689845987654 | 1500$ |
| LLC Sunset | 5689845125699 | 1700$ |
| LLC Dawn | 5689845589674 | 2500$ |
| LLC Light | 5689845235689 | 500$ |
Кестеге тақырыпша қосу үшін кестені оң жақ батырмамен басып, Row - Insert Row Above таңдаңыз:
FOREACH and TABLE with infoblocks
Электрондық хатты талдағанда немесе HTTP сұрауына жауап бергенде бірнеше жол дерек аласыз және оларды құрылымдалған мәтін немесе кесте түрінде қосқыңыз келеді:
- Деректерді инфоблоктарға шығарыңыз:
- from JSON
- from HTML table
- Содан кейін келесі синтаксисті пайдаланыңыз:
%%$FOREACH({{Infoblock.!row}};Separator)$%%
{{Infoblock.!row.Infoblock name}}
%%$ENDBLOCK$%%
%%$TABLE({{Infoblock.!row}})$%%
{{Infoblock.!row.Infoblock name}}
%%$ENDBLOCK$%%
Мысал
"Product" және "Price" инфоблоктарына деректерді шығарып, оларды кестеге қосайық:
%%$TABLE({{Infoblock.!row}})$%%
| {{Infoblock.!string.Product}} | {{Infoblock.!string.Price}} |
%%$ENDBLOCK$%%
Нәтиже:
| Pencil | 1,00 |
| Pen | 2,00 |
| Notebook | 10,00 |