|
Не получается изменить ТЧ справочника: Поле объекта недоступно для записи |
☑ |
0
BoBaH
07.10.11
✎
08:57
|
Только по голове не бейте!
Добрый день!
Платформа 8.2.14.537, конфигурация УПП 1.3.16.1.
Во внешней обработке пытаюсь изменить табличную часть Маршрут справочника ТехнологическиеКартыПроизводства (поле ТехнологическаяОперация):
ТехКарта: СправочникСсылка.ТехнологическиеКартыПроизводства.
НоваяТО: СправочникОбъект.ТехнологическиеОперации
[code]
1 Для Каждого ТочкаМаршрута Из ТехКарта.Маршрут Цикл
2 НоваяТО = СоздатьКопиюПоЭлементу(ТочкаМаршрута.ТехнологическаяОперация);
3 ТочкаМаршрута["ТехнологическаяОперация"] = НоваяТО.Ссылка;
4 КонецЦикла;
5 ТехКарта.Записать();
[/code]
В строке 3 ошибка: Поле объекта недоступно для записи. Пробовал и без квадратных скобок ТочкаМаршрута.ТехнологическаяОперация,не помогло :(
|
|
1
Rie
07.10.11
✎
08:59
|
(0) А ТочкаМаршрута - это кто?
Сильно подозреваю, что это - ссылка.
|
|
2
Rie
07.10.11
✎
09:00
|
+(1) Вернее, уже не подозреваю, а уверен - в (0) об этом явно сказано, то ТехКарта - это СправочникСсылка.
Получи объект и его меняй.
|
|
3
unregistered
07.10.11
✎
09:00
|
ТекКарта - ссылка.
Ты сам об этом пишешь: "ТехКарта: СправочникСсылка.ТехнологическиеКартыПроизводства"
Для записи доступны только объекты, а не ссылки.
|
|
4
BoBaH
07.10.11
✎
09:00
|
СправочникТабличнаяЧастьСтрока.ТехнологическиеКартыПроизводства.Маршрут
|
|
5
BoBaH
07.10.11
✎
09:01
|
ТочкаМаршрута.ПолучитьОбъект(): метод объекта не обнаружен
|
|
6
Rie
07.10.11
✎
09:02
|
(4) И что?
Маршрут = ТехКарта.Маршрут.ПолучитьОбъект();
Для каждого ТочкаМаршрута Из Маршрут Цикл
// и тут меняй кого хочешь
|
|
7
Rie
07.10.11
✎
09:03
|
(5) Разумеется. У строки ТЧ нет метода ПолучитьОбъект.
См. (6).
|
|
8
BoBaH
07.10.11
✎
09:05
|
(6) ТехКарта.Маршрут.ПолучитьОбъект(): метод объекта не обнаружен
А вот ТехКарта.ПолучитьОбъект().Маршрут работает, пробую...
|
|
9
BoBaH
07.10.11
✎
09:11
|
ТК = ТехКарта.ПолучитьОбъект();
ВесьМаршрут = ТК.Маршрут;
Для Каждого ТочкаМаршрута Из ВесьМаршрут Цикл
НоваяТО = СоздатьКопиюПоЭлементу(ТочкаМаршрута.ТехнологическаяОперация);
ТочкаМаршрута["ТехнологическаяОперация"] = НоваяТО.Ссылка;
КонецЦикла;
ТК.Записать();
Заработало, спасибо!
|
|