ОбъектПриЧтенииНаСервере (БСП)

Автор: 1С
ОбщийМодуль.ДатыЗапретаИзменения
БСП

Объект при чтении на сервере. Обработчик события формы ПриЧтенииНаСервере, который встраивается в формы элементов справочников,

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

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ОбъектПриЧтенииНаСервере (БСП)

ПриЧтенииНаСервере (БСП)

ПриЧтенииПредставленийНаСервере (БСП)

ЕстьПравоЧтенияИнформацииОВерсияхОбъектов (БСП)

ЕстьПравоЧтенияДанныхВерсийОбъектов (БСП)

Чтение файла XML в объект XDTO

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз