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