fat0001
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Приветствую имеется внешняя обработка для УНФ позволяющая создать несколько заказов на производство на основании заказов от покупателя. Писалась и тестировалась для релиза 1.3.2.5 как ее переделать для УПП 8.2 код модуля прилагаю. Функция СведенияОВнешнейОбработке() Экспорт РегистрационныеДанные = Новый Структура; РегистрационныеДанные.Вставить("Наименование", "Создание заказов на производство"); РегистрационныеДанные.Вставить("БезопасныйРежим", Истина); РегистрационныеДанные.Вставить("Версия", "1.0"); РегистрационныеДанные.Вставить("Вид", "СозданиеСвязанныхОбъектов"); РегистрационныеДанные.Вставить("Информация", "Создание заказов на производство на основании заказа покупателя"); /////////////// команды ///////////////////////// тзКоманд = Новый ТаблицаЗначений; тзКоманд.Колонки.Добавить("Идентификатор"); тзКоманд.Колонки.Добавить("Представление"); тзКоманд.Колонки.Добавить("Модификатор"); тзКоманд.Колонки.Добавить("ПоказыватьОповещение"); тзКоманд.Колонки.Добавить("Использование"); строкаКоманды = тзКоманд.Добавить(); строкаКоманды.Идентификатор = "Создать"; строкаКоманды.Представление = "Создать заказы на производство"; строкаКоманды.ПоказыватьОповещение = Истина; строкаКоманды.Использование = "ВызовКлиентскогоМетода"; РегистрационныеДанные.Вставить("Команды", тзКоманд); МассивНазначений = Новый Массив; МассивНазначений.Добавить("Документ.ЗаказПокупателя"); РегистрационныеДанные.Вставить("Назначение", МассивНазначений); Возврат РегистрационныеДанные; КонецФункции Процедура ПолучитьДанныеПоЗаказам(ОбъектыНазначения,Заказы) Экспорт Заказы.Очистить(); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ОбъектыНазначения",ОбъектыНазначения); Запрос.Текст = " |ВЫБРАТЬ РАЗРЕШЕННЫЕ | | ВЫБОР | КОГДА Константы.ФункциональнаяОпцияРезервированиеЗапасов | ТОГДА ЗаказПокупателяЗапасы.Ссылка | ИНАЧЕ ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) | КОНЕЦ КАК ЗаказПокупателя, | | ЗаказПокупателяЗапасы.Ссылка.Организация КАК Организация, | | ВЫБОР | КОГДА ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи.ТипСтруктурнойЕдиницы = ЗНАЧЕНИЕ(Перечисление.ТипыСтруктурныхЕдиниц.Подразделение) | ТОГДА ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи | ИНАЧЕ ЗНАЧЕНИЕ(Справочник.СтруктурныеЕдиницы.ПустаяСсылка) | КОНЕЦ КАК СтруктурнаяЕдиница, | | ВЫБОР | КОГДА ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи.ТипСтруктурнойЕдиницы = ЗНАЧЕНИЕ(Перечисление.ТипыСтруктурныхЕдиниц.Подразделение) | И ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаРезерв = ЗНАЧЕНИЕ(Справочник.СтруктурныеЕдиницы.ПустаяСсылка) | И (ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи.ИсточникПеремещения.ТипСтруктурнойЕдиницы = ЗНАЧЕНИЕ(Перечисление.ТипыСтруктурныхЕдиниц.Склад) | ИЛИ ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи.ИсточникПеремещения.ТипСтруктурнойЕдиницы = ЗНАЧЕНИЕ(Перечисление.ТипыСтруктурныхЕдиниц.Подразделение)) | ТОГДА ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаПродажи.ИсточникПеремещения | ИНАЧЕ ЗаказПокупателяЗапасы.Ссылка.СтруктурнаяЕдиницаРезерв | КОНЕЦ КАК СтруктурнаяЕдиницаРезерв, | | ВЫБОР | КОГДА ЗаказПокупателяЗапасы.Ссылка.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЗаказПокупателя.ЗаказНаряд) | ТОГДА ЗаказПокупателяЗапасы.Ссылка.Финиш | ИНАЧЕ ЗаказПокупателяЗапасы.ДатаОтгрузки | КОНЕЦ КАК Финиш, | | ВЫБОР | КОГДА ЗаказПокупателяЗапасы.Ссылка.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЗаказПокупателя.ЗаказНаряд) | ТОГДА ЗаказПокупателяЗапасы.Ссылка.Старт | ИНАЧЕ ДОБАВИТЬКДАТЕ(ЗаказПокупателяЗапасы.ДатаОтгрузки, ДЕНЬ, -ЗаказПокупателяЗапасы.Номенклатура.СрокПополнения) | КОНЕЦ КАК Старт, | | ЗаказПокупателяЗапасы.Номенклатура КАК Номенклатура, | ЗаказПокупателяЗапасы.Характеристика КАК Характеристика, | ЗаказПокупателяЗапасы.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ЗаказПокупателяЗапасы.Количество КАК Количество, | ЗаказПокупателяЗапасы.Количество КАК Резерв, | ЗаказПокупателяЗапасы.Спецификация КАК Спецификация |ИЗ | Документ.ЗаказПокупателя.Запасы КАК ЗаказПокупателяЗапасы, | Константы КАК Константы |ГДЕ | ЗаказПокупателяЗапасы.Ссылка В (&ОбъектыНазначения) |"; Рез = Запрос.Выполнить(); Если Рез.Пустой() Тогда Возврат; Иначе Заказы = Рез.Выгрузить(); КонецЕсли; КонецПроцедуры |