Имя: Пароль:
1C
1C 7.7
v7: Новый элемент справочника, не получается прописать реквизит
0 gugolovski
 
01.09.17
09:52
спрНоменклатураНовый = СоздатьОбъект("Справочник.Номенклатура");
спрОКЕИ = СоздатьОбъект("Справочник.ОКЕИ");

спрНоменклатураНовый.Новый();         
спрНоменклатураНовый.Наименование = "НОВЫЙ";
спрНоменклатураНовый.УстановитьАтрибут("ПолнНаименование", "НОВЫЙ");
спрНоменклатураНовый.Штрихкод= Вводштирхкода;
спрНоменклатураНовый.Код = ПодборКода();     

спрОКЕИ.НайтиПоКоду(выбЗнач, 0);
ед = спрОКЕИ.ТекущийЭлемент();

спрНоменклатураНовый.РеквБазоваяЕдиница = ед;
спрНоменклатураНовый.Записать();

//************************
Хочу прописать реквизит "РеквБазоваяЕдиница" (Справочник.ОКЕИ)
Только не пойму в чем проблема.
Если так:
спрНоменклатураНовый.РеквБазоваяЕдиница = ед;
то ошибка "Поле агрегатного объекта не обнаружено (РеквБазоваяЕдиница)"
А если через "УстановитьАтрибут":
спрНоменклатураНовый.УстановитьАтрибут("РеквБазоваяЕдиница", ед);
то ошибка "Неверное имя атрибута".
1 HawkEye
 
01.09.17
09:55
(0) может, потому, что у номенклатуры нет реквизита "РеквБазоваяЕдиница"?
не задумывался посмотреть какие реквизиты есть у справочника?
2 HawkEye
 
01.09.17
09:57
(0) да, и у номенклатуры нет реквизитов с типом "Справочник.ОКЕИ"
3 gugolovski
 
01.09.17
09:58
реквизита действительно нет, но в форме элемента есть поле с идентификатором "РеквБазоваяЕдиница"
4 gugolovski
 
01.09.17
09:58
в форме элемента "Справочник.Номенклатура"
5 Смотрящий
 
01.09.17
09:58
(0) У тебя ТиС 9.2 какаято
РеквБазоваяЕдиница - это поле в карточке номенклатуры, это не поле справочника. Оно существует пока карточка номенклатуры открыта.

В это поле считывается значение с поля "БазоваяЕдиница" справочника номенклатуры. Его и изменяй.
6 HawkEye
 
01.09.17
10:01
(3) вот видишь, теперь и ты в курсе )))
7 gugolovski
 
01.09.17
10:09
(5) У нас в ТиС 9.2 когда создаешь новую карточку, нужно указывать тару в поле "РеквБазоваяЕдиница", а поле  "БазоваяЕдиница" заполняется само автоматически.

То что при открытии существующей карточки происходит обратное поди догадайся)).

А если столкнутся с подобными полями в будущем, как понять что откуда берется, есть подсказки?
8 HawkEye
 
01.09.17
10:10
(7) ты не поверишь, все подсказки в коде
9 Смотрящий
 
01.09.17
10:10
(7) код процедур посмотри в ПриОткрытии/ПриЗаписи в форме элемента номенклатуры - там увидишь куда чо читается и пишется
10 gugolovski
 
01.09.17
10:16
(8) Просто подобного не видел еще, чего смеяться сразу))
(9) Спасибо