Параметры начисления налога на имущество / Форма документа / Модуль формы

файл
#Область ОписаниеПеременных

&НаКлиенте
Перем СтруктураСохраняемыхРеквизитов;

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

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

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

	ИнтеграцияС1СДокументооборотБазоваяФункциональность.ПриСозданииНаСервере(ЭтотОбъект);
	
	СобытияФорм.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
	
	#КонецОбласти
	
КонецПроцедуры

&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)

	// СтандартныеПодсистемы.УправлениеДоступом
	УправлениеДоступом.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
	// Конец СтандартныеПодсистемы.УправлениеДоступом
	
	// Обработчик механизма "ДатыЗапретаИзменения"
	ДатыЗапретаИзменения.ОбъектПриЧтенииНаСервере(ЭтаФорма, ТекущийОбъект);
	
	ПриЧтенииСозданииНаСервере();
	
	ПараметрыВыбораСтатейИАналитик = Документы.ПараметрыНачисленияНалогаНаИмущество.ПараметрыВыбораСтатейИАналитик();
	ДоходыИРасходыСервер.ПриЧтенииНаСервере(ЭтотОбъект, ПараметрыВыбораСтатейИАналитик);
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
	
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)

	СтруктураСохраняемыхРеквизитов = Новый Структура;
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект);
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

	// СтандартныеПодсистемы.РаботаСФайлами
	РаботаСФайламиКлиент.ПриОткрытии(ЭтотОбъект, Отказ);
	// Конец СтандартныеПодсистемы.РаботаСФайлами
	
КонецПроцедуры

&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
	
	СобытияФормКлиент.ПередЗаписью(ЭтотОбъект, Отказ, ПараметрыЗаписи);
	
КонецПроцедуры

&НаСервере
Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи)

	// СтандартныеПодсистемы.УправлениеДоступом
	УправлениеДоступом.ПослеЗаписиНаСервере(ЭтотОбъект, ТекущийОбъект, ПараметрыЗаписи);
	// Конец СтандартныеПодсистемы.УправлениеДоступом
	
	ЗаполнитьЗначенияРеквизитовФормы();
	ЗаполнитьКонецДействияПараметров();
	
	ДоходыИРасходыСервер.ПослеЗаписиНаСервере(ЭтотОбъект);
	
КонецПроцедуры

&НаКлиенте
Процедура ПослеЗаписи(ПараметрыЗаписи)
	
	Оповестить("Запись_ПараметрыНачисленияНалогаНаИмущество", ПараметрыЗаписи, Объект.Ссылка);
	ОбщегоНазначенияУТКлиент.ОповеститьОЗаписиДокументаВЖурнал();
	ВнеоборотныеАктивыКлиент.ОповеститьОЗаписиДокументаВЖурналОС();
	
	ОбщегоНазначенияУТКлиент.ВыполнитьДействияПослеЗаписи(ЭтотОбъект, Объект, ПараметрыЗаписи);
	
	// СтандартныеПодсистемы.ПодключаемыеКоманды
	Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПодключаемыеКоманды") Тогда
		МодульПодключаемыеКомандыКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ПодключаемыеКомандыКлиент");
		МодульПодключаемыеКомандыКлиент.ПослеЗаписи(ЭтотОбъект, Объект, ПараметрыЗаписи);
	КонецЕсли;
	// Конец СтандартныеПодсистемы.ПодключаемыеКоманды
	
КонецПроцедуры

&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
	
	// СтандартныеПодсистемы.РаботаСФайлами
	РаботаСФайламиКлиент.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия);
	// Конец СтандартныеПодсистемы.РаботаСФайлами
	
КонецПроцедуры

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

#Область ОбработчикиСобытийЭлементовШапкиФормы

&НаКлиенте
Процедура ДатаПриИзменении(Элемент)
	
	ВнеоборотныеАктивыКлиент.УстановитьТекущееВремяДляПрошлойДаты(Объект.Дата);

	ДатаПриИзмененииНаСервере();
	
КонецПроцедуры

&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)
	
	ОрганизацияПриИзмененииНаСервере();
	
КонецПроцедуры

&НаКлиенте
Процедура РежимИсправленияСПрошлойДатыПриИзменении(Элемент)
	
	Если НЕ Объект.РежимИсправленияСПрошлойДаты Тогда
		Объект.НачалоДействия = '000101010000';		
	КонецЕсли;
	
	НастроитьЗависимыеЭлементыФормы(Элемент.Имя);

КонецПроцедуры

&НаКлиенте
Процедура НачалоДействияПриИзменении(Элемент)
	РассчитатьСниженнуюСтавку();
	ЗаполнитьКонецДействияПараметров();
КонецПроцедуры

&НаКлиенте
Процедура ПорядокНалогообложенияПриИзменении(Элемент)
	
	СписокРеквизитов = "ПорядокНалогообложения";
	
	Объект.НеПодлежитНалогообложению = ?(ПорядокНалогообложения = 0, Истина, Ложь);
	
	Если Объект.НеПодлежитНалогообложению Тогда
		Объект.ОтражениеРасходов.Очистить();
	КонецЕсли; 
	
	НастроитьЗависимыеЭлементыФормы(СписокРеквизитов);
	
КонецПроцедуры

&НаКлиенте
Процедура НалоговаяБазаПриИзменении(Элемент)
	
	Если Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость") Тогда
		Объект.КодВидаИмущества = "11";
	Иначе
		Объект.КодВидаИмущества = "03";
	КонецЕсли;
	
	НастроитьЗависимыеЭлементыФормы("НалоговаяБаза,КодВидаИмущества");
	
КонецПроцедуры

&НаКлиенте
Процедура КодВидаИмуществаПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы(Элемент.Имя);
	
КонецПроцедуры

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

&НаКлиенте
Процедура НалоговыйОрганПриИзменении(Элемент)
	
	Если ЗначениеЗаполнено(Объект.НалоговыйОрган) Тогда
		НалоговыйОрганПриИзмененииНаСервере();
	КонецЕсли;
	
КонецПроцедуры

&НаСервере
Процедура НалоговыйОрганПриИзмененииНаСервере()
	Если ЗначениеЗаполнено(Объект.НалоговыйОрган) Тогда
		РеквизитыНалоговогоОргана = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.НалоговыйОрган, "КодПоОКТМО, КодПоОКАТО");
		КодПоОКТМО_ДругойНалоговыйОрган = РеквизитыНалоговогоОргана.КодПоОКТМО;
		КодПоОКАТО_ДругойНалоговыйОрган = РеквизитыНалоговогоОргана.КодПоОКАТО;
		
		Объект.КодПоОКТМО = КодПоОКТМО_ДругойНалоговыйОрган;
		Объект.КодПоОКАТО = КодПоОКАТО_ДругойНалоговыйОрган;
		
	КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура КодПоОКТМО_ДругойКодПриИзменении(Элемент)
	
	Объект.КодПоОКТМО = КодПоОКТМО_ДругойКод;
	
КонецПроцедуры

&НаКлиенте
Процедура КодПоОКАТО_ДругойКодПриИзменении(Элемент)
	Объект.КодПоОКАТО = КодПоОКАТО_ДругойКод;
КонецПроцедуры

&НаКлиенте
Процедура КодПоОКТМО_ДругойНалоговыйОрганПриИзменении(Элемент)
	Объект.КодПоОКТМО = КодПоОКТМО_ДругойНалоговыйОрган;
КонецПроцедуры

&НаКлиенте
Процедура КодПоОКАТО_ДругойНалоговыйОрганПриИзменении(Элемент)
	Объект.КодПоОКАТО = КодПоОКАТО_ДругойНалоговыйОрган;
КонецПроцедуры

&НаКлиенте
Процедура КодВидаИмуществаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	
	Если Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость") Тогда
		НазваниеМакета = "КодыВидаИмуществаРаздел3";
	Иначе
		НазваниеМакета = "КодыВидаИмуществаРаздел2";
	КонецЕсли;
	
	ВыборКода("КодВидаИмущества", НазваниеМакета);

КонецПроцедуры

&НаКлиенте
Процедура КБКНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	ВыборКода("КБК", "КБК");
	
КонецПроцедуры

&НаКлиенте
Процедура ОснованиеЛьготыПриИзменении(Элемент)
	РассчитатьСниженнуюСтавку();
	НастроитьЗависимыеЭлементыФормы(Элемент.Имя);
КонецПроцедуры

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

#Область ОбработчикиСобытийЭлементовТаблицыФормыОтражениеРасходов

&НаКлиенте
Процедура ОтражениеРасходовСтатьяРасходовПриИзменении(Элемент)
	
	ДоходыИРасходыКлиентСервер.СтатьяПриИзменении(ЭтотОбъект, Элемент);
	
КонецПроцедуры

&НаКлиенте
Процедура ОтражениеРасходовСтатьяРасходовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	
	ДоходыИРасходыКлиент.НачалоВыбораСтатьи(ЭтотОбъект, Элемент, СтандартнаяОбработка);
	
КонецПроцедуры

&НаКлиенте
Процедура ОтражениеРасходовАналитикаРасходовНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	
	ДоходыИРасходыКлиент.НачалоВыбораАналитикиРасходов(ЭтотОбъект, Элемент, СтандартнаяОбработка);
	
КонецПроцедуры

&НаКлиенте
Процедура ОтражениеРасходовАналитикаРасходовАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка)
	
	ДоходыИРасходыКлиент.АвтоПодборАналитикиРасходов(ЭтотОбъект, Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, СтандартнаяОбработка);
	
КонецПроцедуры

&НаКлиенте
Процедура ОтражениеРасходовАналитикаРасходовОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, СтандартнаяОбработка)
	
	ДоходыИРасходыКлиент.ОкончаниеВводаТекстаАналитикиРасходов(ЭтотОбъект, Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, СтандартнаяОбработка);
	
КонецПроцедуры

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

#Область ОбработчикиСобытийЭлементовТаблицыФормыОС

&НаКлиенте
Процедура ОСОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
	
	ВнеоборотныеАктивыКлиентСервер.ОбработкаВыбораЭлемента(Объект.ОС, "ОсновноеСредство", ВыбранноеЗначение);
	ЗаполнитьКонецДействияПараметров();
	
КонецПроцедуры

&НаКлиенте
Процедура ОСВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	ТекущиеДанные = Элементы.ОС.ТекущиеДанные;
	
	Если Поле = Элементы.ОСКонецДействия
		И ТекущиеДанные <> Неопределено
		И ЗначениеЗаполнено(ТекущиеДанные.ДокументИзмененияПараметров) Тогда
		
		ПоказатьЗначение(, ТекущиеДанные.ДокументИзмененияПараметров);
		
	КонецЕсли;	

КонецПроцедуры

&НаКлиенте
Процедура ОСОсновноеСредствоПриИзменении(Элемент)
	ЗаполнитьКонецДействияПараметров();
КонецПроцедуры

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

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

&НаКлиенте
Процедура Подобрать(Команда)
	
	ОценкаПроизводительностиКлиент.ЗамерВремени("Справочник.ОбъектыЭксплуатации.ФормаВыбора");

	ПараметрыПодбора = ОбщегоНазначенияУТКлиентСервер.ПараметрыПодбора(Элементы.ОСОсновноеСредство, ЭтаФорма);

	ОткрытьФорму("Справочник.ОбъектыЭксплуатации.ФормаВыбора", 
					ПараметрыПодбора, Элементы.ОС,,,,, 
					РежимОткрытияОкнаФормы.БлокироватьОкноВладельца)
	
КонецПроцедуры

&НаКлиенте
Процедура ОткрытьИсправления(Команда)
	
	СписокОС = Новый Массив;
	Для Каждого ДанныеСтроки Из Объект.ОС Цикл
		СписокОС.Добавить(ДанныеСтроки.ОсновноеСредство);
	КонецЦикла;
	
	ВнеоборотныеАктивыКлиентЛокализация.ОткрытьВзаимозависимыеИсправленияИмущественныхНалогов(
		Объект.Организация, 
		Объект.НачалоДействия, 
		Объект.Дата, 
		СписокОС);

КонецПроцедуры

&НаКлиенте
Процедура ЗаписатьДокумент(Команда)
	
	ОбщегоНазначенияУТКлиент.Записать(ЭтаФорма);
	
КонецПроцедуры

&НаКлиенте
Процедура ПровестиДокумент(Команда)
	
	ОбщегоНазначенияУТКлиент.Провести(ЭтаФорма);
	
КонецПроцедуры

&НаКлиенте
Процедура ПровестиИЗакрыть(Команда)
	
	ОбщегоНазначенияУТКлиент.ПровестиИЗакрыть(ЭтаФорма);
	
КонецПроцедуры

#Область СтандартныеПодсистемы

// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_КомандаПанелиПрисоединенныхФайлов(Команда)
	 РаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
	 РаботаСФайламиКлиент.ПолеПредпросмотраПроверкаПеретаскивания(ЭтотОбъект, Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка)
	 РаботаСФайламиКлиент.ПолеПредпросмотраПеретаскивание(ЭтотОбъект, Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами


// СтандартныеПодсистемы.РаботаСФайлами
&НаКлиенте
Процедура Подключаемый_ПолеПредпросмотраНажатие(Элемент, СтандартнаяОбработка)
	 РаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);
КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

// СтандартныеПодсистемы.ПодключаемыеКоманды
&НаСервере
Процедура ВыполнитьКомандуНаСервере(ПараметрыВыполнения)
	ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, ПараметрыВыполнения, Объект);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ПродолжитьВыполнениеКомандыНаСервере(ПараметрыВыполнения, ДополнительныеПараметры) Экспорт
	ВыполнитьКомандуНаСервере(ПараметрыВыполнения);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ВыполнитьКоманду(Команда)
	ПодключаемыеКомандыКлиент.НачатьВыполнениеКоманды(ЭтотОбъект, Команда, Объект);
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ОбновитьКоманды()
	ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект);
КонецПроцедуры
// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

&НаКлиенте
Процедура Подключаемый_ВыполнитьКомандуИнтеграции(Команда)
	
	ИнтеграцияС1СДокументооборотБазоваяФункциональностьКлиент.ВыполнитьПодключаемуюКомандуИнтеграции(Команда, ЭтотОбъект, Объект);
	
КонецПроцедуры

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

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

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

// Рассчитать сниженную ставку.
// Для льготы вида снижение на процент уменьшает общую ставку на процент указанный в карточке льготы.
&НаСервере
Процедура РассчитатьСниженнуюСтавку()
	
	РеквизитыЛьготы = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.ОснованиеЛьготы,"ВидЛьготы, ПроцентУменьшения"); 
	ВидЛьготыНалогНаИмущество = РеквизитыЛьготы.ВидЛьготы;
	ПроцентУменьшения = РеквизитыЛьготы.ПроцентУменьшения;
	
	Если Не ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиДоУказанной")
		И Не ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиНаПроцент") Тогда
		
		Объект.СниженнаяНалоговаяСтавка = 0;
		Возврат;
		
	КонецЕсли;

	Если ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиНаПроцент") Тогда
		Объект.СниженнаяНалоговаяСтавка = ОбщаяНалоговаяСтавка - ПроцентУменьшения;
	КонецЕсли;

КонецПроцедуры

&НаКлиенте
Процедура ВыборКода(ИмяКода, НазваниеМакета)
	
	ПараметрыФормы = Новый Структура;
	ПараметрыФормы.Вставить("ТипОбъекта",		"РегистрСведений");
	ПараметрыФормы.Вставить("НазваниеОбъекта",	"ПараметрыНачисленияНалогаНаИмущество");
	ПараметрыФормы.Вставить("НазваниеМакета",	НазваниеМакета);
	ПараметрыФормы.Вставить("ТекущийПериод",	Объект.Дата);
	ПараметрыФормы.Вставить("ТекущийКод",		Объект[ИмяКода]);
	
	ДополнительныеПараметры = Новый Структура;
	ДополнительныеПараметры.Вставить("ИмяКода", ИмяКода);
	
	ОповещениеОЗакрытии = Новый ОписаниеОповещения("ВыборКодаЗавершение", ЭтотОбъект, ДополнительныеПараметры);
	
	ОткрытьФорму("ОбщаяФорма.ФормаВыбораКода", ПараметрыФормы,,,,,ОповещениеОЗакрытии);
	
КонецПроцедуры

&НаКлиенте
Процедура ВыборКодаЗавершение(РезультатЗакрытия, ДополнительныеПараметры) Экспорт
	
	ИмяКода = ДополнительныеПараметры.ИмяКода;
	
	ВыбранныйКод = РезультатЗакрытия;
	
	Если ВыбранныйКод <> Неопределено Тогда
		
		Модифицированность = Истина;
		
		Объект[ИмяКода] = ВыбранныйКод;
		
	КонецЕсли;
	
	НастроитьЗависимыеЭлементыФормы(ИмяКода);
	
КонецПроцедуры

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

	#Область ОтноситсяКТерриторииСубъектаРФВДоле
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСДоляПлощадиЧислитель.Имя);
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСДоляПлощадиЗнаменатель.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ОС.КадастроваяСтоимостьОпределенаПоДолеПлощади");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
	ОтборЭлемента.ПравоеЗначение = Ложь;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветТекстаОтмененнойСтрокиДокумента);
	Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
	Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не требуется>'"));
	Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина);
	
	#КонецОбласти
	
	#Область НалогообложениеПоКадастровойСтоимости
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСКадастровыйНомер.Имя);
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСКадастроваяСтоимость.Имя);
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСДатаРегистрацииПраваСобственности.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.НалоговаяБаза");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
	ОтборЭлемента.ПравоеЗначение = Перечисления.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Ложь);
	
	#КонецОбласти
	
	#Область ОтражениеРасходовПодразделение
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
	ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ОтражениеРасходовПодразделение.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ОтражениеРасходов.Подразделение");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<Местонахождение ОС>'"));
	Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.НезаполненноеПолеТаблицы);
	
	#КонецОбласти
	
	#Область ОСКонецДействия_Заполнено
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСКонецДействия.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ОС.ДокументИзмененияПараметров");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ГиперссылкаЦвет);
	
	#КонецОбласти
	
	#Область ОСКонецДействия_НеЗаполнено
	
	Элемент = УсловноеОформление.Элементы.Добавить();
	
	Элемент.Поля.Элементы.Добавить().Поле = Новый ПолеКомпоновкиДанных(Элементы.ОСКонецДействия.Имя);
	
	ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
	ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.ОС.ДокументИзмененияПараметров");
	ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено;
	
	Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЦветТекстаОтмененнойСтрокиДокумента);
	Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = '<не указано>'"));
	
	#КонецОбласти
	
КонецПроцедуры

&НаСервере
Процедура ПриЧтенииСозданииНаСервере()
	
	КодыВидовИмущества = ПолучитьКодыВидовИмущества();
	КБК = ПолучитьКБК();
	ПорядокНалогообложения = ?(Объект.НеПодлежитНалогообложению, 0, 1);
	
	ПолучитьСтавкуНалогаНаИмущество();
	
	ЗаполнитьЗначенияРеквизитовФормы();
	НастроитьЗависимыеЭлементыФормыНаСервере();
	УстановитьГоловнуюОрганизацию(ЭтаФорма);
	ЗаполнитьКонецДействияПараметров();
	
КонецПроцедуры

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

&НаКлиенте
Процедура НастроитьЗависимыеЭлементыФормы(ИзмененныеРеквизиты = Неопределено)

	Если ТребуетсяВызовСервераДляНастройкиЭлементовФормы(ИзмененныеРеквизиты) Тогда
		НастроитьЗависимыеЭлементыФормыНаСервере(ИзмененныеРеквизиты)
	Иначе
		НастроитьЗависимыеЭлементыФормыНаКлиентеНаСервере(ЭтаФорма, ИзмененныеРеквизиты);
	КонецЕсли; 

КонецПроцедуры

&НаКлиенте
Функция ТребуетсяВызовСервераДляНастройкиЭлементовФормы(ИзмененныеРеквизиты)
	
	СтруктураИзмененныхРеквизитов = Новый Структура(ИзмененныеРеквизиты);

	Если СтруктураИзмененныхРеквизитов.Количество() = 0
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("КодВидаИмущества")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("Дата")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("Организация")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОснованиеЛьготы")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ПостановкаНаУчетВНалоговомОргане") Тогда
			
		Возврат Истина;
	КонецЕсли; 
	
	Возврат Ложь;

КонецФункции

&НаКлиентеНаСервереБезКонтекста
Процедура НастроитьЗависимыеЭлементыФормыНаКлиентеНаСервере(Форма, ИзмененныеРеквизиты = Неопределено)
	
	Объект = Форма.Объект;
	Элементы = Форма.Элементы;
	
	ОбновитьВсе = (ИзмененныеРеквизиты = Неопределено);
	СтруктураИзмененныхРеквизитов = Новый Структура(ИзмененныеРеквизиты);
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ПорядокНалогообложения") 
		Или ОбновитьВсе Тогда
		
		Элементы.СтраницаНалоговыйОрган.Доступность = НЕ Объект.НеПодлежитНалогообложению;
		Элементы.СтраницаОтражениеРасходов.Доступность = НЕ Объект.НеПодлежитНалогообложению;
		
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ПостановкаНаУчетВНалоговомОргане") 
		Или ОбновитьВсе Тогда
		
		ПостановкаНаУчетСДругимКодомПоОКАТО = (Объект.ПостановкаНаУчетВНалоговомОргане = ПредопределенноеЗначение("Перечисление.ПостановкаНаУчетВНалоговомОргане.СДругимКодомПоОКАТО"));
		
		Элементы.КодПоОКТМО_ДругойКод.Доступность = ПостановкаНаУчетСДругимКодомПоОКАТО;
		Элементы.КодПоОКТМО_ДругойКод.АвтоОтметкаНезаполненного = ПостановкаНаУчетСДругимКодомПоОКАТО;
		Элементы.КодПоОКТМО_ДругойКод.ОтметкаНезаполненного = ПостановкаНаУчетСДругимКодомПоОКАТО И ПустаяСтрока(Форма.КодПоОКТМО_ДругойКод);
		
		Элементы.КодПоОКАТО_ДругойКод.Доступность = ПостановкаНаУчетСДругимКодомПоОКАТО;
		Элементы.КодПоОКАТО_ДругойКод.АвтоОтметкаНезаполненного = ПостановкаНаУчетСДругимКодомПоОКАТО;
		Элементы.КодПоОКАТО_ДругойКод.ОтметкаНезаполненного = ПостановкаНаУчетСДругимКодомПоОКАТО И ПустаяСтрока(Форма.КодПоОКАТО_ДругойКод);
		
		ПостановкаНаУчетВДругомНалоговомОргане = 
			(Объект.ПостановкаНаУчетВНалоговомОргане = ПредопределенноеЗначение("Перечисление.ПостановкаНаУчетВНалоговомОргане.ВДругомНалоговомОргане"));
		
		Элементы.НалоговыйОрган.Доступность = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.НалоговыйОрган.АвтоОтметкаНезаполненного = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.НалоговыйОрган.ОтметкаНезаполненного = ПостановкаНаУчетВДругомНалоговомОргане И Объект.НалоговыйОрган.Пустая();
		
		Элементы.КодПоОКТМО_ДругойНалоговыйОрган.Доступность = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.КодПоОКТМО_ДругойНалоговыйОрган.АвтоОтметкаНезаполненного = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.КодПоОКТМО_ДругойНалоговыйОрган.ОтметкаНезаполненного = 
			ПостановкаНаУчетВДругомНалоговомОргане И ПустаяСтрока(Форма.КодПоОКТМО_ДругойНалоговыйОрган);
		
		Элементы.КодПоОКАТО_ДругойНалоговыйОрган.Доступность = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.КодПоОКАТО_ДругойНалоговыйОрган.АвтоОтметкаНезаполненного = ПостановкаНаУчетВДругомНалоговомОргане;
		Элементы.КодПоОКАТО_ДругойНалоговыйОрган.ОтметкаНезаполненного = 
			ПостановкаНаУчетВДругомНалоговомОргане И ПустаяСтрока(Форма.КодПоОКАТО_ДругойНалоговыйОрган);
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("НалоговаяБаза") Тогда
		
		ОпределениеНалоговойБазыПоКадастровойСтоимости = 
			(Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость"));
		
		Элементы.НалоговаяСтавкаКадастроваяСтоимость.Доступность = ОпределениеНалоговойБазыПоКадастровойСтоимости;
		Элементы.НалоговаяСтавкаКадастроваяСтоимость.АвтоОтметкаНезаполненного = Элементы.НалоговаяСтавкаКадастроваяСтоимость.Доступность;
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("НалоговаяБаза") 
		Или СтруктураИзмененныхРеквизитов.Свойство("ПостановкаНаУчетВНалоговомОргане") Тогда
		
		ПостановкаНаУчетВДругомНалоговомОргане = 
			(Объект.ПостановкаНаУчетВНалоговомОргане = ПредопределенноеЗначение("Перечисление.ПостановкаНаУчетВНалоговомОргане.ВДругомНалоговомОргане"));
		
		ОпределениеНалоговойБазыПоКадастровойСтоимости = 
			(Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость"));
		
		Элементы.НалоговаяСтавкаДругойНалоговыйОрган.Видимость = 
			Не ОпределениеНалоговойБазыПоКадастровойСтоимости;
		
		Элементы.НалоговаяСтавкаДругойНалоговыйОрганДекорацияЕдиницаИзмерения.Видимость = 
			Не ОпределениеНалоговойБазыПоКадастровойСтоимости;
			
		Элементы.НалоговаяСтавкаДругойНалоговыйОрган.Доступность = 
			Не ОпределениеНалоговойБазыПоКадастровойСтоимости 
			И ПостановкаНаУчетВДругомНалоговомОргане;
				
		Элементы.НалоговаяСтавкаДругойНалоговыйОрган.АвтоОтметкаНезаполненного = 
			Не ОпределениеНалоговойБазыПоКадастровойСтоимости 
			И ПостановкаНаУчетВДругомНалоговомОргане;
			
		Элементы.НалоговаяСтавкаДругойНалоговыйОрган.ОтметкаНезаполненного = 
			Не ОпределениеНалоговойБазыПоКадастровойСтоимости 
			И ПостановкаНаУчетВДругомНалоговомОргане 
			И Не ЗначениеЗаполнено(Объект.НалоговаяСтавка);
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("Дата") 
		Или СтруктураИзмененныхРеквизитов.Свойство("НалоговаяБаза") Тогда
		
		ОпределениеНалоговойБазыПоКадастровойСтоимости = 
			(Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость"));
		
		Элементы.ГруппаИспользуетсяТолькоВДеятельностиОблагаемойЕНВД.Видимость = 
			(Форма.СовмещениеОСНОиЕНВД И ОпределениеНалоговойБазыПоКадастровойСтоимости);
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("НеПодлежитНалогообложению") Тогда
		
		Элементы.ГруппаКолонокОС.Видимость = НЕ Объект.НеПодлежитНалогообложению;
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("КБК") Тогда
		
		Элементы.КБК.Подсказка = Форма.КБК.Получить(Объект.КБК);
		
	КонецЕсли;
		
	Если СтруктураИзмененныхРеквизитов.Свойство("РежимИсправленияСПрошлойДаты")
		ИЛИ ОбновитьВсе Тогда
		
		Элементы.НачалоДействия.ТолькоПросмотр = НЕ Объект.РежимИсправленияСПрошлойДаты;
		Элементы.НачалоДействия.АвтоОтметкаНезаполненного = Объект.РежимИсправленияСПрошлойДаты;
		Элементы.НачалоДействия.ОтметкаНезаполненного = Объект.РежимИсправленияСПрошлойДаты И НЕ ЗначениеЗаполнено(Объект.НачалоДействия);
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ОснованиеЛьготы") 
		Или ОбновитьВсе Тогда
		
		ЗначениеСвойства = ЗначениеЗаполнено(Объект.ОснованиеЛьготы);
		
		Элементы.НачалоДействияЛьготы.Видимость = ЗначениеСвойства;
		Элементы.ОкончаниеДействияЛьготы.Видимость = ЗначениеСвойства;
		
		// Сниженная налоговая ставка видна только для льгот:
		//		со снижением до указанного процента,
		//		при снижении ставки на процент.
		Если Форма.ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиДоУказанной")
			Или Форма.ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиНаПроцент") Тогда
			ЗначениеСвойства = Истина;
		Иначе
			ЗначениеСвойства = Ложь;
		КонецЕсли;
			 
		Элементы.СниженнаяНалоговаяСтавка.Видимость = ЗначениеСвойства;
		
		// Сумма уменьшения видна только лдля льгот с видом снижение на сумму.
		ЗначениеСвойства = 
			Форма.ВидЛьготыНалогНаИмущество = ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСуммыНаСумму");
			
		Элементы.СуммаУменьшения.Видимость = ЗначениеСвойства;
		
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("НалоговаяБаза") 
		Или ОбновитьВсе Тогда
		
		МассивВидовЛьготы = Новый Массив;
		МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.Освобождение"));
		МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиДоУказанной"));
		МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСтавкиНаПроцент"));
		МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСуммыНаПроцент"));
		МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеСуммыНаСумму"));
		
		Если Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость") Тогда
			МассивВидовЛьготы.Добавить(ПредопределенноеЗначение("Перечисление.ВидыЛьготПоИмущественнымНалогам.СнижениеНалоговойБазыНаСумму"));
		КонецЕсли;	
		
		ПараметрыВыбора = Новый Массив;
		ПараметрыВыбора.Добавить(Новый ПараметрВыбора("Отбор.ВидЛьготы", МассивВидовЛьготы)); 
		ПараметрыВыбора.Добавить(Новый ПараметрВыбора("Отбор.Налог", ПредопределенноеЗначение("Перечисление.ВидыИмущественныхНалогов.НалогНаИмущество"))); 
		
		Элементы.ОснованиеЛьготы.ПараметрыВыбора = Новый ФиксированныйМассив(ПараметрыВыбора);
	
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("НалоговаяБаза") 
		Или СтруктураИзмененныхРеквизитов.Свойство("КодВидаИмущества") 
		Или ОбновитьВсе Тогда
			
		ЗначениеСвойства = 
			Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.КадастроваяСтоимость") 
			ИЛИ Объект.КодВидаИмущества = "02";
			
		Элементы.ОСГруппаОбъектНаТерриторииНесколькихСубъектов.Видимость = ЗначениеСвойства;
		Элементы.ОбъектНаТерриторииНесколькихСубъектов.Видимость = ЗначениеСвойства;
		Элементы.ОСДоляСтоимостиЧислитель.Видимость = ЗначениеСвойства;
		Элементы.ОСДоляСтоимостиЗнаменатель.Видимость = ЗначениеСвойства;
		
	КонецЕсли;
	
КонецПроцедуры

&НаСервере
Процедура НастроитьЗависимыеЭлементыФормыНаСервере(Знач ИзмененныеРеквизиты = Неопределено)

	СтруктураИзмененныхРеквизитов = Новый Структура(ИзмененныеРеквизиты);
	
	ОбновитьВсе = СтруктураИзмененныхРеквизитов.Количество() = 0;
	
	ДоступноДвижимоеИмущество = (Объект.Дата < '201901010000' И Объект.Дата <> '000101010000');
	
	Если ОбновитьВсе Или СтруктураИзмененныхРеквизитов.Свойство("Дата") Тогда
		
		До2014 = (Объект.Дата <> Дата(1, 1, 1, 0, 0, 0) И Год(Объект.Дата) < 2014);
		Элементы.КодПоОКАТО_ДругойКод.Видимость = До2014;
		Элементы.КодПоОКАТО_ДругойНалоговыйОрган.Видимость = До2014;
		
		Элементы.НалоговаяБаза_СреднегодоваяСтоимость.ТолькоПросмотр = До2014;
		Элементы.НалоговаяБаза_КадастроваяСтоимость.ТолькоПросмотр = До2014;
		
		СовмещениеОСНОиЕНВД = ЕстьСовмещениеОСНОиЕНВД(Объект.Организация, Объект.Дата);
		
		Элементы.ДвижимоеИмуществоПодлежащееНалогообложению.Видимость = ДоступноДвижимоеИмущество;
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("Дата")
		Или СтруктураИзмененныхРеквизитов.Свойство("Организация")
		Или СтруктураИзмененныхРеквизитов.Свойство("ПостановкаНаУчетВНалоговомОргане") Тогда
		
		СвязиПараметровВыбораОС = Новый Массив;
		СвязиПараметровВыбораОС.Добавить(Новый СвязьПараметраВыбора("ДатаСведений", "Объект.Дата", РежимИзмененияСвязанногоЗначения.НеИзменять));
		СвязиПараметровВыбораОС.Добавить(Новый СвязьПараметраВыбора("ТекущийРегистратор", "Объект.Ссылка"));
		
		ПараметрыВыбораОС = Новый Массив;
		
		ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("Отбор.ВидНалога", Перечисления.ВидыИмущественныхНалогов.НалогНаИмущество));
		ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("Контекст", "БУ, МФУ, УУ"));
		
		Если Объект.Дата < '201901010000' И Объект.Дата <> '000101010000' Тогда
			ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("Отбор.АмортизационнаяГруппа", ДоступныеАмортизационныеГруппы));
		КонецЕсли;
		
		Если НЕ ДоступноДвижимоеИмущество Тогда
			
			ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("Отбор.НедвижимоеИмущество", Истина));
			ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("ЗаголовокФормы", НСтр("ru = 'Недвижимое имущество'")));
			
		Иначе
			
			СвязиПараметровВыбораОС.Добавить(Новый СвязьПараметраВыбора("Отбор.БУОрганизация", "Объект.Организация", РежимИзмененияСвязанногоЗначения.Очищать));
			
			ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("Отбор.БУСостояние", ПредопределенноеЗначение("Перечисление.СостоянияОС.ПринятоКУчету")));
			ПараметрыВыбораОС.Добавить(Новый ПараметрВыбора("ДвижимоеИмуществоПринятоеДо2013", Истина));
			
		КонецЕсли;
		
		Элементы.ОСОсновноеСредство.ПараметрыВыбора = Новый ФиксированныйМассив(ПараметрыВыбораОС);
		Элементы.ОСОсновноеСредство.СвязиПараметровВыбора = Новый ФиксированныйМассив(СвязиПараметровВыбораОС);
		
	КонецЕсли;
	
	Если ОбновитьВсе 
		Или СтруктураИзмененныхРеквизитов.Свойство("КодВидаИмущества") Тогда
		
		Элементы.КодВидаИмущества.Подсказка = КодыВидовИмущества.Получить(Объект.КодВидаИмущества);
		Элементы.КБК.Видимость = Документы.ПараметрыНачисленияНалогаНаИмущество.ТребуетсяУказаниеКБК(Объект.КодВидаИмущества);
		
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ОснованиеЛьготы") 
		Или ОбновитьВсе Тогда
		ЗаполнитьПараметрыЛьготы();
	КонецЕсли;
	
	Если НЕ ПравоДоступа("Редактирование",Метаданные.Документы.ПараметрыНачисленияНалогаНаИмущество) Тогда
		Элементы.ГруппаПорядокНалогообложения.ТолькоПросмотр = Истина;
	КонецЕсли;
	
	НастроитьЗависимыеЭлементыФормыНаКлиентеНаСервере(ЭтаФорма, ИзмененныеРеквизиты);

КонецПроцедуры

&НаСервере
Процедура ЗаполнитьПараметрыЛьготы() 
	
	Если ЗначениеЗаполнено(Объект.ОснованиеЛьготы) Тогда
		РеквизитыЛьготы = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.ОснованиеЛьготы, "ВидЛьготы, ПроцентУменьшения");
		ВидЛьготыНалогНаИмущество = РеквизитыЛьготы.ВидЛьготы;
	Иначе	
		ВидЛьготыНалогНаИмущество = Перечисления.ВидыЛьготПоИмущественнымНалогам.ПустаяСсылка();
	КонецЕсли;	
	
КонецПроцедуры	
 
&НаСервереБезКонтекста
Функция ЕстьСовмещениеОСНОиЕНВД(Организация, Период)
	
	Если Дата('20140701') <= Период И Период < Дата('20150101') Тогда
		Возврат УчетнаяПолитика.СистемаНалогообложения(Организация, Период) = Перечисления.СистемыНалогообложения.Общая
			И УчетнаяПолитика.ПлательщикЕНВД(Организация, Период);
	Иначе
		Возврат Ложь;
	КонецЕсли;
	
КонецФункции

&НаКлиенте
Процедура СохранитьЗначениеРеквизитаФормы(ИмяРеквизита, Форма, Данные, СтруктураРеквизитов)
	
	СтруктураРеквизитов.Вставить(ИмяРеквизита, Данные[ИмяРеквизита]);
	
	Данные[ИмяРеквизита] = ОбщегоНазначенияБПКлиентСервер.ПустоеЗначениеТипа(ТипЗнч(Данные[ИмяРеквизита]));
	
КонецПроцедуры

&НаКлиенте
Процедура ВосстановитьЗначениеРеквизитаФормы(ИмяРеквизита, Данные, СтруктураРеквизитов)

	Если СтруктураРеквизитов.Свойство(ИмяРеквизита) Тогда
		Данные[ИмяРеквизита] = СтруктураРеквизитов[ИмяРеквизита];
	КонецЕсли;

КонецПроцедуры

&НаСервере
Процедура ОрганизацияПриИзмененииНаСервере()

	УстановитьГоловнуюОрганизацию(ЭтаФорма);
	ПолучитьСтавкуНалогаНаИмущество();
	
	НастроитьЗависимыеЭлементыФормыНаСервере("Организация");

КонецПроцедуры

&НаСервере
Процедура ДатаПриИзмененииНаСервере()

	Если Объект.Дата <> Дата(1, 1, 1, 0, 0, 0) И Объект.Дата < '20140101' Тогда
		Объект.НалоговаяБаза = ПредопределенноеЗначение("Перечисление.НалоговаяБазаПоНалогуНаИмущество.СреднегодоваяСтоимость");
	КонецЕсли;
	
	ПолучитьСтавкуНалогаНаИмущество();
	
	СписокРеквизитов = "Дата";
	
	ЗаполнитьКонецДействияПараметров();
	
	НастроитьЗависимыеЭлементыФормыНаСервере(СписокРеквизитов);

	СохранитьЗначенияРеквизитов(ЭтаФорма);
	
КонецПроцедуры
 
&НаКлиентеНаСервереБезКонтекста
Процедура УстановитьГоловнуюОрганизацию(Форма)
	
	Форма.ГоловнаяОрганизация = ОбщегоНазначенияБПВызовСервераПовтИсп.ГоловнаяОрганизация(Форма.Объект.Организация);
	
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьКодыВидовИмущества()

	КодыВидовИмущества = Новый Соответствие;
	
	Для Сч = 2 По 3 Цикл
		
		ИмяМакета = "КодыВидаИмуществаРаздел" + Строка(Сч);
		
		Макет = РегистрыСведений.ПараметрыНачисленияНалогаНаИмущество.ПолучитьМакет(ИмяМакета);
		ТекущаяОбласть = Макет.Области.Найти("Область2022");
	
		Если ТекущаяОбласть = Неопределено Тогда
			Продолжить;
		КонецЕсли;
	
		Для НомерСтр = ТекущаяОбласть.Верх По ТекущаяОбласть.Низ Цикл
			
			КодПоказателя = СокрП(Макет.Область(НомерСтр, 1).Текст);
			Название      = СокрП(Макет.Область(НомерСтр, 2).Текст);
			
			Если КодПоказателя = "###" Тогда
				Прервать;
			ИначеЕсли ПустаяСтрока(КодПоказателя) Тогда
				Продолжить;
			Иначе
				КодыВидовИмущества.Вставить(КодПоказателя, Название);
			КонецЕсли;

		КонецЦикла;
		
	КонецЦикла;
	
	Возврат Новый ФиксированноеСоответствие(КодыВидовИмущества);

КонецФункции

&НаСервереБезКонтекста
Функция ПолучитьКБК()

	КБК = Новый Соответствие;
	
	Макет = РегистрыСведений.ПараметрыНачисленияНалогаНаИмущество.ПолучитьМакет("КБК");
	ТекущаяОбласть = Макет.Области.Найти("Область2008");
	
	Если ТекущаяОбласть <> Неопределено Тогда
	
		Для НомерСтр = ТекущаяОбласть.Верх По ТекущаяОбласть.Низ Цикл
			
			КодПоказателя = СокрП(Макет.Область(НомерСтр, 1).Текст);
			Название      = СокрП(Макет.Область(НомерСтр, 2).Текст);
			
			КБК.Вставить(КодПоказателя, Название);
			
		КонецЦикла;
		
	КонецЕсли;
	
	Возврат Новый ФиксированноеСоответствие(КБК);
	
КонецФункции

&НаСервере
Процедура ПолучитьСтавкуНалогаНаИмущество()

	ДатаДок = ?(ЗначениеЗаполнено(Объект.Дата), Объект.Дата, ТекущаяДатаСеанса());
	
	Если ДатаДок < '201801010000' Тогда
		ОсвобождениеОтНалогообложенияДвижимогоИмущества = Истина;
		Возврат;
	КонецЕсли;
	
	ТекстЗапроса = 
	"ВЫБРАТЬ
	|	СтавкиНалога.ОсвобождениеОтНалогообложенияДвижимогоИмущества КАК ОсвобождениеОтНалогообложенияДвижимогоИмущества,
	|	СтавкиНалога.НалоговаяСтавка КАК НалоговаяСтавка,
	|	СтавкиНалога.НалоговаяСтавкаДвижимоеИмущество КАК НалоговаяСтавкаДвижимоеИмущество
	|ИЗ
	|	РегистрСведений.СтавкиНалогаНаИмущество.СрезПоследних(&Дата, Организация = &Организация) КАК СтавкиНалога";
	
	Запрос = Новый Запрос(ТекстЗапроса);
	Запрос.УстановитьПараметр("Дата", ДатаДок);
	Запрос.УстановитьПараметр("Организация", Объект.Организация);
	
	УстановитьПривилегированныйРежим(Истина);
	Результат = Запрос.Выполнить();
	УстановитьПривилегированныйРежим(Ложь);
	
	Выборка = Результат.Выбрать();
	
	Если Выборка.Следующий() Тогда
		ОсвобождениеОтНалогообложенияДвижимогоИмущества = Выборка.ОсвобождениеОтНалогообложенияДвижимогоИмущества;
		НалоговаяСтавкаДляДвижимогоИмущества = Выборка.НалоговаяСтавкаДвижимоеИмущество;
		ОбщаяНалоговаяСтавка = Выборка.НалоговаяСтавка;
	Иначе
		ОсвобождениеОтНалогообложенияДвижимогоИмущества = Ложь;
		НалоговаяСтавкаДляДвижимогоИмущества = 0;
		ОбщаяНалоговаяСтавка = 0;
	КонецЕсли; 
	
КонецПроцедуры

&НаКлиентеНаСервереБезКонтекста
Процедура СохранитьЗначенияРеквизитов(Форма)

	СохраненныеЗначенияРеквизитов = Новый Структура("Дата");
	ЗаполнитьЗначенияСвойств(СохраненныеЗначенияРеквизитов, Форма.Объект);
	Форма.СохраненныеЗначенияРеквизитов = Новый ФиксированнаяСтруктура(СохраненныеЗначенияРеквизитов);
	
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьКонецДействияПараметров()
	
	Если Объект.ОС.Количество() = 0 Тогда
		Возврат;
	КонецЕсли;
	
	Если Объект.РежимИсправленияСПрошлойДаты Тогда
		
		СписокЗапросов = Новый Массив;
		СписокЗапросов.Добавить(РасчетИмущественныхналоговУП.ТекстЗапросаЗаписиРегистраСУчетомИсправлений("ПараметрыНачисленияНалогаНаИмущество"));
		
		ТекстЗапроса = 
		"ВЫБРАТЬ
		|	ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|	ДанныеРегистра.Период КАК КонецДействия,
		|	ДанныеРегистра.Регистратор КАК ДокументИзмененияПараметров
		|ИЗ
		|	(ВЫБРАТЬ
		|		ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|		ДанныеРегистра.Период КАК Период,
		|		МАКСИМУМ(ДанныеРегистра.Регистратор) КАК Регистратор
		|	ИЗ
		|		(ВЫБРАТЬ
		|			ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|			МИНИМУМ(ДанныеРегистра.Период) КАК Период
		|		ИЗ
		|			ПараметрыНачисленияНалогаНаИмущество_ЗаписиСУчетомИсправлений КАК ДанныеРегистра
		|		ГДЕ
		|			ДанныеРегистра.Период > &НачалоДействия
		|			И ДанныеРегистра.ОсновноеСредство В (&СписокОС)
		|			И ДанныеРегистра.Регистратор <> &Ссылка
		|			И ТИПЗНАЧЕНИЯ(ДанныеРегистра.Регистратор) = ТИП(Документ.ПараметрыНачисленияНалогаНаИмущество)
		|
		|		СГРУППИРОВАТЬ ПО
		|			ДанныеРегистра.ОсновноеСредство
		|
		|		) КАК ДанныеРегистра_Период
		|
		|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыНачисленияНалогаНаИмущество_ЗаписиСУчетомИсправлений КАК ДанныеРегистра
		|		ПО ДанныеРегистра.ОсновноеСредство = ДанныеРегистра_Период.ОсновноеСредство
		|			И ДанныеРегистра.Период = ДанныеРегистра_Период.Период
		|			И ТИПЗНАЧЕНИЯ(ДанныеРегистра.Регистратор) = ТИП(Документ.ПараметрыНачисленияНалогаНаИмущество)
		|
		|	СГРУППИРОВАТЬ ПО
		|		ДанныеРегистра.ОсновноеСредство,
		|		ДанныеРегистра.Период
		|
		|	) КАК ДанныеРегистра_Регистратор
		|
		|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПараметрыНачисленияНалогаНаИмущество_ЗаписиСУчетомИсправлений КАК ДанныеРегистра
		|	ПО ДанныеРегистра.ОсновноеСредство = ДанныеРегистра_Регистратор.ОсновноеСредство
		|		И ДанныеРегистра.Период = ДанныеРегистра_Регистратор.Период
		|		И ДанныеРегистра.Регистратор = ДанныеРегистра_Регистратор.Регистратор";
		СписокЗапросов.Добавить(ТекстЗапроса);
		
		ТекстЗапроса = СтрСоединить(СписокЗапросов, ОбщегоНазначения.РазделительПакетаЗапросов());

	Иначе	
	
		ТекстЗапроса = 
		"ВЫБРАТЬ
		|	ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|	ДанныеРегистра.Период КАК КонецДействия,
		|	ДанныеРегистра.Регистратор КАК ДокументИзмененияПараметров
		|ИЗ
		|	(ВЫБРАТЬ
		|		ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|		ДанныеРегистра.Период КАК Период,
		|		МАКСИМУМ(ДанныеРегистра.Регистратор) КАК Регистратор
		|	ИЗ
		|		(ВЫБРАТЬ
		|			ДанныеРегистра.ОсновноеСредство КАК ОсновноеСредство,
		|			МИНИМУМ(ДанныеРегистра.Период) КАК Период
		|		ИЗ
		|			РегистрСведений.ПараметрыНачисленияНалогаНаИмущество КАК ДанныеРегистра
		|		ГДЕ
		|			ДанныеРегистра.Период > &Период
		|			И ДанныеРегистра.ДатаИсправления = ДАТАВРЕМЯ(1,1,1)
		|			И ДанныеРегистра.ОсновноеСредство В (&СписокОС)
		|			И ДанныеРегистра.Регистратор <> &Ссылка
		|			И ТИПЗНАЧЕНИЯ(ДанныеРегистра.Регистратор) = ТИП(Документ.ПараметрыНачисленияНалогаНаИмущество)
		|			И ДанныеРегистра.Активность
		|
		|		СГРУППИРОВАТЬ ПО
		|			ДанныеРегистра.ОсновноеСредство
		|
		|		) КАК ДанныеРегистра_Период
		|
		|		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПараметрыНачисленияНалогаНаИмущество КАК ДанныеРегистра
		|		ПО ДанныеРегистра.ОсновноеСредство = ДанныеРегистра_Период.ОсновноеСредство
		|			И ДанныеРегистра.Период = ДанныеРегистра_Период.Период
		|			И ТИПЗНАЧЕНИЯ(ДанныеРегистра.Регистратор) = ТИП(Документ.ПараметрыНачисленияНалогаНаИмущество)
		|			И ДанныеРегистра.Активность
		|
		|	СГРУППИРОВАТЬ ПО
		|		ДанныеРегистра.ОсновноеСредство,
		|		ДанныеРегистра.Период
		|
		|	) КАК ДанныеРегистра_Регистратор
		|
		|	ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ПараметрыНачисленияНалогаНаИмущество КАК ДанныеРегистра
		|	ПО ДанныеРегистра.ОсновноеСредство = ДанныеРегистра_Регистратор.ОсновноеСредство
		|		И ДанныеРегистра.Период = ДанныеРегистра_Регистратор.Период
		|		И ДанныеРегистра.Регистратор = ДанныеРегистра_Регистратор.Регистратор
		|		И ДанныеРегистра.Активность";
		
	КонецЕсли;
	
	Запрос = Новый Запрос(ТекстЗапроса);
	Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка);
	Запрос.УстановитьПараметр("Организация", Объект.Организация);
	Запрос.УстановитьПараметр("Период", КонецДня(?(ЗначениеЗаполнено(Объект.Дата), Объект.Дата, ТекущаяДатаСеанса())));
	Запрос.УстановитьПараметр("СписокОС", Объект.ОС.Выгрузить().ВыгрузитьКолонку("ОсновноеСредство"));
	Запрос.УстановитьПараметр("НачалоДействия", Объект.НачалоДействия);
	Запрос.УстановитьПараметр("НачалоПериода", Объект.НачалоДействия);
	Запрос.УстановитьПараметр("КонецПериода", '000101010000');
	Запрос.УстановитьПараметр("ДатаДокумента", '000101010000');
	Запрос.УстановитьПараметр("БезОтбораОС", Ложь);
	
	УстановитьПривилегированныйРежим(Истина);
	Результат = Запрос.Выполнить().Выгрузить();
	УстановитьПривилегированныйРежим(Ложь);
	
	Для каждого ДанныеСтроки Из Объект.ОС Цикл
		ТекущиеЗначения = Результат.Найти(ДанныеСтроки.ОсновноеСредство, "ОсновноеСредство");
		Если ТекущиеЗначения <> Неопределено Тогда
			ЗаполнитьЗначенияСвойств(ДанныеСтроки, ТекущиеЗначения);
		Иначе
			ДанныеСтроки.КонецДействия = '000101010000';
			ДанныеСтроки.ДокументИзмененияПараметров = Неопределено;
		КонецЕсли; 
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура Подключаемый_ЗакрытьФорму()
	
	Закрыть();
	
КонецПроцедуры

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

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