Копировать ссылку на страницу

Как правило, при разработке и адаптации систем на IS-Builder возникает необходимость изменять структуру таблиц данных. Например, добавить новые поля в справочники. IS-Builder имеет встроенные средства для изменения структуры таблиц данных.

Все реквизиты, которые можно использовать для описания структуры справочников и карточек документов, должны быть описаны в компоненте Реквизиты справочников и Реквизиты документов. После того, как реквизит описан, его необходимо сгенерировать при условии, что свойство «Сохранять» реквизита имеет значение «Да». В результате этого действия в соответствующие таблицы будут добавлены одно или несколько новых полей.

При генерации реквизитов большинства типов состав изменяемых таблиц зависит от раздела реквизита:

•Карточка – MBAnalit, replMBAnalit, SBEDoc, replSBEDoc;
•Таблица(2..N) – MBAnValR(2..12), replMBAnValR, SBEDocValR(3..6), replSBEDocValR(3..6).

Исключением является генерация реквизитов типа «Текст» – независимо от раздела, к которому относится реквизит:

•при генерации реквизитов справочников изменяется структура таблиц MBText и replMBText;
•при генерации реквизитов документов изменяется структура таблиц SBEDoc, replSBEDoc, SBEDocValR(3..6), replSBEDocValR(3..6).

Количество и типы добавляемых полей при генерации реквизитов зависят от типов реквизитов:

•«Целое число» – добавляется одно поле типа int;
•«Дробное число» – добавляется одно поле типа float;
•«Строка» – добавляется одно поле типа varchar, причем размер поля равен значению свойства «Длина» реквизита;
•«Дата» – добавляется одно поле типа datetime;
•«Признак» – добавляется одно поле типа char(1);
•«Справочник» – добавляется одно поле типа int;
•«Текст» – добавляются три поля:
•типа image, имя поля совпадает со значением свойства «Имя поля» реквизита. Содержит собственно данные;
•типа varchar(10), имя поля формируется по принципу Type<ИмяПоляТипаТекст>. Предназначено для хранения типа данных, которые будут храниться в поле с данными. Необходимо для организации полнотекстового поиска средствами SQL-сервера;
•типа datetime, имя поля формируется по принципу <ИмяПоляТипаТекст>LastUpd. Предназначено для хранения даты-времени последнего изменения значения поля с данными. Необходимо для организации полнотекстового поиска средствами SQL-сервера.

После того как реквизит сгенерирован, изменение некоторых его свойств невозможно: код реквизита, имя поля, раздел, сохранять, тип. В зависимости от типа реквизита также накладываются дополнительные ограничения:

•для реквизитов типа «Строка» невозможно менять размер строки и параметры форматирования;
•для реквизитов типа «Справочник» нельзя менять свойство «Тип справочника»;
•для реквизитов типа «Признак» можно только добавлять новые значения признака, но нельзя удалять уже существующие.

См. также

 

© 2016 Компания DIRECTUM Сообщество пользователей DIRECTUM