Create


Членство

FORM_LINK

Синтаксис

CONSTRUCTOR Create(Name: STRING[];
                   CooIndex: INDEX;
                   { FieldN: FORM_FIELD; }
                  ): FORM_LINK;

Описание

Конструктор создает справочную связь зоны и задает основные свойства связи: имя (параметром Name), индекс справочной таблицы (параметром CooIndex), перечень полей, входящих в справочную связь. Имя связи должно быть идентификатором (в частности для метода FORM_ZONE.LinkedFieldValue), иначе будет выброшено исключение 178. Индекс CooIndex должен быть явно уникальным, в противном случае будет выброшено исключение 847. Все поля связи должны относиться к одной зоне, иначе будет выброшено исключение 845. Количество полей зоны в связи должно совпадать с количеством полей индекса, иначе будет выброшено исключение 849. Очевидно, что i-му полю зоны ставится в соответствие i-е поле индекса справочной таблицы БД. Для адекватной работы связи в зоне поля зоны должны быть конвертируемы в соответствующие поля справочной таблицы по обычным правилам языка за одним исключением: типы STRING и SCAL считаются несовместимыми. Однако конструктор не проверяет конвертируемость полей связи.

Впоследствии созданная конструктором связь может быть добавлена в коллекцию справочных связей зоны FORM_ZONE.Links, без чего существование связи не имеет смысла.