Vnořování funkcí
Funkce v Planfix podporují vnořování. To znamená, že kterýkoli z argumentů funkce může být nahrazen jinou funkcí, pokud typ výsledku (text, číslo, datum) odpovídá typu argumentu funkce, do které jej vkládáte.
Důležité
Všechny funkce, které jsou použity místo argumentu v jiné funkci, musí obsahovat počet argumentů a jejich pořadí, jak je uvedeno v nápovědě k přidávané funkci.
Funkce CONCATENATE
Funkce CONCATENATE obsahuje tři argumenty:
CONCATENATE("Text_1";"Separator";"Text_2")
Argumenty:
- Text_1 — text, který má být spojen. Místo tohoto argumentu můžete vložit jinou funkci vracející text.
- Separator — může být cokoliv, i mezera — ". "
- Text_2 — text, který má být spojen. Místo tohoto argumentu můžete vložit jinou funkci vracející text.
Místo argumentu Text_1 můžete vložit další funkci pracující s texty. Například přidat další funkci CONCATENATE. Je důležité specifikovat všechny argumenty této funkce podle manuálu:
CONCATENATE(CONCATENATE("Text_1";"Separator";"Text_2");"Separator";"Text_2")
Všimněte si, že funkce vložená místo argumentu nemusí být uzavřena v uvozovkách.
Argumenty pro novou funkci:
- CONCATENATE("Text_1";"Separator";"Text_2")
- Text_2
Tímto způsobem můžete vytvářet funkce s různými úrovněmi vnoření.
Funkce IF
Obsahuje tři argumenty:
IF(condition;value_yes;value_no)
Argumenty:
- Condition — logický výraz s operátory >, <, =, >=, <=, !=, jinou funkcí nebo hodnotou. Často se používá funkce AND.
- value_yes — číselná nebo textová hodnota, konečný výsledek funkce, pokud je podmínka splněna.
- value_no — číselná nebo textová hodnota, konečný výsledek funkce, pokud podmínka není splněna.
Místo podmínky můžete použít funkci AND:
AND(condition1;condition2)
Výsledná funkce IF bude vypadat takto:
IF(AND(condition1;condition2);value_yes;value_no)
Máte-li složitější úlohu, například funkce musí ověřit tři podmínky najednou, použijte vnoření funkce AND:
IF(AND(AND(condition1;condition2);condition2);value_yes;value_no)
Například:
IF(AND(AND({{System.Today.Number}}=19;{{{Task.Full days}}>15);In queue="In progress");"Finishing";"Something is missing")