Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 00:51

копирование номенклатуры в одной базе 1с 8.2

Автор 99format, 03 июн 2013, 16:42

0 Пользователей и 1 гость просматривают эту тему.

99format

Добрый день. Подскажите пожалуйста.
Есть база 1с 8.2 КА, в справочнике номенклатура, необходимо скопировать папку «Производство» (и все, что в ней) допустим в папку «Услуги». Если делать вручную – то приходится копировать (по F9) каждый элемент – что очень, долго и не удобно. Вопрос - есть ли возможность – не прибегаю к написанию кода – выполнить данное действие ???  я пробовал использовать внешнюю обработку ВыгрузкаЗагрузкаДанныхXML82.epf. Выгружал конфигурацию из базы – на ее основе делал новую базу – копировал в нее через обработчик номенклатуру – перемешал данные из каталога «Производство» в каталог «Услуги» - выгружал номенклатуру и загружал в основную базу... проблема в том – что при загрузке номенклатуры – данные в папке «Услуги» появлялись – при этом – в папке «Производство» они исчезают ... Пробовал сохранение в Excel с последующим использованием «ЗагрузкаДанныхИзТабличногоДокумента.epf» -  все получается, только как я понял данный метод не работает с подпапками...
Спасибо.

Eugeneer

Ищите обработки которые грузят с подпапками.
SubSystems.Ru - Автоматическая загрузка прайсов в 1С из Excel

advanter

Статья о подобном - http://www.advanter.net/?p=1007
Копирование элементов из одной группы в другую (с учетом владельца) - http://infostart.ru/public/16822/

99format

Спасибо - сейчас буду пробовать ...
Добавлено: 04 июн 2013, 12:22


что - то я не понимаю - почему когда я в начале копирую содержимое одной папки номенклатуры в excel - потом с помощью ЗагрузкаДанныхИзТабличногоДокумента.epf хочу загрузить их в другую папку (меняю родителя) - обработчик переносит данные из одной папки в другую, а если меняешь название номенклатуры (допустим ставим 1 вначале) - то все копируется.
 
Добавлено: 04 июн 2013, 12:54


тему можно закрывать - нашел в интернете следующую процедуру

Процедура КнопкаВыполнитьНажатие(Кнопка)

  КопируемаяГруппа = Справочники.Номенклатура.НайтиПоКоду("000000011");

  СкопированнаяГруппа = КопируемаяГруппа.Скопировать();
  СкопированнаяГруппа.ПометкаУдаления = КопируемаяГруппа.ПометкаУдаления;
  СкопированнаяГруппа.Записать();

  СоответствиеГрупп = Новый Соответствие;
  СоответствиеГрупп.Вставить(КопируемаяГруппа, СкопированнаяГруппа.Ссылка);

  Выборка = Справочники.Номенклатура.ВыбратьИерархически(КопируемаяГруппа);

  Пока Выборка.Следующий() Цикл

   НовыйЭлементСправочника = Выборка.Ссылка.Скопировать();
   НовыйЭлементСправочника.Родитель = СоответствиеГрупп[Выборка.Родитель];
   НовыйЭлементСправочника.ПометкаУдаления = Выборка.ПометкаУдаления;
   НовыйЭлементСправочника.Записать();

   Если Выборка.ЭтоГруппа Тогда
     СоответствиеГрупп.Вставить(Выборка.Ссылка, НовыйЭлементСправочника.Ссылка);
   КонецЕсли;

  КонецЦикла;

КонецПроцедуры

с ней все получилось :-)

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск