Имя: Пароль:
1C
1С v8
УТ 11 как разблокировать редактирование номенклатуры программно?
0 AugustBlack
 
22.11.11
07:49
помогите нада пройтись по определенной номенклатуре и проставить тиип товара и ставку НДС. Не дает:
{Форма.Форма.Форма(219)}: Поле объекта недоступно для записи (ВидНоменклатуры)
       НоваяНомеклатура.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
вручную это делается через форму на которой есть реквизиты:
РазрешитьРедактированиеСтавкаНДС       = Истина;
РазрешитьРедактированиеЦеноваяГруппа   = Истина;
при отметке на этой форме они включают режим редактирования для основной формы. не понимаю как это связано....пишу код:
&НаКлиенте
Процедура Фикс(Команда)
 ФиксСервер();    
КонецПроцедуры  

&НаСервере
Процедура ФиксСервер()    
Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    Номенклатура.Ссылка
   |ИЗ
   |    Справочник.Номенклатура КАК Номенклатура
   |ГДЕ
   |    Номенклатура.Родитель = &Каталог";    
   Запрос.УстановитьПараметр("Каталог", Каталог);    
   Результат = Запрос.Выполнить();    
   ВыборкаДетальныеЗаписи = Результат.Выбрать();    
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл    
       РазрешитьРедактированиеСтавкаНДС       = Истина;
       РазрешитьРедактированиеЦеноваяГруппа   = Истина;
       НоваяНомеклатура = ВыборкаДетальныеЗаписи.Ссылка;
       НоваяНомеклатура.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар");
       НоваяНомеклатура.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС18");
       НоваяНомеклатура.Родитель = Каталог;
       Попытка
           НоваяНомеклатура.Записать();
           Сообщить("Изменение элемента номенклатуры: " + НоваяНомеклатура);
       Исключение
           Сообщить(" " + ОписаниеОшибки());
       КонецПопытки;    
   КонецЦикла;
КонецПроцедуры

помогите, есть идеи или кто делал подобное..
1 Wobland
 
22.11.11
07:51
объект получи из ссылки и меняй себе на здоровье
2 AugustBlack
 
22.11.11
07:56
(1) Огромное Спасибо