Имя: Пароль:
1C
1С v8
Ошибка при инициализации самописного общего модуля
0 lirt82
 
16.07.19
14:24
В конфе есть самописный общий модуль, в нем есть процедуры которые вызываются при выполнении регл. задания, сегодня в этот модуль добавил через подписку свою новую процедуру, и регл. задание перестало выполнятся.
Ошибка инициализации модуля: ОбщийМодуль.ХХХХХХ.Модуль
по причине:
{ОбщийМодуль.ХХХХХХ.Модуль(629,14)}: Переменная не определена (глТекущийПользователь)
вот собственно добавленная процедура
Процедура _ДатаДокаЗаднимЧисломПередЗаписью(Источник, Отказ) Экспорт
    
    Если СокрЛП(глТекущийПользователь.Наименование) <> "Иванов" И
        СокрЛП(глТекущийПользователь.Наименование) <> "Петров" Тогда
        Возврат
    Иначе
        #Если Клиент Тогда
            Режим = РежимДиалогаВопрос.ДаНет;
            Ответ = Вопрос("Изменить дату документа?", Режим, 0);
        #КонецЕсли
        Если Ответ = КодВозвратаДиалога.Да Тогда
            НДатаДока = ТекущаяДата();
            Если ВвестиДату(НДатаДока) Тогда
                Источник.Дата = НДатаДока;
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры

как исправить? ведь глТекущийПользователь экспортная и объявлена в глобальном модуле.
1 lodger
 
16.07.19
14:27
(0) каждый год говорят - не используйте экспортная и объявлена в глобальном переменные.
2 lodger
 
16.07.19
14:29
но если охота наговнокодить, тогда в
"#Если Клиент Тогда" заверни всю эту процедуру.
3 lirt82
 
16.07.19
14:30
(1) и какой выход?
4 lirt82
 
16.07.19
14:32
(1) объявить в этом модуле после всех процедур и функции
глТекущийПользователь = ТекущийПользователь(); ?