Корректировка стоимости и амортизации ОС / Форма документа / Модуль формы

файл

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

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

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

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

&НаКлиенте
Процедура ПриЗакрытии(ЗавершениеРаботы)
	
	МенеджерОборудованияКлиент.НачатьОтключениеОборудованиеПриЗакрытииФормы(Неопределено, ЭтотОбъект);
	
КонецПроцедуры

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

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

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

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

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

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

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

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

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

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

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

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

#Область СтраницаОсновное

&НаКлиенте
Процедура ДатаПриИзменении(Элемент)

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

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

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

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

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

&НаКлиенте
Процедура НачалоПериодаПриИзменении(Элемент)

	Если ПроверитьНачалоПериода() Тогда
		НачалоПериодаПриИзмененииНаСервере();
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура НачалоПериодаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	
	ОписаниеОповещения = Новый ОписаниеОповещения("НачалоПериодаНачалоВыбораЗавершение", ЭтотОбъект);
	
	ПараметрыФормыВыбораПериода = Новый Структура("Значение, РежимВыбораПериода", Объект.НачалоПериода, "МЕСЯЦ");
	ОткрытьФорму("ОбщаяФорма.ВыборПериода",
		ПараметрыФормыВыбораПериода, 
		ЭтотОбъект, 
		УникальныйИдентификатор,,, 
		ОписаниеОповещения,
		РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);

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

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

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

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

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

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

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

&НаКлиенте
Процедура МетодНачисленияАмортизацииБУПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы("ПараметрыЗаПериод");
	
КонецПроцедуры

&НаКлиенте
Процедура МетодНачисленияАмортизацииУУПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы("ПараметрыЗаПериод");
	
КонецПроцедуры

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

#Область СтраницаРасходыИДоходы

#Область УвеличениеСтоимости

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

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

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

&НаКлиенте
Процедура ПараметрыРасходовСовпадаютСДаннымиУчетаУвеличениеСтоимостиПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы(
		"СпособОтраженияРасходовУвеличениеСтоимости,ПараметрыРасходовСовпадаютСДаннымиУчетаУвеличениеСтоимости");
	
КонецПроцедуры

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

#Область УменьшениеСтоимости

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

	НастроитьЗависимыеЭлементыФормы(ИзмененныеРеквизиты);

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

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

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

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

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

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

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

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

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

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

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

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

#Область УвеличениеАмортизации

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

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

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

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

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

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

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

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

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

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

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

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

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

#Область УменьшениеАмортизацииТекущегоГода

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

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

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

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

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

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

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

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

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

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

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

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

#Область УменьшениеАмортизацииПрошлыхЛет

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

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

&НаКлиенте
Процедура ПредставлениеОтраженияУменьшениеАмортизацииНажатие(Элемент, СтандартнаяОбработка)
	
	НастройкаСчетовУчетаКлиент.ПриНажатии(ЭтотОбъект, Элемент, СтандартнаяОбработка);
	
КонецПроцедуры

&НаКлиенте
Процедура ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеАмортизацииПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы(
		"ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеАмортизации");
	
КонецПроцедуры

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

#Область УвеличениеАмортизационнойПремии

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

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

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

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

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

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

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

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

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

&НаКлиенте
Процедура НаправлениеДеятельностиАмортизационнаяПремияПриИзменении(Элемент)

	Если ЗначениеЗаполнено(Объект.СпособОтраженияРасходовАмортизационнаяПремия) Тогда
		Объект.СпособОтраженияРасходовАмортизационнаяПремия = ПредопределенноеЗначение("Справочник.СпособыОтраженияРасходов.ПустаяСсылка");
	КонецЕсли;
	
КонецПроцедуры

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

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

#Область УменьшениеАмортизационнойПремии

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

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

&НаКлиенте
Процедура ПредставлениеОтраженияУменьшениеАмортизационнойПремииНажатие(Элемент, СтандартнаяОбработка)
	
	НастройкаСчетовУчетаКлиент.ПриНажатии(ЭтотОбъект, Элемент, СтандартнаяОбработка);
	
КонецПроцедуры

&НаКлиенте
Процедура ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеАмортизационнойПремииПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы(
		"ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеАмортизационнойПремии");
	
КонецПроцедуры

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

#Область УвеличениеДоходовЦФ

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

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

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

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

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

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

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

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

#Область УменьшениеДоходовЦФ

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

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

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

&НаКлиенте
Процедура ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеДоходовЦФПриИзменении(Элемент)
	
	НастроитьЗависимыеЭлементыФормы("ПараметрыРасходовСовпадаютСДаннымиУчетаУменьшениеДоходовЦФ");
	
КонецПроцедуры

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

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

#Область Локализация

&НаКлиенте
Процедура Подключаемый_ПриИзмененииРеквизита(Элемент)

	КорректировкаСтоимостиИАмортизацииОСКлиентЛокализация.ПриИзмененииРеквизита(Элемент, ЭтотОбъект);

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

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

	КорректировкаСтоимостиИАмортизацииОСКлиентЛокализация.ПриВыполненииКоманды(Команда, ЭтотОбъект);

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

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

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

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

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

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

	РаботаСФайламиКлиент.ПолеПредпросмотраНажатие(ЭтотОбъект, Элемент, СтандартнаяОбработка);

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

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

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

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

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

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

КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

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

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

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

&НаКлиенте
Процедура ОСОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
	
	ПодборНаСервере(ВыбранноеЗначение);
	
КонецПроцедуры

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

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

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

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

&НаКлиенте
Процедура ПараметрыЗаПериодБУПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, ЭтоГруппа, Параметр)

	Отказ = Истина;
	
	ОбщегоНазначенияУТКлиент.ПоказатьВыборДаты(
		Объект.НачалоПериода,
		НСтр("ru = 'Введите дату параметров'"),
		ЧастиДаты.Дата,
		Новый ОписаниеОповещения("ПараметрыЗаПериодБУПередНачаломДобавленияЗавершение", ЭтотОбъект),
		Объект.НачалоПериода,
		НачалоМесяца(Объект.Дата) - 1);
	
КонецПроцедуры

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

&НаКлиенте
Процедура ПараметрыЗаПериодБУВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	Если ТолькоПросмотр Тогда
		Возврат;
	КонецЕсли;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

&НаКлиенте
Процедура КопироватьЗначенияПараметровБУ(Команда)

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

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

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

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

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

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

#Область ШтрихкодыИТорговоеОборудование

&НаКлиенте
Процедура ЗагрузитьДанныеИзТСД(Команда)
	
	ВыполнитьЗагрузкуДанныеИзТСД();
	
КонецПроцедуры

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

#Область ПодключаемыеКоманды

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

// СтандартныеПодсистемы.ПодключаемыеКоманды

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

// Конец СтандартныеПодсистемы.ПодключаемыеКоманды

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

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

	РаботаСФайламиКлиент.КомандаУправленияПрисоединеннымиФайлами(ЭтотОбъект, Команда);

КонецПроцедуры
// Конец СтандартныеПодсистемы.РаботаСФайлами

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

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

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

#Область ПриИзмененииРеквизитов

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

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

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

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

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

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

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

			Форма.ВариантОтраженияВУчете = ПредопределенноеЗначение("Перечисление.ВариантыОтраженияВУчетеВнеоборотныхАктивов.УправленческомИРегламентированномУчетах");
			Объект.ОтражатьВУпрУчете = Истина;
			Объект.ОтражатьВРеглУчете = Истина;
			Объект.ОтражатьВБУ = Истина;
		КонецЕсли;
		
	КонецЕсли;

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

	Если СтруктураИзмененныхРеквизитов.Свойство("КорректировкаСтоимости")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("КорректировкаПервоначальнойСтоимости")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("КорректировкаАмортизации")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ВидИмущества")
		ИЛИ ОбновитьВсе Тогда

		Элементы.ОСЗаполнитьПоУчету.Видимость = 
			Объект.КорректировкаСтоимости
			ИЛИ Объект.КорректировкаПервоначальнойСтоимости
			ИЛИ Объект.КорректировкаАмортизации;
		
		Если Объект.ВидИмущества = ПредопределенноеЗначение("Перечисление.ВидыИмущества.Арендованное") Тогда
			
			Элементы.ОСЗаполнитьПоУчету.Заголовок = 
					НСтр("ru = 'Залоговую стоимость по данным учета'");
					
			Элементы.ОСЗаполнитьПоУчету.РасширеннаяПодсказка.Заголовок = 
					НСтр("ru = 'Заполнить залоговую стоимость по данным учета в выбранных строках'");
					
		ИначеЕсли (Объект.КорректировкаСтоимости ИЛИ Объект.КорректировкаПервоначальнойСтоимости)
			И Объект.КорректировкаАмортизации Тогда
			
			Элементы.ОСЗаполнитьПоУчету.Заголовок = 
				НСтр("ru = 'Стоимость и амортизацию по данным учета'");
					
			Элементы.ОСЗаполнитьПоУчету.РасширеннаяПодсказка.Заголовок = 
				НСтр("ru = 'Заполнить стоимость и амортизацию по данным учета в выбранных строках'");
					
		ИначеЕсли Объект.КорректировкаСтоимости ИЛИ Объект.КорректировкаПервоначальнойСтоимости Тогда
			
			Элементы.ОСЗаполнитьПоУчету.Заголовок = 
				НСтр("ru = 'Стоимость по данным учета'");
					
			Элементы.ОСЗаполнитьПоУчету.РасширеннаяПодсказка.Заголовок = 
				НСтр("ru = 'Заполнить стоимость по данным учета в выбранных строках'");
					
		ИначеЕсли Объект.КорректировкаАмортизации Тогда
			
			Элементы.ОСЗаполнитьПоУчету.Заголовок = 
				НСтр("ru = 'Амортизацию по данным учета'");
					
			Элементы.ОСЗаполнитьПоУчету.РасширеннаяПодсказка.Заголовок = 
				НСтр("ru = 'Заполнить амортизацию по данным учета в выбранных строках'");
					
		КонецЕсли;
				
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("Организация")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("КорректировкаАмортизационнойПремии")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУвеличенияАмортизационнойПремии")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияАмортизационнойПремии")
		ИЛИ ОбновитьВсе Тогда
			
			ВалютаРеглПредставление = СлужебныеПараметрыФормы.ВалютаРеглПредставление;
			
			ЗначениеСвойства = ?(Объект.ОтражениеУвеличенияАмортизационнойПремии,
					НСтр("ru = 'Амортизационная премия (увеличение) (%1)'"),
					НСтр("ru = 'Амортизационная премия (уменьшение) (%1)'"));
					
			ЗначениеСвойства = СтрШаблон(ЗначениеСвойства, ВалютаРеглПредставление);
			Элементы.ОСАмортизационнаяПремия.Заголовок = ЗначениеСвойства;

			Элементы.ОСАмортизационнаяПремия.Подсказка = 
				?(Объект.ОтражениеУвеличенияАмортизационнойПремии,
					НСтр("ru = 'На какую сумму будет увеличена амортизационная премия'"),
					НСтр("ru = 'На какую сумму будет уменьшена амортизационная премия'"));
			
	КонецЕсли;
	
	#КонецОбласти

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

	КонецЕсли;

	Если СтруктураИзмененныхРеквизитов.Свойство("РежимИсправленияСПрошлойДаты")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ВидИмущества")
		ИЛИ ОбновитьВсе Тогда
		
		Элементы.ТекущиеПараметры.Видимость = ДоступныПараметрыЗаПериод;
			
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ТекущиеПараметры")
		ИЛИ ОбновитьВсе Тогда
			
		Если Форма.ТекущиеПараметры = "УУ" Тогда
			Элементы.СтраницаПараметры2.ТекущаяСтраница = Элементы.СтраницаПараметрыЗаВесьПериодУУ;
		ИначеЕсли Форма.ТекущиеПараметры = "БУ" Тогда
			Элементы.СтраницаПараметры2.ТекущаяСтраница = Элементы.СтраницаПараметрыЗаВесьПериодБУ;
		ИначеЕсли Форма.ТекущиеПараметры = "НУ" Тогда
			Элементы.СтраницаПараметры2.ТекущаяСтраница = Элементы.СтраницаПараметрыЗаВесьПериодНУ;
		Иначе
			Элементы.СтраницаПараметры2.ТекущаяСтраница = Элементы.СтраницаПараметрыНаНачалоПериода;
		КонецЕсли;
			
	КонецЕсли;
	
	#КонецОбласти
	
	#Область ПараметрыБУ
	Если СтруктураИзмененныхРеквизитов.Свойство("Организация")
		ИЛИ ОбновитьВсе Тогда
			
		ВалютаРеглПредставление = СлужебныеПараметрыФормы.ВалютаРеглПредставление;
		Элементы.ПараметрыЗаПериодБУАмортизацияБУ.Заголовок = СтрШаблон(НСтр("ru = 'Амортизация (%1)'"), ВалютаРеглПредставление);
		Элементы.ПараметрыЗаПериодБУСтоимостьДляВычисленияАмортизацииБУ.Заголовок = СтрШаблон(НСтр("ru = 'Стоимость (%1)'"), ВалютаРеглПредставление);
		Элементы.ПараметрыЗаПериодБУСтоимостьБУ.Заголовок = СтрШаблон(НСтр("ru = 'Стоимость (%1)'"), ВалютаРеглПредставление);
				
		Элементы.ПараметрыЗаПериодБУГруппаИзменениеАмортизации.ОтображатьВШапке = Ложь;
		Элементы.ПараметрыЗаПериодБУАмортизацияРеглИзменение.Заголовок = СтрШаблон(НСтр("ru = 'Изменение амортизации (%1)'"), ВалютаРеглПредставление);
			
	КонецЕсли;	
	#КонецОбласти
	
	#Область ПараметрыУУ

	Если ОбновитьВсе Тогда
		
		ЗначениеСвойства =
			Элементы.ПараметрыЗаПериодАмортизацияРеглИзменение.Видимость
			И Элементы.ПараметрыЗаПериодАмортизацияИзменение.Видимость;
			 
		Элементы.ПараметрыЗаПериодГруппаАмортизацияИзменение.ОтображатьЗаголовок = ЗначениеСвойства;
		Элементы.ПараметрыЗаПериодГруппаАмортизацияИзменение.ОтображатьВШапке = ЗначениеСвойства;
				
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("Дата")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("Организация")
		ИЛИ ОбновитьВсе Тогда
			
		Элементы.ПараметрыЗаПериодАмортизацияРегл.Заголовок = СтрШаблон(НСтр("ru = 'Амортизация (%1)'"), ВалютаРеглПредставление);
		Элементы.ПараметрыЗаПериодАмортизация.Заголовок = СтрШаблон(НСтр("ru = 'Амортизация (%1)'"), ВалютаУпрПредставление);
		
		Если Элементы.ПараметрыЗаПериодАмортизацияРеглИзменение.Видимость
			И Элементы.ПараметрыЗаПериодАмортизацияИзменение.Видимость Тогда
			
			Элементы.ПараметрыЗаПериодАмортизацияРеглИзменение.Заголовок = ВалютаРеглПредставление;
			Элементы.ПараметрыЗаПериодАмортизацияИзменение.Заголовок = ВалютаУпрПредставление;
			
		Иначе
			
			Элементы.ПараметрыЗаПериодАмортизацияРеглИзменение.Заголовок = СтрШаблон(НСтр("ru = 'Изменение амортизации (%1)'"), ВалютаРеглПредставление);
			Элементы.ПараметрыЗаПериодАмортизацияИзменение.Заголовок = СтрШаблон(НСтр("ru = 'Изменение амортизации (%1)'"), ВалютаУпрПредставление);
			
		КонецЕсли;
		
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("СрокИспользованияДляВычисленияАмортизации")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражатьВУпрУчете")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("РежимИсправленияСПрошлойДаты")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("НачалоПериода")
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ПараметрыЗаПериод")
		ИЛИ ОбновитьВсе Тогда
		
		Если Объект.ПараметрыЗаПериод.Количество() > 0 Тогда
			Форма.СрокИспользованияУУРасшифровка = 
				ВнеоборотныеАктивыКлиентСервер.ПредставлениеКоличестваМесяцевСтрокой(Объект.ПараметрыЗаПериод[0].СрокИспользованияДляВычисленияАмортизации);
		Иначе
			Форма.СрокИспользованияУУРасшифровка =  "";
		КонецЕсли;
			
	КонецЕсли;
	
	Если СтруктураИзмененныхРеквизитов.Свойство("ОтражатьВРеглУчете")
		ИЛИ ОбновитьВсе Тогда
		
		Элементы.ГруппаПараметрыУУ.ОтображатьЗаголовок = Объект.ОтражатьВРеглУчете;
			
	КонецЕсли;
	
	#КонецОбласти
	
	#Область СтраницаРасходыИДоходы

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

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

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

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

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

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

	Если СтруктураИзмененныхРеквизитов.Свойство("КорректировкаСтоимости") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияСтоимости") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияСтоимостиСторно") 
		ИЛИ ОбновитьВсе Тогда

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

	КонецЕсли;

	Если СтруктураИзмененныхРеквизитов.Свойство("КорректировкаАмортизации") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияАмортизации") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияАмортизацииСторно") 
		ИЛИ ОбновитьВсе Тогда

		Если Объект.ОтражениеУменьшенияАмортизацииСторно Тогда
			Элементы.ГруппаУменьшениеАмортизацииПрошлыхЛет.Заголовок = НСтр("ru = 'Уменьшение амортизации прошлых лет'");
			Элементы.ДекорацияУменьшениеАмортизации.Заголовок = НСтр("ru = 'Уменьшение амортизации прошлых лет'");
		Иначе
			Элементы.ГруппаУменьшениеАмортизацииПрошлыхЛет.Заголовок = НСтр("ru = 'Уменьшение амортизации'");
			Элементы.ДекорацияУменьшениеАмортизации.Заголовок = НСтр("ru = 'Уменьшение амортизации'");
		КонецЕсли;

	КонецЕсли;

	Если СтруктураИзмененныхРеквизитов.Свойство("КорректировкаАмортизационнойПремии") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияАмортизационнойПремии") 
		ИЛИ СтруктураИзмененныхРеквизитов.Свойство("ОтражениеУменьшенияАмортизационнойПремииСторно") 
		ИЛИ ОбновитьВсе Тогда

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

	КонецЕсли;

	#КонецОбласти
	
	СохранитьЗначенияРеквизитовДоИзменения(Форма);

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

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

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

		Если ЗначениеЗаполнено(СлужебныеПараметрыФормы.ВалютаРеглПредставление) Тогда
			
			ВалютаРеглПредставление = СлужебныеПараметрыФормы.ВалютаРеглПредставление;
			Элементы.ОССтоимостьБУ.Заголовок = СтрШаблон(НСтр("ru = 'БУ (%1)'"), ВалютаРеглПредставление);
			Элементы.ОСАмортизацияБУ.Заголовок = СтрШаблон(НСтр("ru = 'БУ (%1)'"), ВалютаРеглПредставление);
			Элементы.ОССтоимостьБУ_Отдельно.Заголовок = СтрШаблон(НСтр("ru = 'Стоимость (%1)'"), ВалютаРеглПредставление);
			Элементы.ОСАмортизацияБУ_Отдельно.Заголовок = СтрШаблон(НСтр("ru = 'Амортизация (%1)'"), ВалютаРеглПредставление);
			Элементы.ОСПервоначальнаяСтоимостьБУ.Заголовок = СтрШаблон(НСтр("ru = 'БУ (%1)'"), ВалютаРеглПредставление);
			Элементы.ОСПервоначальнаяСтоимостьБУ_Отдельно.Заголовок = СтрШаблон(НСтр("ru = 'Первоначальная стоимость (%1)'"), ВалютаРеглПредставление);
			Элементы.ОССтоимостьДляВычисленияАмортизацииБУ.Заголовок = СтрШаблон(НСтр("ru = 'Стоимость (БУ, %1)'"), ВалютаРеглПредставление);
			
			Элементы.ОССтоимостьДляВычисленияАмортизацииБУ_Отдельно.Заголовок = 
				СтрШаблон(НСтр("ru = 'Стоимость для вычисления амортизации (БУ, %1)'"), СлужебныеПараметрыФормы.ВалютаРеглПредставление);
			
		Иначе
			
			Элементы.ОССтоимостьБУ.Заголовок = НСтр("ru = 'БУ'");
			Элементы.ОСАмортизацияБУ.Заголовок = НСтр("ru = 'БУ'");
			Элементы.ОССтоимостьБУ_Отдельно.Заголовок = НСтр("ru = 'Стоимость'");
			Элементы.ОСАмортизацияБУ_Отдельно.Заголовок = НСтр("ru = 'Амортизация'");
			Элементы.ОСПервоначальнаяСтоимостьБУ.Заголовок = НСтр("ru = 'БУ'");
			Элементы.ОСПервоначальнаяСтоимостьБУ_Отдельно.Заголовок = НСтр("ru = 'Первоначальная стоимость'");
			Элементы.ОССтоимостьДляВычисленияАмортизацииБУ.Заголовок = НСтр("ru = 'Стоимость (БУ)'");
			Элементы.ОССтоимостьДляВычисленияАмортизацииБУ_Отдельно.Заголовок = НСтр("ru = 'Стоимость для вычисления амортизации (БУ)'");
			
		КонецЕсли;

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

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

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

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

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

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

	ЗаполнитьШапкуПоВыбраннымОС();

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

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

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

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

	НастроитьЗависимыеЭлементыФормыНаСервере("Организация");
	
КонецПроцедуры

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

#Область ШтрихкодыИТорговоеОборудование

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

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

&НаКлиенте
Процедура ЗагрузитьИзТСДЗавершение(Результат, ДополнительныеПараметры) Экспорт
	
	Если Результат.Результат Тогда
		ОбработатьШтрихкоды(Результат.ТаблицаТоваров);
	Иначе
		МенеджерОборудованияУТКлиент.СообщитьОбОшибке(Результат);
	КонецЕсли;
	
КонецПроцедуры

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

#Область УправлениеПараметрамиЗаПериод

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

	Модифицированность = Истина;
	Объект.НачалоПериода = ВыбранныйПериод;
	
	Если ПроверитьНачалоПериода() Тогда
		НачалоПериодаПриИзмененииНаСервере();
	КонецЕсли;

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

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

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

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

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

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

	Если НачалоМесяца(Объект.НачалоПериода) >= НачалоМесяца(Объект.Дата) Тогда
		
		ТекстПредупреждения = НСтр("ru = 'Начало периода корректировки должно быть не позже %1'");
		ТекстПредупреждения = СтрШаблон(ТекстПредупреждения, Формат(НачалоМесяца(Объект.Дата), "ДЛФ=D;"));
		
		ПоказатьПредупреждение(,ТекстПредупреждения);
		
		Объект.НачалоПериода = ЗначенияРеквизитовДоИзменения.НачалоПериода;
		
		Возврат Ложь;
		
	КонецЕсли;
	
	Возврат Истина;
	
КонецФункции

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

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

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

&НаСервере
Процедура НачалоПериодаПриИзмененииНаСервере()
	
	Объект.НачалоПериода = НачалоМесяца(Объект.НачалоПериода);
	
	ОбновитьПараметрыЗаПериод();

	НастроитьЗависимыеЭлементыФормыНаСервере("НачалоПериода,ПараметрыЗаПериод");
	
КонецПроцедуры

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

&НаКлиенте
Процедура ЗаполнитьПоУмолчаниюБУЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
	
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		ЗаполнитьПоУмолчаниюБУНаСервере();
	КонецЕсли;
		
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьПоУмолчаниюУУЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
	
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		ЗаполнитьПоУмолчаниюУУНаСервере();
	КонецЕсли;
		
КонецПроцедуры

&НаКлиенте
Процедура РассчитатьАмортизациюБУЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
	
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		НачатьРасчетАмортизацииПоЗаданнымПараметрамНаСервере("БУ");
	КонецЕсли;
		
КонецПроцедуры

&НаКлиенте
Процедура РассчитатьАмортизациюУУЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
	
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		НачатьРасчетАмортизацииПоЗаданнымПараметрамНаСервере("УУ");
	КонецЕсли;
	
КонецПроцедуры

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

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

&НаКлиенте
Процедура ПараметрыЗаПериодБУПередНачаломДобавленияЗавершение(Результат, ДополнительныеПараметры) Экспорт
	
	Если Результат = Неопределено Тогда
		Возврат;
	КонецЕсли;
	
	ИндексСтроки = 0;

	Для Сч = 0 По Объект.ПараметрыЗаПериодБУ.Количество()-1 Цикл
		
		ДанныеСтроки = Объект.ПараметрыЗаПериодБУ[Сч];
		
		Если ДанныеСтроки.Дата = Результат Тогда
			Возврат;
		КонецЕсли;
		
		Если ДанныеСтроки.Дата < Результат
			И Сч < Объект.ПараметрыЗаПериодБУ.Количество()-1
			И Объект.ПараметрыЗаПериодБУ[Сч+1].Дата > Результат Тогда
			
			ИндексСтроки = Сч+1;
			Прервать;
		КонецЕсли;
		
	КонецЦикла;
	
	ДобавитьПараметры(Объект.ПараметрыЗаПериодБУ, ИндексСтроки, Результат);
	
КонецПроцедуры

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

	Для Сч = 0 По Объект.ПараметрыЗаПериод.Количество()-1 Цикл
		
		ДанныеСтроки = Объект.ПараметрыЗаПериод[Сч];
		
		Если ДанныеСтроки.Дата = Результат Тогда
			Возврат;
		КонецЕсли;
		
		Если ДанныеСтроки.Дата < Результат
			И Сч < Объект.ПараметрыЗаПериод.Количество()-1
			И Объект.ПараметрыЗаПериод[Сч+1].Дата > Результат Тогда
			
			ИндексСтроки = Сч+1;
			Прервать;
		КонецЕсли;
		
	КонецЦикла;
	
	ДобавитьПараметры(Объект.ПараметрыЗаПериод, ИндексСтроки, Результат);
	
КонецПроцедуры

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

	ДанныеСтроки = Таблица.Вставить(ИндексСтроки);	
	ДанныеСтроки.Дата = ДатаПараметров;
	ДанныеСтроки.МожноУдалить = Истина;

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

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

	Возврат НачалоМесяца(ДобавитьМесяц(Дата, -1));
	
КонецФункции

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

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

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

#Область Локализация

&НаКлиенте
Процедура ПриОкончанииИзмененияРеквизитаЛокализации(ИмяЭлемента, ПараметрыОповещения) Экспорт
	
	Перем ПараметрыДействия;

	Если ПараметрыОповещения.ПараметрыОбработки.Свойство("Выполнить_НастроитьЗависимыеЭлементыФормы", ПараметрыДействия) Тогда
		НастроитьЗависимыеЭлементыФормы(ПараметрыДействия);
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура ПродолжитьВыполнениеКомандыЛокализации(ИмяКоманды, ПараметрыОповещения) Экспорт

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

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

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

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

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

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

#Область ПодключаемыеКоманды

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

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

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

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

#Область Прочее

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

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

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

	ИнициализироватьСлужебныеПараметрыФормы();
	
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьСлужебныеРеквизитыТЧ()

	Для Каждого ДанныеСтроки Из Объект.ПараметрыЗаПериод Цикл
		ДанныеСтроки.МожноУдалить = (КонецДня(ДанныеСтроки.Дата) <> КонецМесяца(ДанныеСтроки.Дата));
	КонецЦикла;
	
	Для Каждого ДанныеСтроки Из Объект.ПараметрыЗаПериодБУ Цикл
		ДанныеСтроки.МожноУдалить = (КонецДня(ДанныеСтроки.Дата) <> КонецМесяца(ДанныеСтроки.Дата));
	КонецЦикла;
	
КонецПроцедуры

&НаСервере
Процедура ИнициализироватьСлужебныеПараметрыФормы()

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

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

&НаСервере
Процедура ПодборНаСервере(ВыбранноеЗначение)

	ДобавленныеСтроки = ВнеоборотныеАктивыКлиентСервер.ОбработкаВыбораЭлемента(Объект.ОС, "ОсновноеСредство", ВыбранноеЗначение);

	Если ДобавленныеСтроки.Количество() <> 0 Тогда
		ЗаполнитьШапкуПоВыбраннымОС();
		ЗаполнитьПоДаннымУчетаНаСервере(ДобавленныеСтроки);
	КонецЕсли;
	
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьПоУчетуЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
	
	Если РезультатВопроса = КодВозвратаДиалога.Да Тогда
		ЗаполнитьПоУчетуНаСервере();
	КонецЕсли;
	
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьПоУчетуНаСервере()

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

КонецПроцедуры
 
&НаСервере
Процедура ЗаполнитьПоДаннымУчетаНаСервере(СписокСтрок)

	Документы.КорректировкаСтоимостиИАмортизацииОС.ЗаполнитьПоДаннымУчета(Объект, СписокСтрок);

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

&НаКлиентеНаСервереБезКонтекста
Функция ЗаполнитьРеквизитыВЗависимостиОтСвойств(Форма, ПараметрыРеквизитовОбъекта)

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

&НаСервере
Процедура ЗаполнитьШапкуПоВыбраннымОС()

	ИзмененныеРеквизиты = "ОсновноеСредство";
	
	ВнеоборотныеАктивыСлужебный.ЗаполнитьШапкуПоВыбраннымОС(
		"Организация,Подразделение", 
		Объект.ОС, 
		Объект, 
		ИзмененныеРеквизиты);
	
	//++ Локализация
	Если НЕ Объект.ПрименениеЦелевогоФинансирования Тогда
		ОсновноеСредство = ВнеоборотныеАктивыСлужебный.ПервоеЗаполненноеЗначениеВТаблице(Объект.ОС, "ОсновноеСредство");
		Если ЗначениеЗаполнено(ОсновноеСредство) Тогда
			ПервоначальныеСведения = Справочники.ОбъектыЭксплуатации.ПервоначальныеСведения(ОсновноеСредство);
			Объект.ПрименениеЦелевогоФинансирования = ПервоначальныеСведения.ПрименениеЦелевогоФинансирования;
			ИзмененныеРеквизиты = ИзмененныеРеквизиты + "," + "ПрименениеЦелевогоФинансирования";
		КонецЕсли;
	КонецЕсли;
	//-- Локализация
	
	НастроитьЗависимыеЭлементыФормыНаСервере(ИзмененныеРеквизиты);
	
КонецПроцедуры

&НаСервере
Процедура УстановитьУсловноеОформление()
	
	УсловноеОформление.Элементы.Очистить();
	
	КорректировкаСтоимостиИАмортизацииОСЛокализация.УстановитьУсловноеОформление(ЭтотОбъект);

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

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

	НеобходимоОбновитьПараметры = 
		Объект.ВключаетАмортизациюТекущегоМесяца <> Результат.ВключаетАмортизациюТекущегоМесяца
		И Объект.РежимИсправленияСПрошлойДаты;
	
	НастроитьПараметрыКорректировкиЗавершениеНаСервере(НеобходимоОбновитьПараметры);

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

&НаСервере
Процедура НастроитьПараметрыКорректировкиЗавершениеНаСервере(Знач НеобходимоОбновитьПараметры)

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

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

&НаКлиентеНаСервереБезКонтекста
Функция ПараметрыКорректировки()
	
	ПараметрыКорректировки = 
	"КорректировкаСтоимости,КорректировкаПервоначальнойСтоимости,
	|КорректировкаАмортизации,ВключаетАмортизациюТекущегоМесяца,КорректировкаПараметровРасчетаАмортизации,
	|КорректировкаАмортизационнойПремии,КорректировкаСуммыРасходовНУПриИНВ,
	|ОтражениеУвеличенияСтоимости,ОтражениеУменьшенияСтоимости,ОтражениеУменьшенияСтоимостиСторно,ОтражениеИзмененияСтоимостиНУЗаСчетПР,
	|ОтражениеУвеличенияАмортизации,ОтражениеУменьшенияАмортизации,ОтражениеУменьшенияАмортизацииСторно,РаздельнаяКорректировкаТекущегоИПрошлогоПериодов,
	|ОтражениеУвеличенияАмортизационнойПремии,ОтражениеУменьшенияАмортизационнойПремии,ОтражениеУменьшенияАмортизационнойПремииСторно,
	|УточнениеПериода,ПрименениеЦелевогоФинансирования";
	
	Возврат ПараметрыКорректировки;
	
КонецФункции

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

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

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