Урок 9 - Функции "Текущий пользователь", "Текущая дата" и "Значение родителя"

Есть несколько функций, которые при вычислениях используются редко, но зато не заменимы при установке значений по умолчанию, при добавлении новой карточки.

Функция "Текущий пользователь"

Когда вы авторизируетесь в нашу программу - вы и являетесь текущим пользователем. Текущего пользователя удобно указывать автоматически при создании некоторых новых карточек. Например, при добавлении новой компании. Логичнее всего, что куратором новой компании будет текущий пользователь. Добавьте поле-ссылку Куратор (внешний объект - Пользователь) в объект Компания.

Добавление поля Куратор

Можете сразу установить формулу.

Добавление функции "Текущий пользователь" 

Добавлена функция "Текущий пользователь" Добавлена формула "Текущий пользователь"

Добавьте его и на карточку.

Поле "Текущий пользователь" добавлено на карточку компании

Проверьте как работает функция - добавьте новую компанию.

Добавление новой компании

Поле Куратор заполнилось автоматически при добавлении компании.

Функция "Текущая дата"

Нам скорее всего понадобиться отмечать, когда именно была добавлена компания в базу. Для этого нам нужно добавить в объект Компания поле типа Дата.

Добавьте поле в объект и укажите для него нужную формулу.

Добавление поля типа "Дата"

Добавьте поле на карточку и проверьте работу формулы.

Добавление компании и заполнение поля Дата

Поле Дата автоматически заполнилось текущей датой при добавлении новой компании.

Функция "Значение родителя"

Эта функция устанавливает значения в полях-ссылках взятые у текущего родительского объекта. Поясним на примере этой структуры объектов.

Схема объектов

У одной компании могут быть несколько контактных лиц и несколько сделок. История - является дочерним объектом у всех трех объектов. Когда идет какая-то сделка, логичнее всего все контакты (звонки, встречи) которые в рамках этой сделки происходят фиксировать именно на карточке сделки. Когда сделки нет и общение идет с контактным лицом - то добавлять историю на карточку контактного лица. В остальных случаях историю можно "вешать" на компанию. Было бы очень удобно, если бы на компании можно было видеть всю историю, в том числе и ту, что на сделках и и ту, что на контактных лицах этой компании. Для этого нужно, чтобы у объекта История поле Компания было всегда заполнено нужным значением. Давайте посмотрим в чем тут проблема.

При добавлении истории на карточку компании поле Компания у объекта История заполняется автоматически, т.к. Компания в данном случае является родительским объектом.

При добавлении истории на карточку контактного лица автоматически заполняется поле Контактное лицо. Теперь оно является родительским объектом. Но кто заполнит поле Компания у истории? Можно конечно явно указать в формуле что поле Компания в истории = Контактое лицо>Компания. При добавлении истории в контактное лицо это спасет, но при добавлении истории в сделку - нет, т.к. сделка - это другой объект.

В этом случает поможет функция "Значение родителя". Не зависимо от того, кто родитель, функция будет искать нужное значение в родительском объекте. Нам нужно в объекте История для поля Компания указать формулу состоящую из одной функции - "Значение родителя". И теперь при добавлении истории в контактное лицо поле компания будет заполнено аналогичным значением у контактного лица. А при добавлении истории в сделку - значение возьмется из сделки.

На этом всем. Следующий урок.

Понравилось? Нажми свою кнопку!
  • Нравится