Документ Регистратор При Проверке Записи

v8

Получить ссылку на объект записи для которого нужно проверять исключение из правил Используется когда нужно для какого-то вида документа сделать особую проверку на запрет изменения данных При проведении документа с исключением инициируются так же изменения для регистров, которые тоже нужно пропустить, т.к. они относятся к тому же документу, и без этого изменения в документ сохранены не будут.

Пример применение УТ-11.4, КА-2.4:

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

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

Плановая себестоимость продаж (цена на Дату документа)

Модератору