Имя: Пароль:
1C
 
Как правильно создать подчиненный справочник?
0 kursant-tolan
 
01.05.07
18:47
Добавляю новые справочники в конфигурацию 1С 8.0. Создаю справочник Владелец и Подчиненный справочник. В форме Владельца создал поле и связал его с подчиненным.
ПРОБЛЕМА.
При открытии подчиненного справочника владелец не подставляется? Как сделать как, чтобы при создании элемента в подчиненном справочнике определялся его владелец?
1 ТелепатБот
 
гуру
01.05.07
18:47
2 Defender aka LINN
 
01.05.07
19:16
(0) Владелец записан?
3 kursant-tolan
 
01.05.07
19:35
Владелец не записан. Это новый объект.
4 kursant-tolan
 
01.05.07
19:52
(1) Способ, описанный в книге зниний хорош, но на практике не реализуется даже в транзакции.
5 Defender aka LINN
 
01.05.07
19:54
(3) И что мы после этого хотим?
6 kursant-tolan
 
01.05.07
19:57
Нужен результат.
7 Neco
 
01.05.07
19:59
(4) Реализуется даже вне транзакции
8 Рэйв
 
01.05.07
20:02
(3)Как ты собираешься сделать владельцем объект, которого еще нет в базе?
9 Рэйв
 
01.05.07
20:03
+(8)Или будешь давать ссылку на адрес в озушке?:))
10 kursant-tolan
 
01.05.07
20:04
Результат получен следующим образом. Если у кого есть лучший пример, пожалуйста, сообщите.
Процедура АктПриемочнойКомиссииНачалоВыбора(Элемент, СтандартнаяОбработка)
   СтандартнаяОбработка=Ложь;
   ЭтотОбъект.Записать();
   Форма=Справочники.АктПриемочночнойКомиссии.ПолучитьФормуВыбора(,Элемент,Элемент);
   Форма.СправочникСписок.Отбор.Владелец.Установить(ЭтотОбъект.Ссылка);
   Форма.РежимВыбора = Истина;
   Форма.ОткрытьМодально();
КонецПроцедуры
11 Neco
 
01.05.07
20:05
Можно создать ссылку на новый и без записи объекта
12 kursant-tolan
 
01.05.07
20:07
(11).  Есть ли пример кода?
13 Neco
 
01.05.07
20:15

Процедура АктПриемочнойКомиссииНачалоВыбора(Элемент, СтандартнаяОбработка)
   СтандартнаяОбработка=Ложь;
   //ЭтотОбъект.Записать();
   УстановитьСсылкуНового(Справочники[Метаданные().Имя].ПолучитьСсылку(Новый УникальныйИдентификатор));
Форма=Справочники.АктПриемочночнойКомиссии.ПолучитьФормуВыбора(,Элемент,Элемент);
   Форма.СправочникСписок.Отбор.Владелец.Установить(ПолучитьСсылкуНового());
   Форма.РежимВыбора = Истина;
   Форма.ОткрытьМодально();
КонецПроцедуры
14 kursant-tolan
 
01.05.07
20:29
(13). Neco, потрясающе! Работает!
Большое тебе спасибо.
15 Neco
 
01.05.07
20:46
(14) Да не забудь про то что написано в последнем абзаце статьи в книге знаний из (1)
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший