V82.ОбщиеМодули.ПроцедурыКонтроляОстатков.СвободныеОстаткиКонтрольОстатков C# (CSharp) Method

СвободныеОстаткиКонтрольОстатков() public method

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