V82.ОбщиеМодули.СправкиПоНДФЛ.ОбновитьИтогиТекущейСправки C# (CSharp) Method

ОбновитьИтогиТекущейСправки() public method

        public void ОбновитьИтогиТекущейСправки(/*НомерСправки = Неопределено, СтатусНалогоплательщика, СведенияОДоходах, СведенияОВычетах, СуммыНалогов*/)
        {
            //Запрос = Новый Запрос;
            /*Запрос.Текст =
            "ВЫБРАТЬ
            |	СведенияОДоходах.СуммаДохода,
            |	СведенияОДоходах.СуммаВычета,
            |	СведенияОДоходах.КодДохода
            |ПОМЕСТИТЬ ВТСведенияОДоходах
            |ИЗ
            |	&Доходы КАК СведенияОДоходах
            |;
            |
            |////////////////////////////////////////////////////////////////////////////////
            |ВЫБРАТЬ
            |	Сведения.СуммаВычета
            |ПОМЕСТИТЬ ВТСведенияОВычетах
            |ИЗ
            |	&Вычеты КАК Сведения
            |;
            |
            |////////////////////////////////////////////////////////////////////////////////
            |ВЫБРАТЬ
            |	ВЫБОР
            |		КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка13)
            |			ТОГДА ВЫБОР
            |					КОГДА &Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыНалогоплательщиковПоНДФЛ.НеРезидент)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка30)
            |					ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка13)
            |				КОНЕЦ
            |		КОГДА &Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыНалогоплательщиковПоНДФЛ.Резидент)
            |			ТОГДА ВЫБОР
            |					КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка09)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка09)
            |					КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка35)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка35)
            |					ИНАЧЕ """"""""
            |				КОНЕЦ
            |		КОГДА Сведения.КодДохода = ЗНАЧЕНИЕ(Справочник.ДоходыНДФЛ.Код1010)
            |			ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка15)
            |		ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка30)
            |	КОНЕЦ КАК Ставка,
            |	СУММА(Сведения.ОблагаемаяСуммаДохода) КАК ОблагаемаяСуммаДохода,
            |	СУММА(Сведения.ОбщаяСуммаДохода) КАК ОбщаяСуммаДохода
            |ИЗ
            |	(ВЫБРАТЬ
            |		СведенияОДоходах.СуммаДохода - СведенияОДоходах.СуммаВычета КАК ОблагаемаяСуммаДохода,
            |		ДоходыНДФЛ.СтавкаНалогообложенияРезидента КАК СтавкаНалогообложенияРезидента,
            |		СведенияОДоходах.СуммаДохода КАК ОбщаяСуммаДохода,
            |		СведенияОДоходах.КодДохода КАК КодДохода
            |	ИЗ
            |		ВТСведенияОДоходах КАК СведенияОДоходах
            |			ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоходыНДФЛ КАК ДоходыНДФЛ
            |			ПО СведенияОДоходах.КодДохода = ДоходыНДФЛ.Ссылка
            |
            |	ОБЪЕДИНИТЬ ВСЕ
            |
            |	ВЫБРАТЬ
            |		-СведенияОВычетах.СуммаВычета,
            |		ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка13),
            |		0,
            |		ЗНАЧЕНИЕ(Справочник.ДоходыНДФЛ.КодДоходаПоУмолчанию)
            |	ИЗ
            |		ВТСведенияОВычетах КАК СведенияОВычетах) КАК Сведения
            |
            |СГРУППИРОВАТЬ ПО
            |	ВЫБОР
            |		КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка13)
            |			ТОГДА ВЫБОР
            |					КОГДА &Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыНалогоплательщиковПоНДФЛ.НеРезидент)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка30)
            |					ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка13)
            |				КОНЕЦ
            |		КОГДА &Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыНалогоплательщиковПоНДФЛ.Резидент)
            |			ТОГДА ВЫБОР
            |					КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка09)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка09)
            |					КОГДА Сведения.СтавкаНалогообложенияРезидента = ЗНАЧЕНИЕ(Перечисление.НДФЛСтавкиНалогообложенияРезидента.Ставка35)
            |						ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка35)
            |					ИНАЧЕ """"""""
            |				КОНЕЦ
            |		КОГДА Сведения.КодДохода = ЗНАЧЕНИЕ(Справочник.ДоходыНДФЛ.Код1010)
            |			ТОГДА ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка15)
            |		ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.НДФЛСтавки.Ставка30)
            |	КОНЕЦ";*/
            //Запрос.УстановитьПараметр("Доходы", СведенияОДоходах);
            //Запрос.УстановитьПараметр("Вычеты", СведенияОВычетах);
            //Запрос.УстановитьПараметр("Статус", СтатусНалогоплательщика);
            //Запрос.УстановитьПараметр("НеРезидент", СтатусНалогоплательщика = Перечисления.СтатусыНалогоплательщиковПоНДФЛ.НеРезидент);
            //СтруктураПоиска = Новый Структура();
            if(true/*НомерСправки <> Неопределено*/)
            {
                //СтруктураПоиска.Вставить("НомерСправки", НомерСправки);
            }
            //СтруктураПоиска.Вставить("Ставка");
            //МассивСтавок = Новый Массив;
            //Выборка = Запрос.Выполнить().Выбрать();
            while(true/*Выборка.Следующий()*/)
            {
                //МассивСтавок.Добавить(Выборка.Ставка);
                //ЗаполнитьЗначенияСвойств(СтруктураПоиска, Выборка);
                //СтрокиИтогов = СуммыНалогов.НайтиСтроки(СтруктураПоиска);
                if(true/*СтрокиИтогов.Количество() > 0*/)
                {
                    //СтрокаИтогов = СтрокиИтогов[0];
                }
                //ЗаполнитьЗначенияСвойств(СтрокаИтогов, Выборка);
            }
            if(true/*НомерСправки <> Неопределено*/)
            {
                //СтруктураПоиска.Удалить("Ставка");
                //СтрокиИтогов = СуммыНалогов.НайтиСтроки(СтруктураПоиска);
            }
        }