Структура обработки загрузки номенклатуры поставщика с примерами и комментариями (часть 1)
В статье опишу вариант обработки для загрузки номенклатуры поставщика, блок загрузки групп и их состыковки.
- Описание
- Подробнее
Описание
Вводные
- Конфигурация Управление небольшой фирмой
- Прайс лист поставщика
- Нужно загрузить номенклатуру для последующей загрузки цен и остатков
Вариант решения
- Получить иерархию номенклатуры поставщика
- Состыковать с иерархией номенклатуры поставщика зафиксированной в базе, при отсутствии элементов создать
- Сопоставить иерархию номенклатуры поставщика с группами номенклатуры и категориями номенклатуры
- Создать номенклатуру поставщика
- Создать номенклатуру
- Заполнить дополнительные реквизиты номенклатуры
Доработка структуры данных в 1С
Реализовал в виде расширения, потому что для работы нужно добавить дополнительные реквизиты и регистр сведений.
- для спр. НоменклатураПоставщиков добавлен реквизит зн_ИдентификаторГруппы, выведен на форму элемента группы
- зн_СоответствиеГруппаПоставщикаНоменклатура
- Измерения
- Контрагент — денормализация для удобства выборок
- ГруппаПоставщика
- Ресурсы
- ГруппаНоменклатуры
- КатегорияНоменклатуры
- Измерения
Работа с данными реализована на уровне обработки, в которой присутствуют реквизиты
- ТабличныйДокумент, в текущей реализации использую загрузку через табличный документ
- ТаблицаГруппПоставщика — таблица состыковки идентификаторов и спр. НоменклатураПоставщика
- ИдентификаторЭлемент
- ИдентификаторРодитель
- Наименование
- Элемент
- ДеревоГруппПоставщика — для отображения пользователю
- ГруппыНоменклатуры (динамический список) — для выбора соответствия
- КатегорииНоменклатуры (динамический список) — для выбора соответствия
- Поставщик для фильтрации спр. НоменклатураПоставщика
Получение иерархии
При загрузке исходных данных нужно получить таблицу вида
- Идентификатор
- Идентификатор родителя
- Наименование
- Элемент (по умолчанию постое значение)
Получаем группы номенклатуры поставщика из базы