Категории эксплуатации / Форма элемента / Модуль формы

файл

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	Если Параметры.Свойство("АвтоТест") Тогда
		Возврат;
	КонецЕсли;

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

&НаСервере
Процедура ПриЧтенииНаСервере(ТекущийОбъект)
	
	ПриЧтенииСозданииНаСервере();
	
	МультиязычностьСервер.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект);
	
КонецПроцедуры

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

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

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

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

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

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

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

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

	//-- НЕ УТ
	
	Возврат; // Для УТ обработчик пустой
	
КонецПроцедуры

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

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

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

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

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

&НаКлиенте
Процедура СсылкаНастройкаСчетовУчетаОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
	
	//++ НЕ УТ
	НастройкаСчетовУчетаКлиент.ОбработкаНавигационнойСсылкиНастройкаСчетовУчета(
		ЭтотОбъект, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка);
	//-- НЕ УТ
	Возврат; // В УТ обработчик пустой
		
КонецПроцедуры

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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