Имя: Пароль:
1C
1С v8
Целесообразно в обработки вставлять функционал паузы?
0 Cerera
 
30.05.12
08:52
Например, обработка, проводящая по партиям документы. Когда её запускаешь, у пользователей в базе всё висит и работа может останавливаться. Целесообразно ли включать в обработки обработчики прерывания чтоб по нажатию комбинации клавишь, она приостанавливалась на время если кому-нибудь в базе срочно надо чтото сделать?
1 Alex S D
 
30.05.12
08:53
целесообразно это делать в нерабочее время
2 ptrtss
 
30.05.12
08:57
Интересная постановка вопроса. Целесообразно ли давать пользователям работать?
3 ДенисЧ
 
30.05.12
09:05
Целесообразно написать проведение так, чтобы было как можно меньше блокировок...
4 Defender aka LINN
 
30.05.12
09:09
(0) У меня обработка выводит текущее время. Функционал паузы в ней просто необходим...
5 vde69
 
30.05.12
09:12
писал регламнтую процедуру востановления последовательности, в кратце так:

обрабатывает 1 документ в транзакции, потом смотрит может кто откатил последовательность, если откатили дальше этого 1 документа то остановка (типа дошли до активного периода и не мешаем пользователям работать), если граница встала после обработаного документа - то идем дальше...
6 NS
 
30.05.12
09:13
(0) ставлю паузы. Не по кнопке, а прсто в обработку вставляю паузы после проведения каждого документа.
7 КонецЕсли
 
30.05.12
09:16
В обработке проведения по партиям у меня:

время1= ТекущаяДата();
ЭлементыФормы.Надпись3.Заголовок="Пауза...";
Пока ТекущаяДата()<время1+Пауза Цикл
   ОбработкаПрерыванияПользователя();            
КонецЦикла;

Время паузы указываю в форме по обстоятельствам. Можно прервать выполнение обработки Ctrl+Break в момент паузы.
8 NS
 
30.05.12
09:19
(7) такая пауза разве не грузит проц на 199%?
Скриптами легко делается ненагружающая проц пауза, а после или перед ней можешь сделать обработку прерывания пользователя.
9 КонецЕсли
 
30.05.12
09:28
(8) Грузит. Одно ядро. Но у меня их 4. Так что пока забил.
10 Cerera
 
30.05.12
09:49
А как сделать чтобы не грузилось?
(7)а как сделать чтоб по контрол брейк прерывалось?
11 КонецЕсли
 
30.05.12
11:18
(10) "как сделать чтоб по контрол брейк прерывалось?"
ОбработкаПрерыванияПользователя()
Но только если в момент вызова в буфере клавиатуры было нажатие Ctrl+Break.
12 х86
 
30.05.12
11:22
(0)делал так: проводит 12-15 сек, 20 сек отдыхает, периоды выбраны эмпирическим путём
13 John83
 
31.05.12
10:10
(8) может тупость сморожу, но если паузу делать через Предупреждение()?
конечно же для интерактивной обработки
14 andrewks
 
31.05.12
10:14
паузы вставлять нужно обязательно, чтобы у пользователей не складывалось впечатления, что по причине своего слишком быстрого завершения обработка отработала неправильно
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс