Непонятное поведение расширения. Ошибка при запуске
Добрый день !
Делаю расширения для конфигурации ЗиУП 3.1 КОРП
Так как расширение пока в разработке его активность отключена.
В расширении добавлен свой общий модуль и 2 подписки на события ПередЗаписью и ПриЗаписи (порядок ПодписокНаСобытия соблюден)
В событии ПередЗаписью для Источников (Документы ПриемНаРаботу и Увольнение) В Дополнительные Свойства объекта добавляется признак что это новый объект
В подписке на события ПриЗаписи идет несколько проверок и далее вызывается Функция для подготовки параметров письма
Функция подготовить параметры письма
Далее для отладки алгоритма включаю активность у расширения и запускаю отладку но получаю ошибку "В данный момент вход в приложение невозможен"
Не удалось создать новую версию расширения и далее в ошибке ссылается на новое расширение и отсутствие поля "Сотрудник" у Источника.
Самое интересное что если временно убрать любое обращение к переменной Источник в теле функции но оставить в параметрах функции ПодготовитьПараметрыПисьма, то расширение запускается , и просмотр этой переменной в отладчике показывает ,что в нее попадает именно документ (ДокументОбъект.ПриемНаРаботу или ДокументОбъект.Увольнение) у которого есть реквизит Сотрудник
Делаю расширения для конфигурации ЗиУП 3.1 КОРП
Так как расширение пока в разработке его активность отключена.
В расширении добавлен свой общий модуль и 2 подписки на события ПередЗаписью и ПриЗаписи (порядок ПодписокНаСобытия соблюден)
В событии ПередЗаписью для Источников (Документы ПриемНаРаботу и Увольнение) В Дополнительные Свойства объекта добавляется признак что это новый объект
Процедура УведКадрИзм_УведомлениеОКадровыхИзмененияхПередЗаписью(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт
Источник.ДополнительныеСвойства.Вставить("ЭтоНовый",Источник.ЭтоНовый());
КонецПроцедуры
В подписке на события ПриЗаписи идет несколько проверок и далее вызывается Функция для подготовки параметров письма
Процедура УведКадрИзм_УведомлениеОКадровыхИзмененияхПриЗаписи(Источник, Отказ) Экспорт
Если Отказ Тогда
Возврат;
КонецЕсли;
ЭтоНовый = Ложь;
Если Источник.ДополнительныеСвойства.свойство("ЭтоНовый",ЭтоНовый) = Неопределено Тогда
Возврат;
КонецЕсли;
Если ЭтоНовый = ложь Тогда
Возврат;
КонецЕсли;
ДоступнаОтправкаПисем = РаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем();
Если НЕ ДоступнаОтправкаПисем Тогда
Возврат;
КонецЕсли;
ПараметрыПисьма = ПодготовитьПараметрыПисьма(Источник);
//
/// ОправитьУведомление(ПараметрыПисьма);
КонецПроцедуры
ПоказатьФункция подготовить параметры письма
Функция ПодготовитьПараметрыПисьма(Источник)
ЭтоПриемНаРаботу = ТипЗнч(Источник) = Тип("ДокументОбъект.ПриемНаРаботу");
ПараметрыПисьма = ПараметрыОтправкиПисем();
Сотрудник = Источник.Сотрудник;
Организация =Источник.Организация;
Если ЭтоПриемНаРаботу Тогда
ТекстПисьма = ШаблонПисьмаПриемНаРаботу();
ПараметрыПисьма.Тема = "Уведомление о приеме нового сотрудника";
Иначе
ДатаУвольнения = Источник.ДатаУвольнения;
ТекстПисьма = ТекстПисьмаОбУвольнении(Сотрудник,ДатаУвольнения,Организация);
ПараметрыПисьма.Тема = СтрШаблон("Уволился сотрудник %1",Сотрудник);;
КонецЕсли;
ПараметрыПисьма.Кому = "Тут адрес эл.почты получателя";
ПараметрыПисьма.Тело = ТекстПисьма;
Возврат ПараметрыПисьма;
КонецФункции
ПоказатьДалее для отладки алгоритма включаю активность у расширения и запускаю отладку но получаю ошибку "В данный момент вход в приложение невозможен"
Не удалось создать новую версию расширения и далее в ошибке ссылается на новое расширение и отсутствие поля "Сотрудник" у Источника.
Самое интересное что если временно убрать любое обращение к переменной Источник в теле функции но оставить в параметрах функции ПодготовитьПараметрыПисьма, то расширение запускается , и просмотр этой переменной в отладчике показывает ,что в нее попадает именно документ (ДокументОбъект.ПриемНаРаботу или ДокументОбъект.Увольнение) у которого есть реквизит Сотрудник
Прикрепленные файлы:

По теме из базы знаний
- Конфигурация Flowcon: Набор инструментов для управления задачами, проектами и бизнесом в 1С
- Применение программистом таблицы рисков для оценки технического задания
- Не спеша, эффективно и правильно – путь разработки. Часть 3. Практика
- Кровь, пот и GIT
- Быстрый фронт в базе размером 8.8 терабайт – наши стандарты при разработке компонентов системы
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
У этих документов есть "связанные" документы с суфиксом Списком, где нет реквизита Сотрудник. В них ТЧ Сотрудники. Возможно проблема связана с ними.
что в нее попадает именно документ (ДокументОбъект.ПриемНаРаботу или ДокументОбъект.Увольнение) у которого есть реквизит Сотрудник
У этих документов есть "связанные" документы с суфиксом Списком, где нет реквизита Сотрудник. В них ТЧ Сотрудники. Возможно проблема связана с ними.
(12) Ошибка из-за моей невнимательности. Действительно в подписке на события случайным образом оказался тип СправочникОбъект, хотя ни одного справочника в расширении нет. наверно случайно ткнул на этот объект и не обратил внимание - из-за этого и получал ошибку
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот