Telegram Group & Telegram Channel
♒️ Роллап роллапа роллапа роллапа
или Путь до карточки по иерархии Parent items,
продолжение поста выше
#формулы

💘Итак, давайте создадим базу данных в виде таблицы и включим Sub-items.

💘Переименуем проперти с родительской карточкой Parent item в Уровень вверх,
💘а проперти с под-карточкой Sub-item в Уровень вниз.

Допустим в нашей базе есть 4 уровня вложенности.

📌 Моя задача написать для карточки 4 уровня такую формулу, чтобы отображалась иерархия всех родительских карточек от 4 карточки, то есть 1 2 3 4.

Для других карточек по тому же принципу будут отображаться соответствующие карточки:
💘для 3-его уровня: 1 2 3
💘для 2-ого уровня: 1 2
💘для 1-ого уровня: 1

⚡️Приступаем к написанию формулы!

Начнем с конца.
Выводим название текущего уровня, просто выбрав проперти с названием карточки в проперти Уровень
Добавим желтый фон для выделения текущего уровня от вышестоящих через .style("yellow_background")
⬇️
prop("Уровень").style("yellow_background")

Теперь достаем уровень выше у текущего уровня.
Наш текущий уровень - это 4, значит нам нужно выводить 3,
а карточка 3 содержится у 4-ого уровня в проперти Уровень вверх.
Так что просто выводим это проперти к названию текущего уровня через плюс:
⬇️
prop("Уровень вверх") + prop("Уровень").style("yellow_background")

Начинается интересное.
Нам нужно получить 2-ой уровень, а он запрятан в проперти Уровень выше для Уровня выше нашего текущего уровня
(💘4: уровень выше - 3,💘3: уровень выше - 2),
то есть через рилейшен к 3 нам нужно забрать его значение в проперти Уровень выше, то есть двойку.
Ну да, это обычный роллап!

Вспомним, как выводить роллап формулой:
Рилейшен.map(current.Проперти_рилейшена)

Приземляем на наш кейс:
⬇️
prop("Уровень вверх").map(current.prop("Уровень вверх"))

Прибавляем через плюс к остальному:
⬇️
prop("Уровень вверх").map(current.prop("Уровень вверх"))
+ prop("Уровень вверх")
+ prop("Уровень").style("yellow_background")


А теперь делаем то, что раньше казалось невозможным, смотрим в проперти Уровень вверх у двойки, чтобы отображать единицу.

💘Наш текущий уровень - 4.
💘Берем его рилейшен уровня вверх, то есть рилейшен тройки.
💘Через .map(current) получаем роллап уровня вверх для тройки, то есть двойку.

💘А теперь через тот же самый .map(current) берем роллап уровня выше для двойки, то есть единицу:

⬇️
prop("Уровень вверх") 3
.map(current.prop("Уровень вверх")
2
.map(current.prop("Уровень вверх")
1
))


И вот этих .map(current.prop("Уровень вверх") пишем столько, сколько уровней вложенности есть у нас в базе данных.
Не забываем, что на каждое map в конце формулы нужно написать закрывающую скобочку.

Так для 10 уровня получение карточки первого уровня будет написано вот так:

prop("Уровень вверх") 9
.map(current.prop("Уровень вверх") 8
.map(current.prop("Уровень вверх") 7
.map(current.prop("Уровень вверх") 6
.map(current.prop("Уровень вверх") 5
.map(current.prop("Уровень вверх") 4
.map(current.prop("Уровень вверх") 3
.map(current.prop("Уровень вверх") 2
.map(current.prop("Уровень вверх") 1
))))))))

Получаем роллап роллапа роллапа роллапа...


Итоговая формула для карточек с 4 уровнями вложенности:

prop("Уровень вверх").map(current.prop("Уровень вверх").map(current.prop("Уровень вверх")))
+ prop("Уровень вверх").map(current.prop("Уровень вверх"))
+ prop("Уровень вверх")
+ prop("Уровень").style("yellow_background")


💜 Вот такие интересные штуки способны проворачивать новые формулы!

💜 Поддержать канал
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/notion_ogonek/326
Create:
Last Update:

♒️ Роллап роллапа роллапа роллапа
или Путь до карточки по иерархии Parent items,
продолжение поста выше
#формулы

💘Итак, давайте создадим базу данных в виде таблицы и включим Sub-items.

💘Переименуем проперти с родительской карточкой Parent item в Уровень вверх,
💘а проперти с под-карточкой Sub-item в Уровень вниз.

Допустим в нашей базе есть 4 уровня вложенности.

📌 Моя задача написать для карточки 4 уровня такую формулу, чтобы отображалась иерархия всех родительских карточек от 4 карточки, то есть 1 2 3 4.

Для других карточек по тому же принципу будут отображаться соответствующие карточки:
💘для 3-его уровня: 1 2 3
💘для 2-ого уровня: 1 2
💘для 1-ого уровня: 1

⚡️Приступаем к написанию формулы!

Начнем с конца.
Выводим название текущего уровня, просто выбрав проперти с названием карточки в проперти Уровень
Добавим желтый фон для выделения текущего уровня от вышестоящих через .style("yellow_background")
⬇️
prop("Уровень").style("yellow_background")

Теперь достаем уровень выше у текущего уровня.
Наш текущий уровень - это 4, значит нам нужно выводить 3,
а карточка 3 содержится у 4-ого уровня в проперти Уровень вверх.
Так что просто выводим это проперти к названию текущего уровня через плюс:
⬇️
prop("Уровень вверх") + prop("Уровень").style("yellow_background")

Начинается интересное.
Нам нужно получить 2-ой уровень, а он запрятан в проперти Уровень выше для Уровня выше нашего текущего уровня
(💘4: уровень выше - 3,💘3: уровень выше - 2),
то есть через рилейшен к 3 нам нужно забрать его значение в проперти Уровень выше, то есть двойку.
Ну да, это обычный роллап!

Вспомним, как выводить роллап формулой:
Рилейшен.map(current.Проперти_рилейшена)

Приземляем на наш кейс:
⬇️
prop("Уровень вверх").map(current.prop("Уровень вверх"))

Прибавляем через плюс к остальному:
⬇️
prop("Уровень вверх").map(current.prop("Уровень вверх"))
+ prop("Уровень вверх")
+ prop("Уровень").style("yellow_background")


А теперь делаем то, что раньше казалось невозможным, смотрим в проперти Уровень вверх у двойки, чтобы отображать единицу.

💘Наш текущий уровень - 4.
💘Берем его рилейшен уровня вверх, то есть рилейшен тройки.
💘Через .map(current) получаем роллап уровня вверх для тройки, то есть двойку.

💘А теперь через тот же самый .map(current) берем роллап уровня выше для двойки, то есть единицу:

⬇️
prop("Уровень вверх") 3
.map(current.prop("Уровень вверх")
2
.map(current.prop("Уровень вверх")
1
))


И вот этих .map(current.prop("Уровень вверх") пишем столько, сколько уровней вложенности есть у нас в базе данных.
Не забываем, что на каждое map в конце формулы нужно написать закрывающую скобочку.

Так для 10 уровня получение карточки первого уровня будет написано вот так:

prop("Уровень вверх") 9
.map(current.prop("Уровень вверх") 8
.map(current.prop("Уровень вверх") 7
.map(current.prop("Уровень вверх") 6
.map(current.prop("Уровень вверх") 5
.map(current.prop("Уровень вверх") 4
.map(current.prop("Уровень вверх") 3
.map(current.prop("Уровень вверх") 2
.map(current.prop("Уровень вверх") 1
))))))))

Получаем роллап роллапа роллапа роллапа...


Итоговая формула для карточек с 4 уровнями вложенности:

prop("Уровень вверх").map(current.prop("Уровень вверх").map(current.prop("Уровень вверх")))
+ prop("Уровень вверх").map(current.prop("Уровень вверх"))
+ prop("Уровень вверх")
+ prop("Уровень").style("yellow_background")


💜 Вот такие интересные штуки способны проворачивать новые формулы!

💜 Поддержать канал

BY Огонек | Notion Buildin | Планеры


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/notion_ogonek/326

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

NEWS: Telegram supports Facetime video calls NOW!

Secure video calling is in high demand. As an alternative to Zoom, many people are using end-to-end encrypted apps such as WhatsApp, FaceTime or Signal to speak to friends and family face-to-face since coronavirus lockdowns started to take place across the world. There’s another option—secure communications app Telegram just added video calling to its feature set, available on both iOS and Android. The new feature is also super secure—like Signal and WhatsApp and unlike Zoom (yet), video calls will be end-to-end encrypted.

The messaging service and social-media platform owes creditors roughly $700 million by the end of April, according to people briefed on the company’s plans and loan documents viewed by The Wall Street Journal. At the same time, Telegram Group Inc. must cover rising equipment and bandwidth expenses because of its rapid growth, despite going years without attempting to generate revenue.

telegram from kr


Telegram Огонек | Notion Buildin | Планеры
FROM USA