Имя: Пароль:
1C
1С v8
Подскажите, что делать. Достало Object locked
0 xReason
 
13.07.11
11:52
В 8.2 все отлично и особенно тонкий клиент, который работает даже через GPRS, но вот проблема из-за того, что связь фиговая, то время от времени и-нет отваливает, а вместе с ним и база. И тогда когда юзер запускает вновь базу и залезает в свой документ, то получается, что он сам себя блокирует. (см. скришот). Помогает срубание сессию в Администрирование Сервера, но это кривой выходи не всегда доступный.

Подскажите, что делать?

-- скриншот --
http://savepic.org/1946209.jpg
1 xReason
 
13.07.11
12:16
Что у всех никогда такой ошибки не было?
2 Kookish
 
13.07.11
12:29
Некоторые размышления приводят вот к чему: либо копать в сторону сброса сессии по тайм-ауту, либо в сторону постоянного опроса присутствия клиента, и если не отвечает какое-то время - сбрасывать. Или использовать терминал. И тогда разрывы уже по барабану будут. Или гуглить.
3 ice777
 
13.07.11
12:38
мож транзакция начатая шоркиной откатывается? подождать.
4 xReason
 
13.07.11
14:03
(3) нет, если не трогать минут 20, то сессия сама отвалится. Но 20 минут это много.

Терминал точно нет. Короче 1С хотела как лучше, но кривой и-нет они не предусмотрели
5 xReason
 
18.07.11
12:26
подымаю, может кто поможет
6 xReason
 
25.07.11
22:14
Решил проблему, если кого интересует, спрашивайте

решение конечно не самое красивое, но главное работает
7 and2
 
25.07.11
22:19
ну не томи уж.
выкладывай сокровенное знание то.
8 Mikeware
 
25.07.11
22:21
(7) Умолять надо - стоя на коленях....
9 eklmn
 
гуру
25.07.11
22:22
(7) 300 наверно ждет на телефон
10 xReason
 
25.07.11
22:24
ну если кратко то костыль такой.

При старте системы подключается ОбработчикОжидания который срабатывает каждые 60 сек (думал может 30 сек поставить).

Так же при старте системы идет считывание всех юзеров работающих в базе и если в базе есть такой же юзер, но другой номер сессии. То в Регистр записывается строчка, что надо срубить этого юзер с этим номером сессии.

В обработчике идет отбор, по своим данным юзер и номер сессия и если он себя находит, то он удаляет эту строку и делает харакири. - ПрекратитьРаботуСистемы();

вот как-то так
11 xReason
 
25.07.11
22:26
Это все в режим управляемого приложения и тонкого клиента.
просто у нас 6 офисов, а и-нет ну очень загадочный иногда несколько раз в день случается. А сама засада, что ты в этот момент где-то вообще фиг знает где и и-нет далеко, что бы на серваке сессию срубить
12 xReason
 
25.07.11
22:41
ну вот написал и всем сразу не интересно стало ;)
13 Necessitudo
 
26.07.11
06:12
слишком уж простое и очевидное решение(
14 Cube
 
26.07.11
06:19
Я могу ошибаться, но тонкий клиент поэтому и не удалят сессии 20 минут, т.к. инет может отваливаться... Типа, при восстановлении соединения, пользователю не нужно перезапускать 1С, а можно продолжать работать с того места, где он остановился...
15 xReason
 
26.07.11
10:14
(14) Логично, но получается так, что когда юзер входит второй раз, то ему дается не старая сессия, а новая.

Если скажите как исправить и юзеру всегда давалась та же сессия, то буду рад до шариков
16 vde69
 
26.07.11
10:27
(15) для тонкого это не возможно в принцепе, 1с шифрует трафик между сервером и клиентом сеансовыми ключами.

единственое решение - web сервер и работа тонким через web, но придется переписывать DLL которая держит сеанс.

Других вариантов нет, по сколько сеансовое шифрование неотключается
17 xReason
 
26.07.11
10:30
(16) Блин нет в жизни счастья :(
18 vde69
 
26.07.11
10:33
(17) попробуй web браузер - он должен цеплятся к старой сесии при кратковременной потере связи, главное что-бы страницу не закрывали
19 xReason
 
26.07.11
10:41
(18) Веб браузер не работает так шустро, как тонкий клиент.
Веб вариант хорошо для руководства, залезть посмотреть, что происходит. А забивать документы лучше через тонкий клиент

спасибо за совет, попробую
20 Cube
 
26.07.11
14:22
(15) Так а зачем 1С перезапускать-то? Чет я не догнал...
21 xReason
 
26.07.11
14:25
перезапускать ничего не надо

Проблема в том, что падает тонкий клиент, когда и-нет рвется
22 xReason
 
26.07.11
21:06
Короче не работает. Клиент дохнет напрочь и там код не работает. А с сервака(линукс) срубить сессию нет возможности