Имя: Пароль:
1C
1С v8
Блокировка документа
0 Gusarm
 
24.12.13
16:35
Есть список документов для изменения, нужно проверить, открыты они или нет.
Использовал код:

//СписокДокументовДляИзменения - таблица с колонкой СсылкаДокумент
Для Каждого Документ Из СписокДокументовДляИзменения цикл
     Попытка
          Документ.СсылкаДокумент.Заблокировать();    
     Исключение
          Сообщить("Невозможно заблокировать документ " + Документ.СсылкаДокумент);
     КонецПопытки;
КонецЦикла;


Почему то выдает исключение, не удалось заблокировать объект.
В чем причина. Документ никем не открыт.
1 MrStomak
 
24.12.13
16:36
Заблокировать - метод документа, а не ссылки
2 MrStomak
 
24.12.13
16:36
В смысле метод объекта документ.
3 George Wheels
 
24.12.13
16:37
Сначала ПолучитьОбъект()
4 Gusarm
 
24.12.13
16:37
(2) Согласен, ступил)
5 samozvanec
 
24.12.13
16:49
а еще можно вместо Заблокировать() писать Заблокирован() и обойтись без попыток
6 samozvanec
 
24.12.13
16:54
(5) нагло вру
7 Gusarm
 
24.12.13
16:57
(5) Заблокирован (IsLocked)
Синтаксис:

Заблокирован()
Возвращаемое значение:

Тип: Булево.
Истина - документ заблокирован; Ложь - в противном случае.
Описание:

Определяет, заблокирован ли документ данным объектом.

Доступность:

Сервер, толстый клиент, внешнее соединение.
Примечание:

Следует учитывать, что этот метод используется для проверки блокировки объекта базы данных конкретным объектом встроенного языка. Он не может быть использован, чтобы проверить, заблокирован ли вообще объект базы данных.
Пример:

Если РасходнаяНакладная.Заблокирован() Тогда
    РасходнаяНакладная.Разблокировать();
КонецЕсли;
8 Necessitudo
 
24.12.13
17:00
Попытка
ДокументОбъект.Заблокировать();
Исключение
  Сообщить("Кто-то другой заблокировал блеать!");
КонецПопытки
9 Gusarm
 
24.12.13
17:01
(8) после (2) разобрался
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан