gifts2017

Выгрузка номенклатуры в товар при обмене из Управления торговлей в Бухгалтерию предприятия

Опубликовал Анянов Михаил (insurgut) в раздел Обмен - Перенос данных из 1C8 в 1C8

Довольно часто при настройках выгрузки документов из Управления торговлей в Бухгалтерию предприятия встает вопрос: - А как сделать так, чтобы вся номенклатура из торговли выгружалась в одну карточку номенклатуры в БП с наименованием "Товар". Ответ один - дорабатывать правила выгрузки из УТ в БП в конфигурации "Конвертация данных".
Постараюсь на примере обмена между конфигурациями Управление торговлей 10.3 и Бухгалтерия предприятия 2.0 показать, каким образом сделать это без глубоких познаний этой конфигурации.
Статья рассчитана в первую очередь на людей, совсем не знакомых с конфигурацией Конвертация данных, поэтому постарался все рассказать более подробно и в картинках.

1. Инструментарий

1.1. Конфигурация "Конвертация данных".

1.2. Последнее установленное обновление конфигурации Конвертация данных, для того, чтобы удобнее было показывать, какие обработки использовать и где их брать. На данный момент последний релиз 2.1.8.1.

 

2. Подготовительный этап

2.1. Выгружаем структуру метаданных конфигураций "Управление торговлей, редакция 10.3" и "Бухгалтерия предприятия, редакция 2.0".

Для этого нужно запустить каждую конфигурацию в режиме предприятия, открыть обработку MD82Exp.epf (находится она по умолчанию в папке "C:\Users\ВашеИмяПользователя\AppData\Roaming\1C\1Cv82\tmplts\1c\Conversion\2_1_8_1"), указать путь и имя файла выгрузки структуры и нажать кнопку Выгрузить. Никаких галочек снимать/устанавливать не надо, по умолчанию при запуске все устанавливается как надо:

Выгрузка структуры метаданных конфигурации

2.2. Сохраняем типовые правила выгрузки из УТ в БП.

Если обмен у вас уже настроен, то взять можно типовые правила обмена выгрузки данных из УТ в БП в настройках обмена. Для этого открываем существующую настройку обмена данными (Сервис - Прочие обмены данными - Все настройки обмена данными, переключаемся на вкладку Все обмены и открываем необходимую) и сохраняем правила выгрузки в базу обмена:

Сохранение типовых правил выгрузки из УТ в БП

P.S. Если обмен не настроен, настраиваем его и выполняем пункту 2.2. Только не торопитесь, если вы хотите "чистой" выгрузки, на этапе после регистрации данных для первичной выгрузки и до первичной выгрузки этих самых данных - необходимо снять с регистрации все элементы справочника "Номенклатура" (подробнее читайте в конце статьи).

2.3. Загружаем все необходимые данные в конфигурацию "Конвертация данных".

Первым делом, при запуске конфигурации загружаем выгруженные на этапе 2.1. структуры метаданных конфигураций. Для этого на рабочем столе выбираем "Загрузить структуру метаданных конфигурации" - выбираем файл выгрузки и нажимаем "Выполнить загрузку":

Загрузка структуры метаданных конфигурации

После загрузки обеих структур метеданных конфигураций (УТ и БП) выполняем загрузку типовых правил выгрузки данных из УТ в БП, сохраненных на этапе 2.2. Для этого на рабочем столе выбираем  "Загрузить правила обмена данными" - выбираем файл с правилами и нажимаем "Загрузить":

Загрузка правил выгрузки данных из УТ в БП

На этом подготовительный этап завершен.

3. Корректировка правил выгрузки данных

3.1. Открываем загруженные ранее правила выгрузки данных. Для этого достаточно на рабочем столе нажать "Настройка правил обмена данными", т.к. она одна - то она и будет открыта у нас по умолчанию:

Открытие правил выгрузки данных

3.2. На первой же вкладке "Правила конвертации объектов" разворачиваем группу "Справочники" и находим в нем "Номенклатура".

3.3. Открываем ее (в верхней панели нажимаем Изменить).

3.4. В открывшемся окне ставим галочку "Не использовать мастер настроек" (в правом верхнем углу), закрываем и открываем заново.

3.5. В событии "Перед выгрузкой" оставляем только:

 

Если НЕ Источник.ЭтоГруппа И (Источник.Набор ИЛИ Источник.Комплект) Тогда
	Отказ = Истина;
КонецЕсли;


3.6. Событие "Поля поиска" полностью очищаем, в результате должны получить:

Настройка обработчиков событий

3.7. Переходим на вкладку "Настройки" и снимаем галочку "Искать объект приемника по внутреннему идентификатору объекта источника". Нажимаем ОК если окончательный вид настроек следующий:

Настройка ПКО Номенклатуры

3.8. В нижней панели под названием "Конвертация свойств" для объекта номенклатуры отключаем все, кроме реквизитов Наименование, ЭтоГруппа, БазоваяЕдиницаИзмерения и Услуга:

Настройка списка выгружаемых свойств ПКО Номенклатура

Обратите внимание на галочки поиска - если вы ничего не изменяли, то поиск должен остаться для связки реквизитов Наименование + ЭтоГруппа.

3.9. Открываем правило конвертации свойства Наименование и в обработчике "Перед выгрузкой" прописываем:

 

Значение = Строка(Источник.ВидНоменклатуры.ТипНоменклатуры);

Поясню. Тут мы договариваемся, что наименование номенклатуры будет равно типу вида номенклатуры, которая будет указана в документе. Проверку на заполненность не выполняю, т.к. по умолчанию данные реквизиты все обязательны для заполнения. В результате правило конвертации свойства Наименование должно принять следующий вид:

Настройка ПКС Наименование

3.10. Далее изменяем событие перед выгрузкой для свойства БазоваяЕдиницаИзмерения:

Значение = Справочники.КлассификаторЕдиницИзмерения.НайтиПоКоду("796");

Настройка ПКС БазоваяЕдиницаИзмерения

Здесь мы проставляем в качестве базовой единицы Штуку (код по ОКЕИ - 796) по умолчанию (заполняется автоматически при начальном заполнении базы). Если у вас в базе нет штук, то укажите код единицы из классификатора, который должен встать по умолчанию.

3.11. Изменяем событие перед выгрузкой для свойства Услуга:

Если Источник.ВидНоменклатуры.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Услуга Тогда
	Значение = Истина;
Иначе
	Отказ = Истина;
КонецЕсли;

Настройка ПКС Услуга

3.12. На этом по сути все. Наживаем Ctrl+S (или нажимаем в верхнем левом углу кнопку Сохранить правила), выбираем файл для сохранения измененных правил и нажимаем Сохранить:

Сохранение правил выгрузки данных

После сохранения правил остается повторить пункт 2.2 с точностью до наоборот - вместо сохранения правил обмена данными для настройки обмена данными между конфигурациями Управление торговлей и Бухгалтерия предприятия нажимаем на кнопку Загрузить правила обмена из файла, и выбираем сохраненные на этапе 3.12 правила:

Загрузка измененных правил

После первой выгрузки любого документа, содержащего номенклатуру в базе Бухгалтерии предприятия появятся карточки с наименованием Товар, либо Услуга. Не забудьте в базе Бухгалтерии предприятия для вновь созданных карточек установить счета учета номенклатуры, а также заполнить необходимые реквизиты (номенклатурной группы, статьи затрат, ставки НДС и прочее).


Подводные камни

1. Если при первоначальной настройке обмена между базами у вас в базе Управления торговлей уже была номенклатура, и она успешно была выгружена в базу Бухгалтерии предприятия, то старые карточки необходимо переименовать все в Товар и обработкой Поиск и замена дублирующихся элементов (в конфигурации БП стандартно ее нет, можно взять из конфигурации УТ, сохранив ее из конфигурации в виде внешней обработки) свернуть все в карточку Товар, которая была создана в корне номенклатуры при выгрузке по нашим правилам (просто запоминаем ее код перед переименовыванием остальных карточек). После поиска и замены дублирующих элементов обязательно необходимо будет снять с регистрации на обмен всю номенклатуру. Для этого воспользуйтесь обработкой Регистрация изменений для обмена (встроена в конфигурацию), выбираете узел обмена Обмен Управление торговлей и Бухгалтерия предприятия, редакция 2.0, в дереве вызовете контекстное меню для элемента Номенклатура, выбираете Отменить регистрацию и отвечаете утвердительно на последующий вопрос.

2. Если обмен еще не настроен, то при настройке обмена в конфигурации Управление торговлей перед этапом выгрузки всех справочников необходимо также открыть обработку Регистрации изменений для обмена и снять с регистрации справочник номенклатуры, после чего выполнить выгрузку для перехода к следующему этапу настройки обмена.


Надеюсь данная статья будет полезна. Здоровая критика приветствуется. Возможна доработка статьи в связи с вашими вопросами или замечаниями.

P.S. Для тех, у кого нет времени осилить статью и самостоятельно настроить правила обмена - выложил доработанные последние (на момент написания статьи) правила выгрузки данных из конфигурации Управление торговлей, 10.3.29.1 в конфигурацию Бухгалтерия предприятия, 2.0.57.3.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Доработанные правила выгрузки данных из УТ 10.3.29.1 в БП 2.0.57.3
.zip 110,17Kb
01.04.14
10
.zip 110,17Kb 10 Скачать

См. также

Вознаграждение за ответ
Сумма: 0 $m
Добавили:
Александр (zas2004) (0.10 $m)
Подписаться Добавить вознаграждение

Комментарии

1. Эдуард Зелинский (VasMart) 09.04.14 09:44
Смысл таких доработок обычно сводится к оптимизации времени обмена и перепроведения документов. В этом случае для табличных частей выгружаемых документов стоит сделать свертку по каким-либо полям. Например по ставке НДС и типу номенклатуры. ТЧ от 10000 очень критично для "пухлого" регистра бухгалтерии.
Статья оптимизирует просмотр оборотки для бухов.
2. Анянов Михаил (insurgut) 09.04.14 10:20
(1) VasMart, не делал "свертку" табличной части в принципе сознательно, чтобы не нарушать возможность типового переноса себестоимости. В остальном - при выгрузке объем данных сокращается существенно, т.к. выгружается только одна карточка номенклатуры.

Хотя, в принципе - самое оптимальное делать свертку после загрузки и перед проведением документа. Но в данном случае придется дорабатывать события "После загрузки" для каждого документа, в котором необходимо свернуть ТЧ Товары или Услуги.
3. Александр (zas2004) 22.09.14 12:34
Спасибо большое за статью!!!! очень давно искал как реализовать что-то подобное! А вот еще вопрос есть большой как исправить счет при выгрузке? Например: выгружается документ возврат товара поставщику, в нем проводка 76.5, как сделать проводку 60?
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа