Повідомлення=Новий СообщеніеПользователю;
Сообщеніе.Текст= Сертифікат заміщений іншим сертифікатом більш високого рівня. Проведення документа неможливо. Raquo ;;
Сообщеніе.Сообщіть ();
Відмова=Істина;
Інакше
ЕстьЗамещаемийСертіфікат ();
Набір=РегистрыСведений.ЗП_СертификатыСотрудника.СоздатьНаборЗаписей();
Набор.Отбор.Документ.Установіть (Лінк);
Набор.Прочітать ();
ТабліцаЗначеній=Набор.Вигрузіть ();
ТабліцаЗначеній.Очістіть ();
НоваяСтрока=ТабліцаЗначеній.Добавіть ();
НоваяСтрока.ВідСертіфіката=ВідСертіфіката;
НоваяСтрока.ПрограмнийПродукт=ПрограмнийПродукт;
НоваяСтрока.Получен=Істина;
НоваяСтрока.Період=Дата;
НоваяСтрока.Документ=Посилання;
Набор.Загрузіть (ТабліцаЗначеній);
Набор.Запісать ();
КонецЕсли;
КонецПроцедури
Процедура ЕстьЗамещаемийСертіфікат ()
Набір=РегистрыСведений.ЗП_СертификатыСотрудника.СоздатьНаборЗаписей();
Набор.Отбор.ВидСертификата.Установить(ЭтотОбъект.ВидСертификата.ЗамещаетСертификат);
Набор.Отбор.ПрограмныйПродукт.Установить(ЭтотОбъект.ПрограмныйПродукт);
Набор.Прочітать ();
ТабліцаЗначеній=Набор.Вигрузіть ();
Якщо ТабліцаЗначеній.Колічество () gt; 0 Тоді
Для кожного Рядок З ТабліцаЗначеній Цикл
Строка.ДокументЗамещенія=Посилання;
Строка.Замещен=Істина;
КонецЦікла;
Набор.Загрузіть (ТабліцаЗначеній);
Набор.Запісать ();
КонецЕсли;
КонецПроцедури
Функція СертіфікатЗамещен ()
Результат=Брехня;
Набір=РегистрыСведений.ЗП_СертификатыСотрудника.СоздатьНаборЗаписей();
Набор.Отбор.Документ.Установіть (Лінк);
Набор.Прочітать ();
ТабліцаЗначеній=Набор.Вигрузіть ();
Для кожного Рядок З ТабліцаЗначеній Цикл
Якщо Строка.ДокументЗамещенія.Проведен І Строка.Замещен Тоді
Результат=Істина;
Перервати;
Інакше
Результат=Брехня;
КонецЕсли;
КонецЦікла;
Повернення (Результат);
КонецФункции
Процедура ОбработкаУдаленіяПроведенія (Відмова)
СертіфікатЗамещен=СертіфікатЗамещен ();
Якщо СертіфікатЗамещен Тоді
Повідомлення=Новий СообщеніеПользователю;
Сообщеніе.Текст= Сертифікат заміщений іншим сертифікатом більш високого рівня. Проведення документа неможливо. Raquo ;;
Сообщеніе.Сообщіть ();
Відмова=Істина;
Інакше
УдалітьДвіженіяВЗамещеннихСертіфікатах ();
Набір=РегистрыСведений.ЗП_СертификатыСотрудника.СоздатьНаборЗаписей();
Набор.Отбор.Документ.Установіть (Лінк);
Набор.Прочітать ();
ТабліцаЗначеній=Набор.Вигрузіть ();
ТабліцаЗначеній.Очістіть ();
Набор.Загрузіть (ТабліцаЗначеній);
Набор.Запісать ();
КонецЕсли;
КонецПроцедури
Процедура УдалітьДвіженіяВЗамещеннихСертіфікатах ()
Набір=РегистрыСведений.ЗП_СертификатыСотрудника.СоздатьНаборЗаписей();
Набор.Отбор.ДокументЗамещения.Установить(Ссылка);
Набор.Прочітать ();
ТабліцаЗначеній=Набор.Вигрузіть ();
Якщо ТабліцаЗначеній.Колічество () gt; 0 Тоді
Для кожного Рядок З ТабліцаЗначеній Цикл
ЗавісімиеДокументи=Строка.Документ;
Строка.ДокументЗамещенія=Документи.ЗП_ПрісвоеніеСертіфіката.ПустаяСсилка ();
Строка.Замещен=Брехня;
КонецЦікла;
//ТабліцаЗначеній2=ТабліцаЗначеній.Скопіровать (); ...