V82.ОбщиеМодули.ПроцедурыКонтроляОстатков.ТоварыНаСкладахКонтрольОстатков_Реализация_ОтчетОРознПродажах_ЧекККМ C# (CSharp) Method

ТоварыНаСкладахКонтрольОстатков_Реализация_ОтчетОРознПродажах_ЧекККМ() public method

        public void ТоварыНаСкладахКонтрольОстатков_Реализация_ОтчетОРознПродажах_ЧекККМ(/*СтруктураШапкиДокумента, СтруктураПараметров, МетаданныеТабЧасти, Заголовок, Отказ*/)
        {
            //Запрос = Новый Запрос;
            //ЕстьСоставНабора   = Истина;
            //ЕстьКачество       = МетаданныеТабЧасти.Реквизиты.Найти("Качество") <> Неопределено;
            //ЕстьСпособСписания = МетаданныеТабЧасти.Реквизиты.Найти("СпособСписанияОстаткаТоваров")	<> Неопределено;
            //ЕстьСкладВТабЧасти = МетаданныеТабЧасти.Реквизиты.Найти("Склад") <> Неопределено;
            /*// ПОЛУЧИМ УСЛОВИЯ ДЛЯ ВИРТУАЛЬНЫХ ТАБЛИЦ ОСТАТКОВ
            */
            /*ПараметрыУсловий = Новый Структура(
            "ЕстьХарактеристика,ЕстьКачество,ЕстьСоставНабора",
            Истина,
            ЕстьКачество,
            ЕстьСоставНабора);*/
            //ПараметрыУсловий.Вставить("ИспользоватьСерииНоменклатуры", СтруктураПараметров.ИспользоватьСерииНоменклатуры);
            //ПараметрыУсловий.Вставить("ИспользоватьХарактеристикиНоменклатуры", СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры);
            //ПараметрыУсловий.Вставить("ИспользоватьВременнуюТаблицу", Истина);
            if(true/*ЕстьСкладВТабЧасти*/)
            {
                //ПараметрыУсловий.Вставить("ПолеСклад", "Склад");
            }
            /*УсловияТаблицыОстатков = ПолучитьСтруктуруУсловийТаблицыОстатков(
            СтруктураПараметров.ИмяДокумента,
            СтруктураПараметров.ИмяТаблицы,
            Новый Структура("Полное,БезКачества"),
            ПараметрыУсловий);*/
            /*// Текст вложенного запроса, ограничивающего номенклатуру при получении остатков
            */
            if(true/*ЕстьСоставНабора*/)
            {
                /*ТекстЗапросаРеквизитыДокумента = "
            |	(ВЫБРАТЬ
            //строки ТЧ Товары которые не являются набором
            |		Ссылка,
            |		Номенклатура,
            |		%ПОЛЕ_Склад%,
            |		%ПОЛЕ_СпособСписанияОстаткаТоваров% КАК СпособСписанияОстаткаТоваров,
            |		%ПОЛЕ_Качество% КАК Качество,
            |		ХарактеристикаНоменклатуры,
            |		СерияНоменклатуры,
            |		Коэффициент,
            |		%ПОЛЕ_ЗаказПокупателя% КАК ЗаказПокупателя,
            |		Количество
            |		ИЗ
            |			Документ." + СтруктураПараметров.ИмяТаблицы + "
            |		ГДЕ
            |			Ссылка = &ДокументСсылка
            |			И НЕ Номенклатура.Комплект
            |
            //строки ТЧ СоставНабора
            |		ОБЪЕДИНИТЬ ВСЕ
            |
            |		ВЫБРАТЬ
            |		Ссылка,
            |		Номенклатура,
            |		Склад,
            |		СпособСписанияОстаткаТоваров,
            |		Качество,
            |		ХарактеристикаНоменклатуры,
            |		СерияНоменклатуры,
            |		Коэффициент,
            |		ЗаказПокупателя,
            |		Количество
            |		ИЗ
            |			(ВЫБРАТЬ
            |				ДокНаб.Ссылка,
            |				ДокНаб.Номенклатура,
            |               %ПОЛЕ_Набор_Склад% КАК Склад,
            |				%ПОЛЕ_Набор_СпособСписанияОстаткаТоваров% КАК СпособСписанияОстаткаТоваров,
            |				%ПОЛЕ_Набор_Качество% КАК Качество,
            |				ДокНаб.ХарактеристикаНоменклатуры,
            |				ДокНаб.СерияНоменклатуры,
            |				ДокНаб.ЕдиницаИзмерения.Коэффициент КАК Коэффициент,
            |				%ПОЛЕ_Набор_ЗаказПокупателя% КАК ЗаказПокупателя,
            |				ДокНаб.Количество * ДокТов.Количество КАК Количество
            |			ИЗ
            |				Документ." + СтруктураПараметров.ИмяДокумента + ".СоставНабора   КАК ДокНаб
            |				ЛЕВОЕ СОЕДИНЕНИЕ Документ." + СтруктураПараметров.ИмяТаблицы + " КАК ДокТов
            |					ПО ДокТов.КлючСтроки = ДокНаб.КлючСтроки
            |					 И ДокТов.Ссылка     = &ДокументСсылка
            |			ГДЕ
            |				ДокНаб.Ссылка = &ДокументСсылка
            |			) КАК Набор
            |
            |		)
            |";*/
            }
            /*//Если ЕстьСоставНабора Тогда
            */
            /*// Установим параметры запроса
            */
            //ТоварыНаСкладахЗаполнитьОбщиеПараметрыЗапроса(Запрос,СтруктураШапкиДокумента);
            //Запрос.УстановитьПараметр("ПустойЗаказПокупателя", Документы.ЗаказПокупателя.ПустаяСсылка());
            //Запрос.УстановитьПараметр("ПустойСклад",           Справочники.Склады.ПустаяСсылка());
            //Запрос.УстановитьПараметр("ПустойСпособСписания",  Перечисления.СпособыСписанияОстаткаТоваров.ПустаяСсылка());
            //Запрос.УстановитьПараметр("ПустоеКачество",        Справочники.Качество.ПустаяСсылка());
            /*ТекстЗапроса = УсловияТаблицыОстатков.ВременнаяТаблица + "
            |;
            |ВЫБРАТЬ // Запрос, контролирующий остатки на складах
            |	Док.Номенклатура                                       		КАК Номенклатура,
            |	Док.Номенклатура.Представление                         		КАК НоменклатураПредставление,
            |	Док.Номенклатура.ЕдиницаХраненияОстатков.Представление 		КАК ЕдиницаХраненияОстатковПредставление,
            |   Док.ХарактеристикаНоменклатуры 								КАК ХарактеристикаНоменклатуры,
            |	ПРЕДСТАВЛЕНИЕ(Док.ХарактеристикаНоменклатуры) 				КАК ХарактеристикаНоменклатурыПредставление,
            |   Док.СерияНоменклатуры 										КАК СерияНоменклатуры,
            |	ПРЕДСТАВЛЕНИЕ(Док.СерияНоменклатуры) 						КАК СерияНоменклатурыПредставление,
            |   %ПОЛЕ_Док_Склад%                                            КАК Склад,
            |   %ПОЛЕ_Док_Качество% 										КАК Качество,
            |   СУММА(ВЫРАЗИТЬ(Док.Количество * Док.Коэффициент /Док.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Число(15,3)))
            |																КАК ДокументКоличество,
            |	ЕстьNull(МАКСИМУМ(ОстаткиБезСерии.КоличествоОстаток),0)     КАК ОстатокБезСерииКоличество,
            |	ЕстьNull(МАКСИМУМ(Остатки.КоличествоОстаток),0)             КАК ОстатокКоличество,
            |	ЕстьNull(МАКСИМУМ(Резервы.КоличествоОстаток),0)             КАК РезервыКоличество,
            |	%ПОЛЕ_РезервыПоСерииКоличество%       						КАК РезервыПоСерииКоличество,
            |	ЕстьNull(МАКСИМУМ(ТоварыКПередаче.КоличествоОстаток),0)     КАК КПередачеКоличество,
            |	ЕстьNull(МАКСИМУМ(ТоварыКПередачеБезСерии.КоличествоОстаток),0) КАК КПередачеБезСерииКоличество,
            |	%ПОЛЕ_РезервыПоДокументуКоличество% 						КАК РезервыПоДокументуКоличество,
            |	%ПОЛЕ_РезервыПоДокументуБезСерии_Количество% 				КАК РезервыПоДокументуБезСерииКоличество,
            |	0 															КАК КПолучению,
            |	0                 											КАК КПолучениюПоДокументуКоличество,
            |	0 															КАК КПередачеПоДокументуКоличество,
            |	0              												КАК КПередачеПоДокументуБезСерииКоличество

            |ИЗ
            |	"+ ТекстЗапросаРеквизитыДокумента + " КАК Док
            |
            //таблица остатков товаров с учетом серий
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыНаСкладах.Остатки(, " + УсловияТаблицыОстатков.Полное + ") КАК Остатки
            |ПО
            |	Остатки.Склад = %СОЕДИНЕНИЕ_Склад_Остатки%
            |	И Остатки.Номенклатура = Док.Номенклатура
            |	И Остатки.ХарактеристикаНоменклатуры = %СОЕДИНЕНИЕ_Характеристика_Остатки%
            |	И Остатки.Качество = %СОЕДИНЕНИЕ_Качество_Остатки%
            |	И Остатки.СерияНоменклатуры = %СОЕДИНЕНИЕ_Серия_Остатки%
            |
            //таблица остатков товаров без учета серий
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыНаСкладах.Остатки(, " + УсловияТаблицыОстатков.Полное + ") КАК ОстаткиБезСерии
            |ПО
            |	Док.Номенклатура = ОстаткиБезСерии.Номенклатура
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = ОстаткиБезСерии.ХарактеристикаНоменклатуры", "") + "
            | //СОЕДИНЕНИЕ_Качество_ОстаткиБезСерии
            | //СОЕДИНЕНИЕ_Склад_ОстаткиБезСерии
            |
            //таблица товаров в резерве на складе без учета серий номенклатуры

            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(, " + УсловияТаблицыОстатков.БезКачества + ") КАК Резервы
            |ПО
            |	Док.Номенклатура = Резервы.Номенклатура
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = Резервы.ХарактеристикаНоменклатуры", "") + "
            | //СОЕДИНЕНИЕ_Склад_Резервы
            | //СОЕДИНЕНИЕ_Качество_Резервы

            //таблица товаров в резерве на складе с учетом серий номенклатуры
            |"+?(СтруктураПараметров.ИспользоватьУказаниеСерийНоменклатурыПриРезервировании,"
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(, " + УсловияТаблицыОстатков.БезКачества + ") КАК РезервыПоСерии
            |ПО
            |	Док.Номенклатура = РезервыПоСерии.Номенклатура
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры 	= РезервыПоСерии.ХарактеристикаНоменклатуры", "") + "
            |	" + ?(СтруктураПараметров.ИспользоватьСерииНоменклатуры, "И Док.СерияНоменклатуры = РезервыПоСерии.СерияНоменклатуры", "") + "
            | //СОЕДИНЕНИЕ_Склад_РезервыПоСерии
            | //СОЕДИНЕНИЕ_Качество_Резервы
            |","")+"
            |"+?(СтруктураПараметров.ИмяДокумента = "РеализацияТоваровУслуг","
            //таблица резервов по документу: количество, которое списывается за счет резерва (эта часть требуется только для документа Реализация)
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	(ВЫБРАТЬ ТЧ.Номенклатура,
            |	ТЧ.Склад,
            |	ТЧ.ХарактеристикаНоменклатуры
            |	//ПОЛЕ_ТЧ_Серия
            |	//количество, списываемое за счет резерва, не может превышать количество указанное в документе
            |	,ВЫБОР КОГДА Сумма(ТЧ.ДокументКоличество)<Сумма(ВремРезервы.КоличествоОстаток) ТОГДА
            |   	Сумма(ТЧ.ДокументКоличество)
            |	ИНАЧЕ Сумма(ВремРезервы.КоличествоОстаток)
            |	КОНЕЦ КАК КоличествоОстаток
            |	ИЗ
            |		//сгруппированная табличная часть документа с отбором строк которые списываются из резерва
            |		(ВЫБРАТЬ
            |			Номенклатура,
            |			Склад,
            |			ЗаказПокупателя,
            |			ХарактеристикаНоменклатуры
            |			//ПОЛЕ_Серия
            |			,СУММА(ВЫРАЗИТЬ(Количество * Коэффициент /Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Число(15,3))) КАК ДокументКоличество
            |		ИЗ
            |			" + ТекстЗапросаРеквизитыДокумента +" КАК ВремДок
            |		ГДЕ  ВремДок.Ссылка = &ДокументСсылка
            |			И ВремДок.ЗаказПокупателя <> &ПустойЗаказПокупателя
            |			И ВремДок.СпособСписанияОстаткаТоваров = &ИзРезерва
            |			//СОЕДИНЕНИЕ_РезервыПоДокументу_ДокументРезерва
            |		СГРУППИРОВАТЬ ПО
            |			Номенклатура,
            |			Склад,
            |			ЗаказПокупателя,
            |			ХарактеристикаНоменклатуры
            |			//ПОЛЕ_Серия
            |		) КАК ТЧ
            |	ЛЕВОЕ СОЕДИНЕНИЕ
            |		РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(, " + УсловияТаблицыОстатков.БезКачества + ") КАК ВремРезервы
            |	ПО ТЧ.Номенклатура = ВремРезервы.Номенклатура
            |		И ТЧ.Склад = ВремРезервы.Склад
            |		И ТЧ.ЗаказПокупателя = ВремРезервы.ДокументРезерва
            |		" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И ТЧ.ХарактеристикаНоменклатуры = ВремРезервы.ХарактеристикаНоменклатуры", "") + "
            |		//СОЕДИНЕНИЕ_Серия_ВремРезервы
            |	СГРУППИРОВАТЬ ПО
            |		ТЧ.Номенклатура,
            |		ТЧ.Склад,
            |		ТЧ.ХарактеристикаНоменклатуры
            |		//ПОЛЕ_ТЧ_Серия
            |) КАК РезервыПоДокументу
            |ПО
            |	Док.Номенклатура                 = РезервыПоДокументу.Номенклатура
            |	И Док.Склад = РезервыПоДокументу.Склад
            |	И Док.ЗаказПокупателя <> &ПустойЗаказПокупателя И Док.СпособСписанияОстаткаТоваров = &ИзРезерва
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = РезервыПоДокументу.ХарактеристикаНоменклатуры", "") + "
            |	//СОЕДИНЕНИЕ_Серия_РезервыПоДокументу

            //таблица резервов по документу без учета серий: количество, которое списывается за счет резерва
            |//ЗАПРОС_РезервыПоДокументуБезСерии

            |","")+"

            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(, " + УсловияТаблицыОстатков.Полное + ") КАК ТоварыКПередаче
            |ПО
            |	Док.Номенклатура = ТоварыКПередаче.Номенклатура
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = ТоварыКПередаче.ХарактеристикаНоменклатуры", "") + "
            |	" + ?(СтруктураПараметров.ИспользоватьСерииНоменклатуры, "И Док.СерияНоменклатуры = ТоварыКПередаче.СерияНоменклатуры", "") + "
            |	//СОЕДИНЕНИЕ_Склад_ТоварыКПередаче
            |	//СОЕДИНЕНИЕ_Качество_ТоварыКПередаче

            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(, " + УсловияТаблицыОстатков.Полное + ") КАК ТоварыКПередачеБезСерии
            |ПО
            |	Док.Номенклатура = ТоварыКПередачеБезСерии.Номенклатура
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = ТоварыКПередачеБезСерии.ХарактеристикаНоменклатуры", "") + "
            |	//СОЕДИНЕНИЕ_Склад_ТоварыКПередачеБезСерии
            |	//СОЕДИНЕНИЕ_Качество_ТоварыКПередачеБезСерии
            |
            |ГДЕ
            |	Док.Ссылка  =  &ДокументСсылка
            |	И Не Док.Номенклатура.Комплект
            |	И Не Док.Номенклатура.Услуга
            // остатки по услугам контролировать не надо.
            |	//УСЛОВИЕ_Склад
            |СГРУППИРОВАТЬ ПО
            |
            |	Док.Номенклатура,
            |   Док.ХарактеристикаНоменклатуры,
            |   Док.СерияНоменклатуры,
            |   %ПОЛЕ_Док_Качество%,
            |    %ПОЛЕ_Док_Склад%
            |
            |ДЛЯ ИЗМЕНЕНИЯ РегистрНакопления.ТоварыНаСкладах.Остатки // Блокирующие чтение таблицы остатков регистра для разрешения коллизий многопользовательской работы
            |
            |ИТОГИ СУММА (ДокументКоличество), МАКСИМУМ(ОстатокБезСерииКоличество), МАКСИМУМ(РезервыКоличество),
            |         МАКСИМУМ(КПередачеКоличество), МАКСИМУМ(РезервыПоДокументуКоличество), Максимум(РезервыПоСерииКоличество),
            |		Максимум(КПередачеБезСерииКоличество), МАКСИМУМ(РезервыПоДокументуБезСерииКоличество),
            |		Максимум(КПолучению), Максимум(КПередачеПоДокументуКоличество), Максимум(КПередачеПоДокументуБезСерииКоличество), Максимум(КПолучениюПоДокументуКоличество)
            |ПО Номенклатура,
            |   ХарактеристикаНоменклатуры,
            |    Склад
            |	//ПОЛЕ_Качество
            |";*/
            //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_РезервыПоСерииКоличество%",	?(СтруктураПараметров.ИспользоватьУказаниеСерийНоменклатурыПриРезервировании,"ЕстьNull(МАКСИМУМ(РезервыПоСерии.КоличествоОстаток),0)","0"));
            //ТекстЗапросаРезервыПоДокументуБезСерии = "";
            if(true/*СтруктураПараметров.ИмяДокумента = "РеализацияТоваровУслуг"*/)
            {
                /*//есть реквизит ЗаказПокупателя, документ может списывать товар из резерва
            */
                if(true/*СтруктураПараметров.ИспользоватьУказаниеСерийНоменклатурыПриРезервировании*/)
                {
                    /*ТекстЗапросаРезервыПоДокументуБезСерии = "
            |ЛЕВОЕ СОЕДИНЕНИЕ
            |	(ВЫБРАТЬ ТЧ.Номенклатура,
            |	ТЧ.Склад,
            |	ТЧ.ХарактеристикаНоменклатуры
            |	//количество, списываемое за счет резерва, не может превышать количество указанное в документе
            |	,ВЫБОР КОГДА Сумма(ТЧ.ДокументКоличество)<Сумма(ВремРезервы.КоличествоОстаток) ТОГДА
            |   	Сумма(ТЧ.ДокументКоличество)
            |	ИНАЧЕ Сумма(ВремРезервы.КоличествоОстаток)
            |	КОНЕЦ КАК КоличествоОстаток
            |	ИЗ
            |		//сгруппированная табличная часть документа с отбором строк которые списываются из резерва
            |		(ВЫБРАТЬ
            |			Номенклатура,
            |			Склад,
            |			ЗаказПокупателя,
            |			ХарактеристикаНоменклатуры
            |			,СУММА(ВЫРАЗИТЬ(Количество * Коэффициент /Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Число(15,3))) КАК ДокументКоличество
            |		ИЗ
            |			" + ТекстЗапросаРеквизитыДокумента +" КАК ВремДок
            |		ГДЕ  ВремДок.Ссылка = &ДокументСсылка
            |			И ВремДок.ЗаказПокупателя <> &ПустойЗаказПокупателя и ВремДок.СпособСписанияОстаткаТоваров = &ИзРезерва
            |		СГРУППИРОВАТЬ ПО
            |			Номенклатура,
            |			Склад,
            |			ЗаказПокупателя,
            |			ХарактеристикаНоменклатуры
            |		) КАК ТЧ
            |	ЛЕВОЕ СОЕДИНЕНИЕ
            |		РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(, " + УсловияТаблицыОстатков.БезКачества + ") КАК ВремРезервы
            |	ПО ТЧ.Номенклатура = ВремРезервы.Номенклатура
            |		И ТЧ.Склад = ВремРезервы.Склад
            |		И ТЧ.ЗаказПокупателя = ВремРезервы.ДокументРезерва
            |		" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И ТЧ.ХарактеристикаНоменклатуры = ВремРезервы.ХарактеристикаНоменклатуры", "") + "
            |	СГРУППИРОВАТЬ ПО
            |		ТЧ.Номенклатура,
            |		ТЧ.Склад,
            |		ТЧ.ХарактеристикаНоменклатуры
            |) КАК РезервыПоДокументуБезСерии
            |ПО
            |	Док.Номенклатура                 = РезервыПоДокументуБезСерии.Номенклатура
            |	И Док.Склад = РезервыПоДокументуБезСерии.Склад
            |	И Док.ЗаказПокупателя <> &ПустойЗаказПокупателя И Док.СпособСписанияОстаткаТоваров = &ИзРезерва
            |	" + ?(СтруктураПараметров.ИспользоватьХарактеристикиНоменклатуры, "И Док.ХарактеристикаНоменклатуры = РезервыПоДокументуБезСерии.ХарактеристикаНоменклатуры", "");*/
                    //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//ЗАПРОС_РезервыПоДокументуБезСерии",	ТекстЗапросаРезервыПоДокументуБезСерии);
                    /*//резервы по документу имеет смысл определять с точностью до серии
            */
                    //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//ПОЛЕ_ТЧ_Серия",							",ТЧ.СерияНоменклатуры");
                    //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//ПОЛЕ_Серия",								",СерияНоменклатуры");
                    //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//СОЕДИНЕНИЕ_РезервыПоДокументу_ДокументРезерва", "И ЕСТЬNULL(ВЫРАЗИТЬ(ВремДок.ЗаказПокупателя КАК Документ.ЗаказПокупателя).ДоговорКонтрагента.ОбособленныйУчетТоваровПоЗаказамПокупателей, ИСТИНА)");
                    if(true/*СтруктураПараметров.ИспользоватьСерииНоменклатуры*/)
                    {
                        //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//СОЕДИНЕНИЕ_Серия_ВремРезервы",			"И ТЧ.СерияНоменклатуры = ВремРезервы.СерияНоменклатуры");
                        //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"//СОЕДИНЕНИЕ_Серия_РезервыПоДокументу",	"И Док.СерияНоменклатуры = РезервыПоДокументу.СерияНоменклатуры");
                    }
                }
                //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_РезервыПоДокументуКоличество%",		"ЕстьNull(Максимум(РезервыПоДокументу.КоличествоОстаток),0)");
                //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_ЗаказПокупателя%",					"ЗаказПокупателя");
                //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_Набор_ЗаказПокупателя%",				"ДокТов.ЗаказПокупателя");
            }
            //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_РезервыПоДокументуБезСерии_Количество%",		?(ТекстЗапросаРезервыПоДокументуБезСерии<>"",	"ЕстьNull(МАКСИМУМ(РезервыПоДокументуБезСерии.КоличествоОстаток),0)",	"0"));
            if(true/*ЕстьКачество*/)
            {
                //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_Качество%",						"Качество");
                /*ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_Набор_Качество%",				"ВЫБОР КОГДА ДокНаб.Качество = &ПустоеКачество ТОГДА ДокТов.Качество
                                                                                        |ИНАЧЕ ДокНаб.Качество КОНЕЦ");*/
            }
            if(true/*ЕстьСпособСписания*/)
            {
                /*ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_Набор_СпособСписанияОстаткаТоваров%",	"ВЫБОР КОГДА ДокНаб.СпособСписанияОстаткаТоваров = &ПустойСпособСписания ТОГДА ДокТов.СпособСписанияОстаткаТоваров
                                                                                                |ИНАЧЕ ДокНаб.СпособСписанияОстаткаТоваров КОНЕЦ");*/
                //ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"%ПОЛЕ_СпособСписанияОстаткаТоваров%",			" СпособСписанияОстаткаТоваров");
            }
            //ДополнитьТекстЗапроса(ТекстЗапроса,СтруктураПараметров,Истина,,Истина,,ложь,ЕстьКачество,ЕстьСкладВТабЧасти);
            //Запрос.Текст = ТекстЗапроса;
            //РезультатЗапроса = Запрос.Выполнить();
            //Выборка = РезультатЗапроса.Выбрать();
            //ТоварыНаСкладахОбработатьРезультатЗапроса(Выборка,истина,ТекстЗапросаРезервыПоДокументуБезСерии<>"",СтруктураПараметров.ИспользоватьУказаниеСерийНоменклатурыПриРезервировании,Заголовок,Отказ);
        }
ПроцедурыКонтроляОстатков