Отчет переработчика / Подбор продукции из заказа / Модуль формы

файл

#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	УстановитьУсловноеОформление();
	
	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;
	
	ЗаполнитьТаблицуТоваров();
	
	Если Не Параметры.ГруппировкаЗатрат = Перечисления.ГруппировкиЗатратВЗаказеПереработчику.ПоЭтапамПроизводства Тогда
		Элементы.ТаблицаТоваровЭтапПроизводства.Видимость = Ложь;
	КонецЕсли;
	
КонецПроцедуры

#КонецОбласти

#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура ПеренестиВДокументВыполнить()
	
	СтруктураПоиска = Новый Структура("Пометка", Истина);
 	СписокСтрок = ТаблицаТоваров.НайтиСтроки(СтруктураПоиска);
	
	Если СписокСтрок.Количество() = 0 Тогда
		ПоказатьПредупреждение(, НСтр("ru = 'Необходимо выбрать продукцию.'"));
		Возврат;
	КонецЕсли;
	
	ПеренестиТоварыВДокумент();
	
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьТоварыВыполнить()
	
	ВыбратьВсеТоварыНаСервере(Истина);
	
КонецПроцедуры

&НаКлиенте
Процедура ИсключитьТоварыВыполнить()
	
	ВыбратьВсеТоварыНаСервере(Ложь);
	
КонецПроцедуры

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

#Область Прочее

&НаСервере
Процедура УстановитьУсловноеОформление()

	УсловноеОформление.Элементы.Очистить();

	#Область СтандартноеОформление
	
	НоменклатураСервер.УстановитьУсловноеОформлениеХарактеристикНоменклатуры(
		ЭтаФорма, 
		"ТаблицаТоваровХарактеристика",
		"ТаблицаТоваров.ХарактеристикиИспользуются");
																			 
	ПараметрыУсловногоОформления = НоменклатураСервер.НовыеПараметрыУсловногоОформленияЕдиницИзмерения();
	ПараметрыУсловногоОформления.ИмяПоляЕдиницаИзмерения = "ТаблицаТоваровНоменклатураЕдиницаИзмерения";
	ПараметрыУсловногоОформления.ПутьКПолюУпаковка = "ТаблицаТоваров.Упаковка";
	НоменклатураСервер.УстановитьУсловноеОформлениеЕдиницИзмерения(ЭтаФорма, ПараметрыУсловногоОформления);
		
	#КонецОбласти

	#Область Подразделение

	//ТолькоПросмотр, Текст, ЦветТекста
	Элемент = УсловноеОформление.Элементы.Добавить();

	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТаблицаТоваровПодразделение.Имя);

	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных("ТаблицаТоваров.ТипНоменклатуры");
	ОтборЭлемента.ВидСравнения   = ВидСравненияКомпоновкиДанных.НеРавно;
	ОтборЭлемента.ПравоеЗначение = Перечисления.ТипыНоменклатуры.Работа;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("Текст"      , НСтр("ru = '<для работ>'"));
	Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста" , ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет);

	#КонецОбласти
	
	#Область АналитикаРасходов
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТаблицаТоваровАналитикаРасходов.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаТоваров.ТипСтатьи");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
	ОтборЭлемента.ПравоеЗначение = 1;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
	
	#КонецОбласти
	
	#Область АналитикаАктивовПассивов
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТаблицаТоваровАналитикаАктивовПассивов.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаТоваров.ТипСтатьи");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
	ОтборЭлемента.ПравоеЗначение = 3;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь);
	
	#КонецОбласти
	
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьВсеТоварыНаСервере(ЗначениеВыбора)
	
	Для Каждого СтрокаТаблицы Из ТаблицаТоваров.НайтиСтроки(Новый Структура("Пометка", Не ЗначениеВыбора)) Цикл
		
		СтрокаТаблицы.Пометка = ЗначениеВыбора;
		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Функция ПолучитьВыбраннуюПродукцию()
	
	ДанныеЗаполнения = Новый Массив;
	
	Для каждого ТекущиеДанные Из ТаблицаТоваров Цикл
		
		Если НЕ ТекущиеДанные.Пометка Тогда
			Продолжить;
		КонецЕсли;
		
		ДанныеПродукции = Новый Структура(
			"Номенклатура,
			|Характеристика,
			|Назначение,
			|Получатель,
			|КодСтроки,
			|Упаковка,
			|ТипСтоимости,
			|НомерГруппыЗатрат,
			|Количество,
			|Цена,
			|Сумма,
			|СтатьяКалькуляции,
			|Спецификация,
			|ДоляСтоимости,
			|ДоляСтоимостиНаЕдиницу,
			|СписатьНаРасходы,
			|СтатьяРасходов,
			|ТипСтатьи,
			|АналитикаРасходов,
			|АналитикаАктивовПассивов");
			
		ЗаполнитьЗначенияСвойств(ДанныеПродукции, ТекущиеДанные);
		ДанныеЗаполнения.Добавить(ДанныеПродукции);
		
	КонецЦикла; 
	
	Возврат ДанныеЗаполнения;
	
КонецФункции

&НаСервере
Процедура ЗаполнитьТаблицуТоваров()
	
	ТекстыЗапроса = Новый Массив;
	
	Отбор = Новый Соответствие;
	ОбщегоНазначенияУТ.ДобавитьЭлементОтбораВКоллекцию(Отбор, "ЗаказПоставщику", "&Заказ");
	ОбщегоНазначенияУТ.ДобавитьЭлементОтбораВКоллекцию(Отбор, "НЕ КодСтроки = 0", "ИСТИНА", "=");
	
	ТекстыЗапроса.Добавить(
		РегистрыНакопления.ЗаказыПоставщикам.ТекстЗапросаОстатки("ТоварыКОформлениюПоЗаказу", Отбор, "КОформлению > 0"));
	
	Отбор = Новый Соответствие;
	ОбщегоНазначенияУТ.ДобавитьЭлементОтбораВКоллекцию(Отбор, "ЗаказПоставщику", "&Заказ");
	ТекстыЗапроса.Добавить(
		Документы.ОтчетПереработчика2_5.ТекстЗапросаТоварыСверхЗаказаКОформлению("ТоварыКОформлениюСверхЗаказа", Отбор));
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТабличнаяЧасть.ЗаказПереработчику КАК ЗаказПереработчику,
	|	ТабличнаяЧасть.КодСтроки          КАК КодСтроки,
	|	ТабличнаяЧасть.Номенклатура       КАК Номенклатура,
	|	ТабличнаяЧасть.Характеристика     КАК Характеристика,
	|	ТабличнаяЧасть.Количество         КАК Количество
	|ПОМЕСТИТЬ ВыходныеИзделия
	|ИЗ
	|	&ВыходныеИзделия КАК ТабличнаяЧасть";
	ТекстыЗапроса.Добавить(ТекстЗапроса);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ТабличнаяЧасть.ЗаказПереработчику КАК ЗаказПереработчику,
	|	ТабличнаяЧасть.КодСтроки          КАК КодСтроки,
	|	ТабличнаяЧасть.Номенклатура       КАК Номенклатура,
	|	ТабличнаяЧасть.Характеристика     КАК Характеристика,
	|	ТабличнаяЧасть.Количество         КАК Количество
	|ПОМЕСТИТЬ ПобочныеИзделия
	|ИЗ
	|	&ПобочныеИзделия КАК ТабличнаяЧасть";
	ТекстыЗапроса.Добавить(ТекстЗапроса);
	
	ТекстЗапроса =
	"ВЫБРАТЬ
	|	ЗаказыПоставщикам.Распоряжение       КАК Распоряжение,
	|	ЗаказыПоставщикам.КодСтроки          КАК КодСтроки,
	|	ЗаказыПоставщикам.Номенклатура       КАК Номенклатура,
	|	ЗаказыПоставщикам.Характеристика     КАК Характеристика,
	|	СУММА(ЗаказыПоставщикам.Заказано)    КАК Заказано,
	|	СУММА(ЗаказыПоставщикам.КОформлению) КАК КОформлению
	|ПОМЕСТИТЬ ТаблицаКОформлению
	|ИЗ 
	|	(ВЫБРАТЬ
	|		ТоварыКОформлениюПоЗаказу.ЗаказПоставщику      КАК Распоряжение,
	|		ТоварыКОформлениюПоЗаказу.КодСтроки            КАК КодСтроки,
	|		ТоварыКОформлениюПоЗаказу.Номенклатура         КАК Номенклатура,
	|		ТоварыКОформлениюПоЗаказу.Характеристика       КАК Характеристика,
	|		0                                              КАК Заказано,
	|		ТоварыКОформлениюПоЗаказу.КОформлению          КАК КОформлению
	|	ИЗ
	|		ТоварыКОформлениюПоЗаказу КАК ТоварыКОформлениюПоЗаказу
	|		
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПереработчику2_5.Услуги КАК УслугиЗаказа
	|		ПО УслугиЗаказа.Ссылка = ТоварыКОформлениюПоЗаказу.ЗаказПоставщику
	|		И УслугиЗаказа.КодСтроки = ТоварыКОформлениюПоЗаказу.КодСтроки
	|		
	|	ГДЕ
	|		УслугиЗаказа.Ссылка ЕСТЬ NULL
	|
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ТоварыКОформлениюСверхЗаказа.ЗаказПоставщику КАК Распоряжение,
	|		0                                            КАК КодСтроки,
	|		ТоварыКОформлениюСверхЗаказа.Номенклатура    КАК Номенклатура,
	|		ТоварыКОформлениюСверхЗаказа.Характеристика  КАК Характеристика,
	|		0                                            КАК Заказано,
	|		ТоварыКОформлениюСверхЗаказа.КОформлению     КАК КОформлению
	|	ИЗ
	|		ТоварыКОформлениюСверхЗаказа КАК ТоварыКОформлениюСверхЗаказа
	|
	|	ОБЪЕДИНИТЬ ВСЕ
	|
	|	ВЫБРАТЬ
	|		ТоварыЗаказано.ЗаказПоставщику                 КАК Распоряжение,
	|		ТоварыЗаказано.КодСтроки                       КАК КодСтроки,
	|		ТоварыЗаказано.Номенклатура                    КАК Номенклатура,
	|		ТоварыЗаказано.Характеристика                  КАК Характеристика,
	|		ТоварыЗаказано.ЗаказаноПриход                  КАК Заказано,
	|		0                                              КАК КОформлению
	|	ИЗ
	|		РегистрНакопления.ЗаказыПоставщикам.Обороты(,,,
	|			(ЗаказПоставщику, КодСтроки) В
	|				(ВЫБРАТЬ
	|					ТоварыКОформлениюПоЗаказу.ЗаказПоставщику,
	|					ТоварыКОформлениюПоЗаказу.КодСтроки
	|				ИЗ
	|					ТоварыКОформлениюПоЗаказу)) КАК ТоварыЗаказано
	|		
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПереработчику2_5.Услуги КАК УслугиЗаказа
	|		ПО УслугиЗаказа.Ссылка = ТоварыЗаказано.ЗаказПоставщику
	|		И УслугиЗаказа.КодСтроки = ТоварыЗаказано.КодСтроки
	|		
	|	ГДЕ
	|		УслугиЗаказа.Ссылка ЕСТЬ NULL
	|	
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ТабличнаяЧасть.ЗаказПереработчику              КАК Распоряжение,
	|		ТабличнаяЧасть.КодСтроки                       КАК КодСтроки,
	|		ТабличнаяЧасть.Номенклатура                    КАК Номенклатура,
	|		ТабличнаяЧасть.Характеристика                  КАК Характеристика,
	|		0                                              КАК Заказано,
	|		-ТабличнаяЧасть.Количество                     КАК КОформлению
	|	ИЗ
	|		ВыходныеИзделия КАК ТабличнаяЧасть
	|	
	|	ОБЪЕДИНИТЬ ВСЕ
	|	
	|	ВЫБРАТЬ
	|		ТабличнаяЧасть.ЗаказПереработчику              КАК Распоряжение,
	|		ТабличнаяЧасть.КодСтроки                       КАК КодСтроки,
	|		ТабличнаяЧасть.Номенклатура                    КАК Номенклатура,
	|		ТабличнаяЧасть.Характеристика                  КАК Характеристика,
	|		0                                              КАК Заказано,
	|		-ТабличнаяЧасть.Количество                     КАК КОформлению
	|	ИЗ
	|		ПобочныеИзделия КАК ТабличнаяЧасть
	|
	|	) КАК ЗаказыПоставщикам
	|
	|СГРУППИРОВАТЬ ПО
	|	ЗаказыПоставщикам.Распоряжение,
	|	ЗаказыПоставщикам.КодСтроки,
	|	ЗаказыПоставщикам.Номенклатура,
	|	ЗаказыПоставщикам.Характеристика
	|
	|ИМЕЮЩИЕ
	|	СУММА(ЗаказыПоставщикам.КОформлению) > 0
	|
	|ИНДЕКСИРОВАТЬ ПО
	|	Распоряжение,
	|	КодСтроки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	// Выходные изделия заказа переработчику
	|ВЫБРАТЬ РАЗРЕШЕННЫЕ
	|	ТаблицаИзделия.НомерСтроки                                         КАК Порядок,
	|	ТаблицаКОформлению.КодСтроки                                       КАК КодСтроки,
	|	ТаблицаКОформлению.Номенклатура                                    КАК Номенклатура,
	|	ТаблицаКОформлению.Характеристика                                  КАК Характеристика,
	|	ТаблицаКОформлению.Номенклатура.ТипНоменклатуры                    КАК ТипНоменклатуры,
	|	ТаблицаИзделия.Назначение                                          КАК Назначение,
	|	ТаблицаИзделия.Получатель                                          КАК Получатель,
	|	ТаблицаИзделия.Спецификация                                        КАК Спецификация,
	|	ТаблицаИзделия.Упаковка                                            КАК Упаковка,
	|	ВЫБОР
	|		КОГДА ТаблицаИзделия.Количество > 0
	|			И ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).СпособРаспределенияЗатратНаВыходныеИзделия
	|				= ЗНАЧЕНИЕ(Перечисление.СпособыРаспределенияЗатратНаВыходныеИзделия.ПоДолямСтоимости)
	|			ТОГДА ТаблицаКОформлению.Заказано
	|					* ТаблицаИзделия.ДоляСтоимости
	|					/ ТаблицаИзделия.Количество
	|		ИНАЧЕ ТаблицаКОформлению.Заказано
	|				* ЕСТЬNULL(ТаблицаИзделия.ДоляСтоимостиНаЕдиницу, 0)
	|	КОНЕЦ                                                              КАК ДоляСтоимости,
	|	ТаблицаИзделия.ДоляСтоимостиНаЕдиницу                              КАК ДоляСтоимостиНаЕдиницу,
	|	ТаблицаИзделия.НомерГруппыЗатрат                                   КАК НомерГруппыЗатрат,
	|	ЗНАЧЕНИЕ(Справочник.СтатьиКалькуляции.ПустаяСсылка)                КАК СтатьяКалькуляции,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыСтоимостиВыходныхИзделий.Рассчитывается) КАК ТипСтоимости,
	|	0                                                                  КАК Цена,
	|	0                                                                  КАК Сумма,
	|	ТаблицаКОформлению.КОформлению                                     КАК Количество,
	|	ТаблицаКОформлению.Заказано                                        КАК Заказано,
	|	ТаблицаКОформлению.КОформлению
	|		/ ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1)                КАК КоличествоУпаковок,
	|	ТаблицаКОформлению.Заказано
	|		/ ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1)                КАК ЗаказаноУпаковок,
	|	ВЫБОР
	|		КОГДА ТаблицаКОформлению.Номенклатура.ИспользованиеХарактеристик В (
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеСДругимВидомНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры))
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ                                                              КАК ХарактеристикиИспользуются,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Номер   КАК НомерРаспоряжения,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Дата    КАК ДатаРаспоряжения,
	|	ТаблицаИзделия.СписатьНаРасходы                                    КАК СписатьНаРасходы,
	|	ТаблицаИзделия.СтатьяРасходов                                      КАК СтатьяРасходов,
	|	ВЫБОР
	|		КОГДА ТИПЗНАЧЕНИЯ(ТаблицаИзделия.СтатьяРасходов) = ТИП(ПланВидовХарактеристик.СтатьиРасходов)
	|			ТОГДА 1
	|		КОГДА ТИПЗНАЧЕНИЯ(ТаблицаИзделия.СтатьяРасходов) = ТИП(ПланВидовХарактеристик.СтатьиАктивовПассивов)
	|			ТОГДА 3
	|		ИНАЧЕ 0
	|	КОНЕЦ                                                              КАК ТипСтатьи,
	|	ТаблицаИзделия.АналитикаРасходов                                   КАК АналитикаРасходов,
	|	ТаблицаИзделия.АналитикаАктивовПассивов                            КАК АналитикаАктивовПассивов
	|ИЗ
	|	ТаблицаКОформлению КАК ТаблицаКОформлению
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПереработчику2_5.ВыходныеИзделия КАК ТаблицаИзделия
	|	ПО ТаблицаИзделия.Ссылка = ТаблицаКОформлению.Распоряжение
	|	И ТаблицаИзделия.КодСтроки = ТаблицаКОформлению.КодСтроки
	|
	|ГДЕ
	|	НЕ &ТолькоПобочныеИзделия
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	// Побочные изделия заказа переработчику
	|ВЫБРАТЬ
	|	ТаблицаИзделия.НомерСтроки                                        КАК Порядок,
	|	ТаблицаКОформлению.КодСтроки                                      КАК КодСтроки,
	|	ТаблицаКОформлению.Номенклатура                                   КАК Номенклатура,
	|	ТаблицаКОформлению.Характеристика                                 КАК Характеристика,
	|	ТаблицаКОформлению.Номенклатура.ТипНоменклатуры                   КАК ТипНоменклатуры,
	|	ТаблицаИзделия.Назначение                                         КАК Назначение,
	|	ТаблицаИзделия.Получатель                                         КАК Получатель,
	|	ЗНАЧЕНИЕ(Справочник.РесурсныеСпецификации.ПустаяСсылка)           КАК Спецификация,
	|	ТаблицаИзделия.Упаковка                                           КАК Упаковка,
	|	0                                                                 КАК ДоляСтоимости,
	|	0                                                                 КАК ДоляСтоимостиНаЕдиницу,
	|	ТаблицаИзделия.НомерГруппыЗатрат                                  КАК НомерГруппыЗатрат,
	|	ТаблицаИзделия.СтатьяКалькуляции                                  КАК СтатьяКалькуляции,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыСтоимостиВыходныхИзделий.Фиксированная) КАК ТипСтоимости,
	|	ТаблицаИзделия.Цена                                               КАК Цена,
	|	ТаблицаИзделия.Сумма                                              КАК Сумма,
	|	ТаблицаКОформлению.КОформлению                                    КАК Количество,
	|	ТаблицаКОформлению.Заказано                                       КАК Заказано,
	|	ТаблицаКОформлению.КОформлению
	|		/ ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1)               КАК КоличествоУпаковок,
	|	ТаблицаКОформлению.Заказано
	|		/ ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки, 1)               КАК ЗаказаноУпаковок,
	|	ВЫБОР
	|		КОГДА ТаблицаКОформлению.Номенклатура.ИспользованиеХарактеристик В (
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеСДругимВидомНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры))
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ                                                             КАК ХарактеристикиИспользуются,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Номер   КАК НомерРаспоряжения,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Дата    КАК ДатаРаспоряжения,
	|	ТаблицаИзделия.СписатьНаРасходы                                   КАК СписатьНаРасходы,
	|	ТаблицаИзделия.СтатьяРасходов                                     КАК СтатьяРасходов,
	|	ВЫБОР
	|		КОГДА ТИПЗНАЧЕНИЯ(ТаблицаИзделия.СтатьяРасходов) = ТИП(ПланВидовХарактеристик.СтатьиРасходов)
	|			ТОГДА 1
	|		КОГДА ТИПЗНАЧЕНИЯ(ТаблицаИзделия.СтатьяРасходов) = ТИП(ПланВидовХарактеристик.СтатьиАктивовПассивов)
	|			ТОГДА 3
	|		ИНАЧЕ 0
	|	КОНЕЦ                                                             КАК ТипСтатьи,
	|	ТаблицаИзделия.АналитикаРасходов                                  КАК АналитикаРасходов,
	|	ТаблицаИзделия.АналитикаАктивовПассивов                           КАК АналитикаАктивовПассивов
	|ИЗ
	|	ТаблицаКОформлению КАК ТаблицаКОформлению
	|
	|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПереработчику2_5.ПобочныеИзделия КАК ТаблицаИзделия
	|	ПО ТаблицаИзделия.Ссылка = ТаблицаКОформлению.Распоряжение
	|	И ТаблицаИзделия.КодСтроки = ТаблицаКОформлению.КодСтроки
	|
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	НЕОПРЕДЕЛЕНО                                                      КАК Порядок,
	|	ТаблицаКОформлению.КодСтроки                                      КАК КодСтроки,
	|	ТаблицаКОформлению.Номенклатура                                   КАК Номенклатура,
	|	ТаблицаКОформлению.Характеристика                                 КАК Характеристика,
	|	ТаблицаКОформлению.Номенклатура.ТипНоменклатуры                   КАК ТипНоменклатуры,
	|	ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка)                      КАК Назначение,
	|	ЗНАЧЕНИЕ(Справочник.СтруктураПредприятия.ПустаяСсылка)            КАК Получатель,
	|	ЗНАЧЕНИЕ(Справочник.РесурсныеСпецификации.ПустаяСсылка)           КАК Спецификация,
	|	ЗНАЧЕНИЕ(Справочник.УпаковкиЕдиницыИзмерения.ПустаяСсылка)        КАК Упаковка,
	|	0                                                                 КАК ДоляСтоимости,
	|	0                                                                 КАК ДоляСтоимостиНаЕдиницу,
	|	0                                                                 КАК НомерГруппыЗатрат,
	|	ЗНАЧЕНИЕ(Справочник.СтатьиКалькуляции.ПустаяСсылка)               КАК СтатьяКалькуляции,
	|	ЗНАЧЕНИЕ(Перечисление.ТипыСтоимостиВыходныхИзделий.Фиксированная) КАК ТипСтоимости,
	|	0                                                                 КАК Цена,
	|	0                                                                 КАК Сумма,
	|	ТаблицаКОформлению.КОформлению                                    КАК Количество,
	|	ТаблицаКОформлению.Заказано                                       КАК Заказано,
	|	ТаблицаКОформлению.КОформлению                                    КАК КоличествоУпаковок,
	|	ТаблицаКОформлению.Заказано                                       КАК ЗаказаноУпаковок,
	|	ВЫБОР
	|		КОГДА ТаблицаКОформлению.Номенклатура.ИспользованиеХарактеристик В (
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеСДругимВидомНоменклатуры), 
	|				ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры))
	|			ТОГДА ИСТИНА
	|		ИНАЧЕ ЛОЖЬ
	|	КОНЕЦ                                                             КАК ХарактеристикиИспользуются,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Номер КАК НомерРаспоряжения,
	|	ВЫРАЗИТЬ(ТаблицаКОформлению.Распоряжение КАК Документ.ЗаказПереработчику2_5).Дата  КАК ДатаРаспоряжения,
	|	ЛОЖЬ                                                              КАК СписатьНаРасходы,
	|	НЕОПРЕДЕЛЕНО                                                      КАК СтатьяРасходов,
	|	0                                                                 КАК ТипСтатьи,
	|	НЕОПРЕДЕЛЕНО                                                      КАК АналитикаРасходов,
	|	НЕОПРЕДЕЛЕНО                                                      КАК АналитикаАктивовПассивов
	|ИЗ
	|	ТаблицаКОформлению КАК ТаблицаКОформлению
	|ГДЕ
	|	ТаблицаКОформлению.КодСтроки = 0
	|
	|УПОРЯДОЧИТЬ ПО
	|	ДатаРаспоряжения,
	|	НомерРаспоряжения,
	|	Порядок";
	
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса,
		"&ТекстЗапросаКоэффициентУпаковки",
		Справочники.УпаковкиЕдиницыИзмерения.ТекстЗапросаКоэффициентаУпаковки(
		"ТаблицаИзделия.Упаковка",
		"ТаблицаИзделия.Номенклатура"));
	
	ТекстыЗапроса.Добавить(ТекстЗапроса);
	
	Запрос = Новый Запрос;
	Если ОбщегоНазначенияУТ.РежимОтладки() Тогда
		Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	КонецЕсли;
	
	Запрос.Текст = СтрСоединить(ТекстыЗапроса, ОбщегоНазначения.РазделительПакетаЗапросов());
	
	Запрос.УстановитьПараметр("Заказ" ,                Параметры.Заказ);
	Запрос.УстановитьПараметр("Регистратор",           Параметры.ОтчетПереработчика);
	Запрос.УстановитьПараметр("ВыходныеИзделия",       ПолучитьИзВременногоХранилища(Параметры.ТабличныеЧасти.ВыходныеИзделия));
	Запрос.УстановитьПараметр("ПобочныеИзделия",       ПолучитьИзВременногоХранилища(Параметры.ТабличныеЧасти.ПобочныеИзделия));
	Запрос.УстановитьПараметр("ТолькоПобочныеИзделия", Параметры.ТолькоПобочныеИзделия);
	
	ТаблицаТоваров.Загрузить(Запрос.Выполнить().Выгрузить());
	
КонецПроцедуры

&НаКлиенте
Процедура ПеренестиТоварыВДокумент()
	
	ДанныеЗаполнения = ПолучитьВыбраннуюПродукцию();
	
	Закрыть(ДанныеЗаполнения);
	
КонецПроцедуры

#КонецОбласти

#КонецОбласти

Связанные материалы