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