В предыдущем уроке мы освоили добавление суммирующих полей. Эта возможность позволяет нам автоматически суммировать данные в дочерних объектах, например платежи клиента.
В этом уроке мы расскажем вам о разных тонкостях и нюансах системы, чтобы вы лучше понимали ее и более эффективно использовали.
Объект

Чем объект отличается от объекта-справочника (далее справочник)?
-
Объект может быть использован в качестве дочернего объекта. Справочник не может.
-
При удалении записи объекта автоматически удаляются связанные записи из дочерних объектов. Например, если удалить Клиента, то удаляться все записи о контакте с ним (история) и все его продажи. А из продажи удаляться все ее платежи.
Удалить запись из справочника, которая где-то используется - нельзя. Например, нельзя удалить продукт, который используется где-то в продажах.
Объекты - это: клиенты, продажи, платежи, счета, накладные и т.п.
Справочники - это: пользователи, продукты, страны, реклама и т.п.
Поле

Поля могут быть следующих типов:
-
Строка (для ввода текстовых данных: адрес, сайт, email...)
-
Ссылка на объект (можно использовать и объект и справочник)
-
Целое число (для ввода целых чисел)
-
Логическое (галочка - да/нет)
-
Число 15,2 (для денежных величин: 123,45 рублей)
-
Число 14,3 (для количества: 2,345 тонны)
-
Число 13,4 (для курс валюты: 34,5678)
-
Дата (день рождения, дата контакта...)
Свойства поля:
-
Подпись (текстовая метка перед полем на карточке и в названии столбца таблицы)
-
Тип (тип поля, см. выше)
-
Размер (для строковых полей - количество символов)
-
Внешний объект (при указании объекта или справочника)
-
Связь сум. поля (для добавлении суммирующих полей - связь, где находится суммируемое поле)
-
Сум. поле (суммируемое поле в дочернем объекте)
-
По умолчанию (значение поля по умолчанию при добавлении новой записи. для типа Дата возможно значение today, для справочника Пользователь - current, для строковых полей - любой текст)
-
Главное (поле, значение которого будет показано в поле на карточке при выборе значения из справочника или объекта)
В качестве поля может быть объект или справочник, но тогда нужно обязательно указать им главное поле.
Один и тот же объект или справочник может быть на карточке несколько раз.
Дочерние связи

Дочерние связи выделенного родительского объекта. Здесь перечислены все дочерние объекты и поля, по которым они связаны.
При добавлении или удалении связи объекты не добавляются и не удаляются.
Если разорвать связь между объектами, у которых есть уже связанные данные (например, клиенты и продажи), то записи дочернего объекта останутся без родителя (например, продажи останутся без компаний). Осторожнее!
Могут быть задачи:
-
когда объекту нужно добавить в дочерние связи самого себя (объект 1 -> объект 1),
-
или когда требуются циклические связи (объект 2 -> объект 1, объект 1 -> объект 2),
-
или когда один и тот же объект нужно добавить в дочернюю связь несколько раз (объект 2 -> объект 1, объект 2 -> объект 1),
Платформа позволяет это сделать. Но нужно быть с этим крайне осторожным - такие структуры сложны для понимания и для использования их обычными пользователями. Старайтесь использовать простые древовидные структуры.
Родительские связи

Родительские связи представлены исключительно для удобства понимания структуры данных. Добавлять и удалять здесь связи нельзя.
Карточка

-
Для любого объекта можно настроить одну или несколько карточек.
-
Одна из карточек должна быть карточкой по умолчанию. Она будет открываться у тех пользователей, которым не задана персональная карточка.
-
Некоторые карточки можно закрепить за конкретными пользователями.
-
Для каждой карточка для каждого поля можно задать свойство "Только чтение". Причем отдельно для новой карточки и отдельно для существующей.
-
При создании карточек можно использовать панели вкладок. На вкладках можно использовать другие панели вкладок. Экспериментируйте!
Таблица
Таблица для объекта настраивается в двух местах:
-
На вкладке Таблица.

В случае, когда нужно получить список всех записей объекта: при доступе к объекту через меню Данные

или при выборе значения из поля.

-
На вкладке Дочерние связи.

Когда объект участвует в качестве дочернего.

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

Набор деталей - это выбранные дочерние объекты, которые должны быть видны на карточке.
Здесь действует та же схема, что с таблицами и карточками. Один из наборов назначается как набор по умолчанию. Другие наборы можно закрепить за отдельными пользователями. А можно и не показывать детали вовсе.
Резюме
Этим последним уроком мы завершаем изучение первого прототипа платформы Supasoft. В этом уроке мы постарались осветить все моменты, которые были опущены в ходе изучения платформы. Теперь мы рекомендуем попробовать создать свою модель данных - это лучший способ проверить платформу в действии. После этого, можно приступать ко второму прототипу.