Имя: Пароль:
1C
1С v8
Можно ли в обработчик ожидания передать параметры?
,
0 Karambol
 
17.10.13
17:42
Добрый день!
Задача: реализовать периодическую запись открытого пользователем документа на случай внезапного вылета 1С. Обычное приложение.
Как сделал:
в модуле формы документа
Процедура ПриОткрытии()
    Если Константы._ВключитьАвтоСохранениеДокументов.Получить() Тогда
        ПодключитьОбработчикОжидания("Автосохранение",60);
    КонецЕсли;
КонецПроцедуры

Процедура Автосохранение()
    Записать(РежимЗаписиДокумента.Запись);                          
    ПоказатьОповещениеПользователя("Документ записан."+ТекущаяДатаСеанса(),,"Автосохранение");
КонецПроцедуры

Этот код работает, документ сохраняется, но хотелось бы сделать универсальный механизм для всех документов. Процедуру Автосохранение() вынести в общий модуль. Возможно ли? И как реализовать?
1 Поросенок Петр
 
17.10.13
17:46
Какая жесть.
2 Maxus43
 
17.10.13
17:47
ставь интервал 10 секунд и включи версионирование. Грузить систему дак грузить, полумеры зло
3 Ksandr
 
17.10.13
17:53
Раз есть такая задача то лучше в Temp/my_docs писать файлы формата GUID.xml и выгружать сериализованный объект.
4 fisher
 
17.10.13
18:18
Ну, можно рассылать по глобальному обработчику ожидания оповещения всем открытым формам. Но обработку оповещений придется воткнуть в каждой форме. И надо не постоянно записывать, а только если изменения были. И не всегда.
А то откроет юзер старый док на "потыкать/посмотреть". А оно раз - и сохранило!
5 fisher
 
17.10.13
18:22
Я бы только для еще непроведенных документов врубил такую шнягу. Типа только для черновиков автосохранение.
А то у тебя в сабже уже проведенные будет без перепроведения записывать.
Основная теорема систематики: Новые системы плодят новые проблемы.