Показать сообщение отдельно
Старый 20.03.2002, 15:27   #5  
Oo is offline
Oo
Участник
 
10 / 11 (1) +
Регистрация: 21.12.2001
Переход к основной таблице
чтобы создать на форме новое поле с возможностью выбора данных из другой таблицы и возможностью перехода к основной таблице.

Пусть для примера необходимо добавить в форму номенклатурных единиц поле для выбора категории номенклатуры (список категорий будем заполнять отдельно в форме).

1. Создать новую таблицу и поля в ней. В таблице нужно иметь как минимум два поля: код записи (поле String), и ее название (тоже String). Назовем их для примера CategoryCode и CategoryName. Для CategoryName указать свойство ExtendedDataType = Name.
2. Создать новый EDT (Extended Data Type), например, ItemCategory. Создать для него Relation, в свойствах которого указать Table = созданная таблица, RelatedField = поле в таблице, отвечающее за код
записи (в нашем примере CategoryCode).
3. Создать форму, для нее создать Data Source, указав для него свойство Table = созданная таблица. В дизайне формы создать Grid, на ней два поля StringEdit. У одного поля указать свойство DataSourse = Category, DataField = CategoryCode, для другого то же самое, но DataField = CategoryName.
4. В таблице InventTable создать новое поле String, указав для него свойство ExtendedDataType = созданный расширенный тип данных (у нас ItemCategory).
5. В форме InventTable создать StringEdit, задать свойства DataSource = InventTable, DataField = созданное в InventTable поле.
5. Чтобы иметь возможность перейти из поля к основной таблице, необходимо сделать следующее:
- Создать MenuItem с типом Display и ссылкой на ту форму, которую необходимо вызывать;
- Указать созданный MenuItem в свойстве FormRef для таблицы-источника вызываемой формы.

Каждый из элементов сразу после создания нужно сохранить. Если возникнет необходимость в правке ранее созданных Вами объектов, все объекты, созданные после этого нужно будет перекомпилировать.

Этого достаточно, чтобы при переходе к основной таблице из созданного поля открывалась исходная форма с одной записью - в соответствии с введенным в поле значением.
За это сообщение автора поблагодарили: Poleax (1).