Имя: Пароль:
1C
1C 7.7
v7: Запись найденного элемента справочника
0 Denshu
 
06.04.18
14:11
Добрый день, есть следующий код
-------------------------------
СпрЭтапы = СоздатьОбъект("Справочник.disa_ЭтапыПриемки");
СпрЭтапы.ВыбратьЭлементы();
Пока СпрЭтапы.ПолучитьЭлемент() = 1 Цикл
   Если СпрЭтапы.ЗаказНаряд = ТекущийДокумент() Тогда
      НайденныйЭлемент = СпрЭтапы.ТекущийЭлемент();
   КонецЕсли;
КонецЦикла;

ТекСпрЭтапы = СоздатьОбъект("Справочник.disa_ЭтапыПриемки");
ТекСпрЭтапы.НайтиЭлемент(НайденныйЭлемент);

ТекСпрЭтапы.Состояние = "0";
ТекСпрЭтапы.Записать()
-----------------------
При этом создается новый элемент справочника, а не изменяется текущий, подскажите что делаю не так
1 Масянька
 
06.04.18
14:13
(0) Извини, но как говорит Ёпрст - код в топку.
2 Ёпрст
 
гуру
06.04.18
14:17
(0) при таком коде новый элемент справочника создасться не может, какая то из черепашек врЁт
3 Масянька
 
06.04.18
14:24
(0) Для поиска в справочнике используй НайтиЭлемент() или НайтиПоРеквизиту() (если установлена сортировка).
4 Kigo_Kigo
 
06.04.18
14:43
А так?
СпрЭтапы = СоздатьОбъект("Справочник.disa_ЭтапыПриемки");
СпрЭтапы.ВыбратьЭлементы();
Пока СпрЭтапы.ПолучитьЭлемент() = 1 Цикл
   Если СпрЭтапы.ЗаказНаряд = ТекущийДокумент() Тогда
      СпрЭтапы.Состояние = "0";
      СпрЭтапы.Записать()
   КонецЕсли;
КонецЦикла;
5 Denshu
 
06.04.18
15:07
(4) Вроде норм
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.