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

ТоварыВРезервеНаСкладахКонтрольОстатков_СкладВТабЧасти_ЗаказВТабЧасти() public method

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