Перейти к основному содержимому
Версия: 3.4

Создание и использование общих вычисляемых полей в Mobile SMARTS

Общие вычисляемые поля — это вычислимые поля, которые появляются сразу у всех объектов (типов данных), и значения которых задаются шаблонами.

У каждого типа данных в Mobile SMARTS есть собственный набор полей. Но кроме собственных полей в платформе есть возможность добавить вычисляемое поле сразу для всех типов данных.

Примечание: это именно вычисляемые поля, т.е. они не хранятся в объекте, в них ничего нельзя записать, можно только рассчитать значение.

Такие общие вычисляемые поля доступны для использования в любом месте конфигурации, у любого объекта: его значение можно будет получить у документа, у строки документа, у товара и т.п.

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

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

Создание общего вычисляемого поля​

Создание общего вычисляемого поля практически ничем не отличается от создания дополнительного поля строки или шапки документа, щелчок правой кнопкой мыши вызывает меню добавления поля:

интеграция

Свойства добавленного поля:

интеграция

Общее

СвойствоЗначениеОписание
Имя поляСтрокаИмя, по которому происходит обращение к данному полю.
КомментарийСтрокаКомментарий, отображается в панели управления.
СинонимСтрокаАльтернативное имя, по которому также можно обратиться к данному полю.
Тип поляString | Boolean | DateTime | Int32 | Double | Decimal | ObjectТип данных, которые будут храниться в поле.
Шаблон значенияШаблонШаблон значения для вычислимой колонки. Значение такой колонки для объекта не проставляется пользователем и не выгружается извне. При каждом запросе она вычисляется согласно шаблону.

Пример использования​

Рассмотрим работу с общими вычисляемыми полями на небольшом примере. Пример реализует общее вычислимое поле для использования его в списках вывода.

Добавленное общее вычислимое поле назовём его ИнформацияОТоваре. В шаблон значения этого поля занесём следующий шаблон:

<r color="Green">{Item.Product.Marking}</r> {Item.Product.Name} <r color="DarkBlue">{Item.Packing.Характеристика}</r>

Данный шаблон будет выводить на экран мобильного устройства общую информацию о товаре — артикул (зелёным цветом), имя товара и характеристику (синим цветом).

Обратите внимание, что в шаблоне используется Item. При вызове этого поля каким-либо объектом, вместо Item будет подставлено имя вызывающего объекта и выводиться будут именно его поля.

Теперь общее вычислимое поле можно использовать для вывода.

К примеру, использовать в колонке действия Просмотр записей:

интеграция

Или в верхней части окна действия Выбор номенклатуры:

интеграция

В первом случае вызывать поле будет строка списка, во втором — объект SelectedProduct.

Результат:

интеграция интеграция

Как видим, неважно, какой объект вызывает общее вычисляемое поле, всё работает корректно. Если у вызывающего объекта заполнены не все поля, использующиеся в шаблоне общего вычисляемого поля, то выводятся только заполненные поля.