Процедура ПриНачалеРаботыСистемы в расширении

1. KonecEsli 1 05.11.21 08:51 Сейчас в теме
Доброго времени дня коллеги !
Имеем: Розница 2.3, простенькая обработка (писал сам), которая запросом отбирает дни рождения
физ. лиц., по некоторым условиям, в цикле сравнивает ДеньРождения с ТекДатой и сообщает что-то там при нажатии на кнопку.

Все в полном порядке, но появилась необходимость запускать данную обработку при начале работы системы. Конфа не на поддержке, поэтому на ум пришло простое решение - запилить свой общий модуль, туда прикрутить свою процедурку обработки, сделать ее экспортной и вызвать через модуль приложения в процедуре ПриНачалеРаботыСистемы (так как код в модуле приложения компилируется исключительно на клиенте).

Но не хотелось бы портить себе карму ) Поэтому решил провернуть данный план через расширение и тут наткнулся на непонятку. В расширении, в модуле приложения, пишу свою процедуру ПриНачалеРаботыСистемы и в ней вызываю процедуру из созданного в расширении общего модуля.
И естественно получаю ошибку, что данная процедура уже определена. Логично.

Вопрос: Лопата есть. Куда копать ?
По теме из базы знаний
Найденные решения
2. ElGatoGris 05.11.21 09:07 Сейчас в теме
В модуле приложения расширения должно быть что-то вроде
&После("ПриНачалеРаботыСистемы")
Процедура МояПроцедураПриНачалеРаботыСистемы
...

Однако, такую задачу лучше решать через регламентное задание, запускаемое один раз в день.
KonecEsli; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. ElGatoGris 05.11.21 09:07 Сейчас в теме
В модуле приложения расширения должно быть что-то вроде
&После("ПриНачалеРаботыСистемы")
Процедура МояПроцедураПриНачалеРаботыСистемы
...

Однако, такую задачу лучше решать через регламентное задание, запускаемое один раз в день.
KonecEsli; +1 Ответить
3. KonecEsli 1 05.11.21 09:14 Сейчас в теме
(2) Большое спасибо, попробую. На счет рег задания тоже логично но запрос на 3 строчки, +цикл более чем простой ))
4. AnryMc 848 05.11.21 10:55 Сейчас в теме
Здесь Расширение "Вышибала"
я делал так:
Модуль приложения:
&После("ПриНачалеРаботыСистемы")
Процедура Выш_ПриНачалеРаботыСистемы()
	
	Если Выш_ОбщийМодуль.ЭтоФайловаяБаза() Тогда
		
		//Проверим заполненность настроек
		ПроверитьНаличиеНастроекВышибалы();
		
		//Если есть время закрытия Вышибим при входе
		ЗакрытьТекСеансПользователя();
		
		//Запустим задание "Вышибалы"
		ПодключитьОбработчикОжиданияВышибалы();
		
	Иначе
		
		ПредупредитьЧтоНеРаботает();
		
	КонецЕсли;
	
КонецПроцедуры

#Область Вышибала

//Проверка и начальное заполнение настроек
Процедура ПроверитьНаличиеНастроекВышибалы() ЭКСПОРТ
	
	Выш_ОбщийМодуль.ПроверитьЗаполненностьСправочникаНастроек();
	
КонецПроцедуры

//Подключение обработчика ожидания
Процедура ПодключитьОбработчикОжиданияВышибалы() ЭКСПОРТ
	
	ИнтервалПроверкиВышибалы = Выш_ОбщийМодуль.ПолучитьВремяПроверкиВышибания();
	
	Если ИнтервалПроверкиВышибалы > 0 Тогда
		
		ПодключитьОбработчикОжидания("ОбработчикОжиданияВышибалы", ИнтервалПроверкиВышибалы);
		
	Иначе
		
		ОтключитьОбработчикОжидания("ОбработчикОжиданияВышибалы");
		
	КонецЕсли; 
	
КонецПроцедуры
Показать


Выш_ОбщийМодуль - "Сервер" и "Вызов сервера"
KonecEsli; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот