Как в 1с перенести номенклатуру из одной папки в другую
Как скопировать элементы из одной папки справочника в другую?
В справочнике «Номенклатура» — много услуг за 2005 год. Можно ли их скопировать всем скопом в папку «2006», чтобы не создавать заново?
Тогда уж проще «папку» переименовать.
если мне лень искать у себя такую обработку,
я б сделал выгрузку загрузку ,в файле выгрузки изменил группу.
Хоть меня и не спрашивали НО
Идею дублировать номенклатуру считаю плохой.
посадите секретаря — пусть ручками копирует —
ей все равно делать нечего.
(0)смени родителя
(4) а что лучше сменить родителя или переименовать папку?
Мы это проходили . А через год бухи схватятся за голову и скажут , что все должно идти по одному номенклатурному номеру ( как и д.б.)
А вообще то лучше делать обработкой . Создать новую группу и перебирать элементы справочника , типа : если группа=2005 , новый элемент справочника с родителем =2006 с тем же названием
Если руками, то вдумчиво нажимает F9, Ctrl-Enter, Enter, выбираем папку в дереве и нажимает Ctrl-F5, Enter.
Если не руками, я бы копировал через метаданные. Т.е. организовать цикл, в котором будут перебираться все элементы группы, затем создаваться такие элементы в новой группе. Копирование реквизитов будет происходить челе ПолучитьАтрибут, УстуновитьАтрибут, атрибуты считываются в цикле.
1С. Справочник «Номенклатура». Как перенести номенклатуру с иерархией из одной папки в другую.

Переносим иерархию групп и элементов из одной папки в другую.
Задача: В справочнике «Номенклатура» есть две группы «Неактуальная номенклатура» и «Актуальная номенклатура». Нужно перенести номенклатуру вместе с иерархией групп и элементов из группы «Нактуальная номенклатура» в группу «Актуальная номенклатура».
Разделим задачу на два этапа: сначала скопируем иерархию групп, а потом перенесём элементы. Подробно остановимся только на первом этапе, так как второй не вызывает сложностей.
Текст запроса для копирования групп:
Запрос.Текст = "ВЫБРАТЬ | Номенклатура.Ссылка КАК НеактуальнаяГруппа, | Номенклатура.Наименование КАК НаименованиеНеактуальнойГруппы |ПОМЕСТИТЬ ВТ_НеактуальныеГруппы |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | Номенклатура.Ссылка В ИЕРАРХИИ(&ГруппаНеактуальнаяНоменклатура) | И Номенклатура.ЭтоГруппа = ИСТИНА | |СГРУППИРОВАТЬ ПО | Номенклатура.Ссылка, | Номенклатура.Наименование | |ИНДЕКСИРОВАТЬ ПО | НаименованиеНеактуальнойГруппы |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | НеактуальныеГруппы.НеактуальнаяГруппа, | НеактуальныеГруппы.НаименованиеНеактуальнойГруппы КАК НаименованиеНеактуальнойГруппы, | НеактуальныеГруппы.НеактуальнаяГруппа.Родитель КАК РодительНеактуальнойГруппы, | НеактуальныеГруппы.НеактуальнаяГруппа.Родитель.Наименование КАК НаименованиеРодителяНеактуальнойГруппы, | Номенклатура.Ссылка КАК АктуальнаяГруппа |ИЗ | ВТ_НеактуальныеГруппы КАК НеактуальныеГруппы | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура | ПО НеактуальныеГруппы.НаименованиеНеактуальнойГруппы = Номенклатура.Наименование | И (Номенклатура.Ссылка В ИЕРАРХИИ (&ГруппаАктуальнаяНоменклатура)) | И Номенклатура.Ссылка.ЭтоГруппа = Истина | |СГРУППИРОВАТЬ ПО | НеактуальныеГруппы.НеактуальнаяГруппа, | НеактуальныеГруппы.НаименованиеНеактуальнойГруппы, | НеактуальныеГруппы.НеактуальнаяГруппа.Родитель, | Номенклатура.Ссылка | |УПОРЯДОЧИТЬ ПО | НеактуальныеГруппы.НеактуальнаяГруппа ИЕРАРХИЯ, | НеактуальныеГруппы.НаименованиеНеактуальнойГруппы"; Запрос.УстановитьПараметр("ГруппаНеактуальнаяНоменклатура", Справочники.Номенклатура.НайтиПоНаименованию("Неактуальная номенклатура")); Запрос.УстановитьПараметр("ГруппаАктуальнаяНоменклатура", Справочники.Номенклатура.НайтиПоНаименованию("Актуальная номенклатура")); Результат = Запрос.Выполнить();
Во временную таблицу ВТ_НеактуальныеГруппы мы выбираем вложенные группы из «Неактуальная номенклатура». Далее «левым соединением» выбираем группы из «Актуальная номенклатура», условие связи – равенство наименования.
При обходе выборки запроса мы будем создавать недостающие группы в папке «Актуальная номенклатура». Главная сложность в том, чтобы в выборке группы располагались с учётом иерархии. То есть, сначала должен идти родитель, потом подчинённые элементы, иначе возникнут трудности при заполнении реквизита «Родитель» для вновь создаваемых групп. Для выстраивания выборки в таком порядке, в запросе задаём упорядочивание:
|УПОРЯДОЧИТЬ ПО | НеактуальныеГруппы.НеактуальнаяГруппа ИЕРАРХИЯ
Осталось обработать выборку – создать группы, и потом перенести элементы номенклатуры.
- 1С
- Запросы
Как отнести позицию номенклатуры к определенной группе?
Для того чтобы отнести позицию номенклатуры к определенной группе справочника Номенклатура, сделайте следующее:
- установите курсор в правой части диалогового окна на ту группу (подгруппу), к которой будет относиться позиция номенклатуры;
- в левой части списка будет показан список номенклатурных позиций, которые относятся к данной группе (подгруппе);
- переместите курсор в левую часть диалогового окна (активизируйте его);
- находясь в левой части списка, нажмите клавишу Ins (или нажмите соответствующую пиктограмму на панели управления);
- будет открыт помощник создания позиции номенклатуры. При создании новой позиции для нее будет прописана информация о той группе, из которой создавалась позиция номенклатуры.
Возможен и другой способ. При создании позиции номенклатуры можно указать нужную группу в поле Группа.
Также предусмотрена возможность перенести позицию номенклатуры из одной группы в другую.
Если переносится одна позиция, то новую группу номенклатуры можно указать непосредственно в форме позиции номенклатуры.
В том случае, если необходимо перенести несколько позиций, удобнее это сделать в списке позиций номенклатуры. Для этого в списке позиций номенклатуры нужно отметить те позиции, которые требуется перенести в другую группу, нажать правую клавишу мыши и выбрать пиктограмму переноса в группу (или нажать сочетание клавиш Ctrl + Shift + M).
В открывшемся списке необходимо указать ту группу, в которую нужно перенести отмеченные номенклатурные позиции.
На представленном рисунке после выбора группы и нажатия кнопки Выбрать все отмеченные товары из группы Бакалея будут перенесены в группу Кондитерские изделия.
Выберите раздел
- Все вопросы 94
- 1С:Бухгалтерия 8 445
- Интеграция с Маркетплейсами из 1С 4
- 1С:Управление нашей фирмой 8 19
- 1С:Управление Торговлей 8 179
- 1С:Зарплата и Управление Персоналом 8 227
- 1С:Комплексная Автоматизация 8 83
- Бюджетная учет 5
- 1С:Бухгалтерия 7.7 41
- Другие конфигурации 34
Все разделы
- Все вопросы 94
- 1С:Бухгалтерия 8 445
- Интеграция с Маркетплейсами из 1С 4
- 1С:Управление нашей фирмой 8 19
- 1С:Управление Торговлей 8 179
- 1С:Зарплата и Управление Персоналом 8 227
- 1С:Комплексная Автоматизация 8 83
- Бюджетная учет 5
- 1С:Бухгалтерия 7.7 41
- Другие конфигурации 34
Как переносить номенклатуру в новую базу 1С?
При переходе на ведение учета в какой-то новой конфигурации 1С имеет смысл провести нормализацию справочника «Номенклатура». Что имеется в виду?
В вашей базе 1С может хранится большое количество неактуально элементов либо ошибочно введенных, либо дублей. Но сейчас мы не ведем речь про ошибки в остатках номенклатуры по складам, этот вопрос является темой для отдельного разговора. Мы говорим только про нормализацию самого справочника «Номенклатура». Этот вопрос важный и есть даже такая поговорка: покажи мне, в каком виде у тебя справочники «Номенклатура» и «Контрагенты», и я скажу тебе, какой у тебя порядок в учете.
Автоматизация процесса переноса номенклатуры
Каким образом обычно решают эту задачу? Какие есть пути для ее автоматизации? При использовании правил конвертации, которые часто используют для перехода ведения учета в новой 1С, есть возможность переносить уникальные идентификаторы справочника «Номенклатура» из старой 1С в новую. Одновременно с этим можно выполнять и поиск номенклатуры по полям поиска, т.е. вы сможете провести свертку позиций номенклатуры с одинаковым наименованием, возможно, полным наименованием, базовой единицей измерения и другими полями.
В данном случае критичным является вопрос: стоит ли сворачивать одновременно по полю родитель, т.е. по группе номенклатуры? В данном случае вы либо хотите искать дубли номенклатуры, которые лежат в разных папках, либо вы считается, что для вашей организации такая ситуация является нормальной. Вам не требуется сворачивать такие позиции номенклатуры, и если элементы справочника «Номенклатура» лежат в разных папках, но имеют одно и то же наименование, то это нормально, эту ситуацию нужно оставить. Подобные решения проекта перехода со старой 1С на новую можно принять всего лишь одним щелчком мыши, изменив настройки полей поиска в правилах конвертации данных.
Реализация переноса номенклатуры в новую базу 1С на практике
Часто заказчики самостоятельно проводят вручную нормализацию справочника «Номенклатура» и есть квалифицированные сотрудники, которые в состоянии и компетентны принять решение, какая номенклатура уже не является актуальной и не должна быть перенесена в новую базу 1С. И такую номенклатуру переносят в отдельную группу «Архив», «Не переносить» — какие-то такие названия. И ставится задача, что именно из данной папки номенклатуру переносить не нужно. Опять-таки инструменты для перехода на новую 1С от нашей компании «MoscowSoft» позволяют такие ситуации реализовать.
Во-первых, при выгрузке данных самого справочника, т.е. при отметке флажка для самого правила выгрузки данных справочника «Номенклатура», можно установить отбор для тех групп, элементы которых выгружаться не должны. Во-вторых, часто заказчики ставят задачу другим образом, говоря: «Нам необходимо перенести всю номенклатуру, которая есть на остатках, а также была в оборотах за последний год». Такая задача тоже решается штатными возможностями наших инструментов.
Делается это следующим образом. Снимаются все флажки для выгрузки справочников «Номенклатура» и его других подчиненных справочников. Отмечаются к выгрузке документы, например, за прошлый год или за текущий год, т.е. период выгрузки документов указывается именно некий прошлый год. Данные документы будут перенесены в базу-приемник, но не будут проведены, если мы поставим датой начальных остатков начало текущего года.
Условно говоря, сейчас начинается 2022 год, например, мы хотим начальные остатки перенести на 1 января 2022 года, но также перенести всю номенклатуру, которая участвовала в движениях, указывается пользователями в документах за весь 2021 год. В этом случае период переноса документов нужно указать весь 2021 год, а датой начальных остатков нужно указать 1 января 2022 года. При таких настройках документы все будут перенесены, но не будут проведены, и при выгрузке все документы подтянут за собой, т.е. будут выгружены по ссылке, все подчиненные справочники, в том числе справочник «Номенклатура». Таким изящным и несложным способом можно гибко реализовать требуемую задачу.
На что следует обратить внимание перед началом переноса
Есть очень много нюансов при переносе номенклатуры из одной базы 1С в другую. Касаются они, конечно же, методологических решений в конкретной конфигурации. Можно привести очень много примеров, а лучше, конечно, рассматривать ситуации при каждом конкретном переходе именно в вашем случае. Потому что какие-то из описанных мною примеров могут быть не актуальны, а какие-то наоборот будут как раз про ваш случай. Но сейчас опишу все это именно для примера, именно для того чтобы понимать, какие сложности при этом могут возникать и каким образом можно выбирать подходы для их решения.
Например, при переносе из старых конфигураций 1С в такие, как «Управление торговлей 11», «Комплексная автоматизация 2», «ERP», можно заметить, что как базовая единица измерения номенклатуры, так и прочие (единицы сохранения остатков и т.д.) – это все является элементами одного справочника «Упаковки, единицы, измерения». И в данном справочнике можно хранить как базовые единицы измерения – всем нам привычные штуки, килограммы, кубические метры, так и индивидуальные упаковки, которые, например, актуальны только для конкретной культуры, т.е. является подчиненными ей, либо не так.
И, что важно, это все элементы одного и того же справочника, и также бывает не совсем очевидно, как рассчитать для конкретной номенклатуры, нужно ли включать учет упаковок. Потому что если, например, у нее все единицы измерения базовые, то, конечно, учет по упаковкам для нее включать не надо. Чем эта ситуация отличается, например, от той же УПП? Там базовая единица измерения была элементом справочника «Классификаторы единиц измерения», а все остальные в обязательном порядке являлись элементами справочника «Единицы измерения», который является подчиненным справочнику «Номенклатура».
Таким образом, данный элемент номенклатуры был его владельцем, и данная единица измерения могла использовать только данные номенклатуры. В каком-то смысле это аналог упаковок по своей сути, потому что они являются подчиненными, и эти элементы только для данной номенклатуры. Но, с другой стороны, это могут быть те же самые штуки, т.е. никакого смысла в их учете быть не могло и, видимо, именно поэтому разработчики фирмы 1С таким образом поступили с номенклатурой.