Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
11 дек 2024, 18:38

Как сделать блокировку документа?

Автор leklerk, 27 янв 2015, 11:49

0 Пользователей и 1 гость просматривают эту тему.

leklerk

Добрый день! Подскажите пожалуйста, как решить такую проблему. В документ (нетиповой) заходит 1-й польз-ль, после этого заходит 2-й, и 1-й после этого не может записать документ. То есть мне нужно, чтобы 2-й и последующие польз-ли открывали документ только на чтение. Пробовал создавать копию формы документа и подсовывать ее 2-му, но 1-й все равно не может записать. Пробовал ставить код в обраб-к ПриОткрытии формы:

Попытка
ЭтотОбъект.Заблокировать();
Исключение
Сообщить("Документ открыт только на чтение. Редактирование невозможно.");
КонецПопытки;

Пользователи говорят, что 1-й не может записать документ. Помогите решить проблему...

MuI_I_Ika

А Заблокировать() приводит к блокировке или нет?

Вообще по умолчанию форма блокирует объект только в том случае, если пользователь начал вносить изменения на форме.

leklerk

Цитата: MuI_I_Ika от 27 янв 2015, 12:10
А Заблокировать() приводит к блокировке или нет?
Да.

MuI_I_Ika

Ну так если 1-й заблокировал то все ок?

leklerk

Цитата: MuI_I_Ika от 27 янв 2015, 13:18
Ну так если 1-й заблокировал то все ок?
Нет, заходит второй, а первый не может сохранить изменения.

Kironten

А если как то так:
Если ЭтотОбъект.Заблокирован() Тогда
    Сообщить("Фиг вам, а не изменение документа");
Иначе
    Попытка
        ЭтотОбъект.Заблокировать();
    Исключение
        Сообщить("Не удалось заблокировать документ");
    КонецПопытки;
КонецЕсли;

leklerk

Цитата: Kironten от 27 янв 2015, 14:10
А если как то так:
Если ЭтотОбъект.Заблокирован() Тогда
    Сообщить("Фиг вам, а не изменение документа");
Иначе
    Попытка
        ЭтотОбъект.Заблокировать();
    Исключение
        Сообщить("Не удалось заблокировать документ");
    КонецПопытки;
КонецЕсли;


Kironten, спасибо за совет.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск