Имя: Пароль:
1C
1С v8
Завершение работы системы 8.3.8
0 sbabay
 
11.10.16
20:04
Необходимо при завершении работы пользователя выполнять:
1. Принудительный обмен данными (РИБ)
2. Запись в служебный РС некоторых данных (именно при завершении работы пользователя)
Но в версии 8.3.8 1С заперщает вызов серверных процедур и открытие окон.

Как быть?
1 MrStomak
 
11.10.16
20:12
Как-как - регламентное задания. Пытаешься закрыть 1с и тут риб какой-то прет - нехорошо.

Также пакетный запуск другого сеанса через запуститьприложение может помочь.
2 sbabay
 
11.10.16
20:12
Пытаюсь сделать вот так:

&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
    
    Если ЗавершениеРаботы = Истина Тогда        
        Отказ = Истина;
        ТекстПредупреждения = "Надо выполнить обмен!";
        ПодключитьОбработчикОжидания("ОткрытьФормуОбменаРИБ", 0.1, Истина);
        СтандартнаяОбработка = Ложь;
        Возврат;
    КонецЕсли;


Но при завершении работы вываливается стандартное окно с моим текстом и двумя кнопками: "Завершить" или "Продолжить"
И если пользователь жмет "Завершить", то система все равно завершает свою работу. Т.е. я никак не могу принудительно отказаться от завершения работы
3 sbabay
 
11.10.16
20:14
(1) база файловая, поэтому регламентые тоже не будут работать после выхода единственного пользователя.

Пакетный запуск должен помочь, но это как-то слишком.
Да и операторы на местах сразу закрывают ноутбук после завершения работы 1С.
4 MrStomak
 
11.10.16
20:16
(2) Потому что хром не позволит тебе не выполнить команду закрытия.
Гугл диктует 1с правила разработки приложений.
5 sbabay
 
11.10.16
20:18
(4) я примерно представляю откуда ноги растут. Но как быть-то? В хроме пакетный запуск тоже не сделаешь
6 MrStomak
 
11.10.16
20:23
(5) Сделай большую жирную кнопку ВЫХОД в интерфейсе и приучи пооьзователей выходить через нее
7 sbabay
 
11.10.16
20:30
(6) Тоже вариант.
8 MrStomak
 
11.10.16
20:42
Только не забудь записать ТекстПредупреждения "Вы вышли из базы неправильно. Теперь ваша зарплата уменьшилась вдвое"
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший