Массовая установка вида номенклатуры 1С Розница 2.2
Данная обработка может пригодится тем, кому необходимо в справочнике номенклатуры массово поменять реквизит «Вид номенклатуры». Мне например это понадобилось, чтобы в разделе «Дополнительно», для каждого вида номенклатуры были заданы свои характеристики.
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
&НаКлиенте Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) ОбработкаВыбораПодборНаСервере(ВыбранноеЗначение); КонецПроцедуры &НаКлиенте Процедура ПодборНоменклатуры(Команда) ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("РежимПодбораБезСуммовыхПараметров", Истина); ПараметрыФормы.Вставить("Дата", ТекущаяДата()); ОткрытьФорму("Обработка.ПодборТоваров.Форма", ПараметрыФормы, ЭтаФорма, УникальныйИдентификатор); КонецПроцедуры &НаСервере Функция ОбработкаВыбораПодборНаСервере(ВыбранноеЗначение) ТаблицаТоваров = ПолучитьИзВременногоХранилища(ВыбранноеЗначение.АдресТоваровВХранилище); для каждого стр из ТаблицаТоваров цикл сс=объект.СписокНоменклатуры.Добавить(); сс.номенклатура=стр.номенклатура; конеццикла; КонецФункции &НаСервере Процедура изменитьвид(ном,вид) об=ном.ПолучитьОбъект(); об.ВидНоменклатуры=вид; об.Записать(); КонецПроцедуры &НаКлиенте Процедура ИзменитьВидНоменклатуры(Команда) если объект.ВидНоменклатуры=объект.ВидНоменклатуры.Пустая() тогда сообщить("Не выбран вид номенклатуры!"); иначе для каждого стр из объект.СписокНоменклатуры цикл изменитьвид(стр.номенклатура,объект.ВидНоменклатуры); конеццикла; сообщить("Готово!"); конецесли; КонецПроцедуры |