ВыполнитьПроверку (БСП)

Автор: 1С
ОбщийМодуль.КонтрольВеденияУчетаСлужебный
БСП

Выполнить проверку. См. КонтрольВеденияУчета.ВыполнитьПроверку.

// См. КонтрольВеденияУчета.ВыполнитьПроверку.
Процедура ВыполнитьПроверку(Проверка, ПараметрыВыполненияПроверки = Неопределено) Экспорт
	
	Если ТипЗнч(Проверка) = Тип("Строка") Тогда
		ВыполняемаяПроверка = КонтрольВеденияУчета.ПроверкаПоИдентификатору(Проверка);
	Иначе
		ВыполняемаяПроверка = Проверка;
	КонецЕсли;
	
	Если Не ОбновлениеИнформационнойБазы.ОбъектОбработан(ВыполняемаяПроверка).Обработан Тогда
		Возврат;
	КонецЕсли;
	
	ЗаданыПараметрыВыполненияПроверки = ПараметрыВыполненияПроверки <> Неопределено;
	ПараметрыПроверки = ПодготовитьПараметрыПроверки(ВыполняемаяПроверка, ПараметрыВыполненияПроверки);
	Если ПроверкаУжеВыполняется(ПараметрыПроверки.ИдентификаторРегламентногоЗадания) Тогда
		Возврат;
	КонецЕсли;
	
	ПроверкиВеденияУчета = КонтрольВеденияУчетаСлужебныйПовтИсп.ПроверкиВеденияУчета();
	Проверки             = ПроверкиВеденияУчета.Проверки;
	СтрокаПроверки       = Проверки.Найти(ПараметрыПроверки.Идентификатор, "Идентификатор");
	Если СтрокаПроверки = Неопределено Тогда 
		ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
			НСтр("ru = 'Проверка ведения учета с идентификатором ""%1"" не существует (см. КонтрольВеденияУчетаПереопределяемый.ПриОпределенииПроверок)'"), 
				ПараметрыПроверки.Идентификатор);
	КонецЕсли;
		
	Если СтрокаПроверки.БезОбработчикаПроверки Тогда
		Возврат;
	КонецЕсли;
	
	Если Не ЗаданыПараметрыВыполненияПроверки Тогда
		ОчиститьРезультатыПредыдущихПроверок(ВыполняемаяПроверка, ПараметрыПроверки.ПараметрыВыполненияПроверки);
	КонецЕсли;
	
	МодульОценкаПроизводительности = Неопределено;
	Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда
		МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности");
		ОписаниеЗамера = МодульОценкаПроизводительности.НачатьЗамерДлительнойОперации(ПараметрыПроверки.Идентификатор);
	КонецЕсли;
	
	ПараметрыОбработчика = Новый Массив;
	ПараметрыОбработчика.Добавить(ВыполняемаяПроверка);
	ПараметрыОбработчика.Добавить(ПараметрыПроверки);
	ОбщегоНазначения.ВыполнитьМетодКонфигурации(СтрокаПроверки.ОбработчикПроверки, ПараметрыОбработчика);
	
	Если МодульОценкаПроизводительности <> Неопределено Тогда
		МодульОценкаПроизводительности.ЗакончитьЗамерДлительнойОперации(ОписаниеЗамера, 0);
	КонецЕсли;
	
КонецПроцедуры

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

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

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

ВыполнитьПроверкуПодключения (БСП)

СоздатьНовоеSMSПроверкаНастроекВыполнена (БСП)

ВыполнитьПроверкиВКонтексте (БСП)

ВыполнитьПроверкиВФоновомЗадании (БСП)

ВыполнитьКонтрольЗаписиНеразделенныхДанных (БСП)

СоздатьНовоеПисьмоПроверкаУчетнойЗаписиВыполнена (БСП)

ВыполнитьЗадачиМониторингаЦКК (БСП)

ВыполнитьИмпортФайлов (БСП)

TurboConf 6 - расширение Конфигуратора 1С