Собственно сабж. Есть регистр сведений Бригады с измерением ТранспортныеСредства. Регистр подчинён документу ОформлениеБригады и заполняется на его основе. Я хочу сделать так, чтобы при укомплектовании машины новой бригадой 1С не ругалась на уже существующую запись, а затирала старую и записывала новую. Для этого в модуле документа ОформлениеБригады я модифицировал событие ОбработкаПроведения. Получилось следующее:
Процедура ОбработкаПроведения(Отказ, Режим)
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
// регистр Бригады
Движения.Бригады.Записывать = Истина;
Движение = Движения.Бригады.Добавить();
Если ПолучитьТСНаСервере(ТранспортноеСредство) = ТранспортноеСредство Тогда
УдалитьЗаписьПоТС(ТранспортноеСредство);
КонецЕсли;
Движение.ТранспортноеСредство = ТранспортноеСредство;
Движение.Грузчик1 = Грузчик1;
Движение.Грузчик2 = Грузчик2;
Движение.Водитель = Водитель;
&НаСервере
Функция ПолучитьТСНаСервере(ТС)
НаборЗаписей = РегистрыСведений.Бригады.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.ТранспортноеСредство.Установить(ТС);
Выборка=НаборЗаписей.Выбрать();
Если Не Выборка.Следующий() Тогда
Сообщить("Выборка пуста!");
Иначе
Выборка.Следующий();
КонецЕсли;
КонецФункции
ПолучитьТСНаСервере(ТС) - проверочная функция, она пока ничего не возвращает. Но на линии
НаборЗаписей.Отбор.ТранспортноеСредство.Установить(ТС);
система выдаёт ошибку
Поле объекта не обнаружено (ТранспортноеСредство).
Пробовал включать свойство Ведущее в свойствах измерения ТранспортноеСредство, пробовал устанавливать отбор по регистратору - ничего не помогает. Где я прокололся? Как это можно исправить?
Заранее спасибо!
hhhh
1 - 19.09.18 - 05:07
(0) если регистр подчинен регистратору, то отбор только по регистратору. по измерениям отбор невозможен. поэтому выбросьте, что вы там навояли про
НаборЗаписей.Отбор.ТранспортноеСредство.Установить(ТС);
и напишите по-новой
Bahamut
2 - 19.09.18 - 05:11
hhhh я так тоже пробовал, итог всё тот же - "Поле объекта не обнаружено (ОформлениеБригады)"
hhhh
3 - 19.09.18 - 05:14
(2) ну это совсем другой итог, не тот же, совершенно другая ошибка
Bahamut
4 - 19.09.18 - 05:23
(3) С чем она может быть связана? Я проверил данные регистра сведений - регистратор везде проставлен...
hhhh
5 - 19.09.18 - 05:31
(4) причем тут регистратор, вы не вчитались в ошибку, у вас ошибка не найдено поле ОформлениеБригады , и там в ошибке приведено имя модуля и номер строки, надо смотреть эту строку, почему не определено поле
catena
6 - 19.09.18 - 05:53
(2)Наверное потому, что отбор устанавливается по названию ключа (Регистратор), а не по типу документа (ОформлениеБригады)
Bahamut
7 - 19.09.18 - 06:12
(5) (6) Спасибо, уже разобрался. Судя по всему, НаборЗаписей тут бесполезен, сделаю через запрос.