25 августа 2014 в 20:16:44
(10 лет 17 недель 4 дня 21 час назад)
3700
24.08.2014 12:10:43
Текст задания
Самописная конфигурация, работающая на платформе 8.3.5. В конфигурации есть такие справочники:
1. Справочник "Номенклатура ТМЦ". Выполняет роль именно классификатора номенклатуры ТМЦ, а не справочника самих ТМЦ, как в типовых. Например, "Ботинки защитные", "Освежитель воздуха" и т.п.
2. Справочник "ТМЦ" - подчинен справочнику "Номенклатура ТМЦ", в котором хранится информация о конкретных ТМЦ. Например: "Ботинки защитные Wurth", "Ботинки защитные Red Wing", "Освежитель воздуха AirWick", "Освежитель воздуха Glade" и т.п.
3. Справочник "Варианты ТМЦ" - также подчинен справочнику "Номенклатура ТМЦ", и предназначен для хранения различных вариантов номенклатурных позиций. Например, для ботинок это могут быть "Размер 41", "Размер 42" и т.п. Для освежителей воздуха - "Запах лаванды", "Запах Лимона" и т.п.
Есть регистр остатков "ТМЦнаСкладах", с измерениями "Склад" (СправочникСсылка.Склады), "НоменклатурнаяПозиция" (СправочникСсылка.НоменклатураТМЦ), "ТМЦ" (СправочникСсылка.ТМЦ) и "ВариантТМЦ" (СправочникСсылка.ВариантыТМЦ, может быть пустым) и ресурсом "Количество".
Есть регистр "Резервы ТМЦ", с измерениями "Склад", "ЦелевоеНазначение", "НоменклатурнаяПозиция", "ТМЦ", "ВариантТМЦ" и ресурсом "Количество".
Ну и соответственно есть документ "Резервирование ТМЦ", с табличной частью с реквизитами "НоменклатурнаяПозиция", "ТМЦ", "ВариантТМЦ", "Количество".
Сложность состоит в том, что при резервировании в этом документе можно не указывать ТМЦ либо ВариантТМЦ (либо ни то, ни другое). Т.е пользователь может оформить резерв в 4 вариантах, например: "Освежитель воздуха Glade с запахом лимона", или "Освежитель воздуха с запахом лимона" или "Освежитель воздуха Glade" или просто "Освежитель воздуха".
Требуется написать функцию, которая в качестве параметра получает данные о резервируемых ТМЦ, а возвращает таблицу значений имеющую структуру: "НоменклатурнаяПозиция, ТМЦ, ВариантТМЦ, КоличествоВРезерв, КоличествоВОчередь".