Сделал так,чтобы при нажатии на кнопку в документе нельзя было редактировать документ.Но нельзя редактировать по закрытия формы.После повторного открытия, документ снова можно редактировать.
Как сделать, чтобы, если была нажата кнопка , то при повторных открытиях документа, нельзя было редактировать документ?

```1c
    Если НЕ РольДоступна("ПолныеПрава") Тогда
    Отказ=Истина;
    Иначе
    ЭтаФорма.ТолькоПросмотр=Истина;
    КонецЕсли;
```

Обычные формы
---
Надо добавить реквизит на форму и там будет булево значение, которое будет при закрытии у тебя становиться истина, и тогда при повторном открытии, ты по реквизиту устанавливаешь блокировку.
---
Создаете реквизит у объекта ТолькоПросмотр
Выносите его на форму в виде галки и пишите

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    Если НЕ РольДоступна("ПолныеПрава") Тогда
    ЭтаФорма.ТолькоПросмотр = Объект.ТолькоПросмотр;
    Элементы.ТолькоПросмотр.Доступность = Ложь;
    КонецЕсли;
```

Больше в принципе ничего не надо делать.
---
Надо добавить реквизит на форму и там будет булево значение, которое будет при закрытии у тебя становиться истина, и тогда при повторном открытии, ты по реквизиту устанавливаешь блокировку.
---
реквизит в форме документа?
---
и чтобы пользователь с полными правами мог менять

```1c
    Если РольДоступна("ПолныеПрава") Тогда
    Объект.ТолькоПросмотр = НЕ Объект.ТолькоПросмотр;
    КонецЕсли;
```
Отказ тут не нужен.
(6) реквизит у объекта
ПриСозданииНаСервере

```1c
    Если НЕ РольДоступна("ПолныеПрава") Тогда
    ЭтаФорма.ТолькоПросмотр = Объект.ТолькоПросмотр;
    КонецЕсли;
```

upd. подправил
---
РольДоступна -это реквизит объекта?
---
РольДоступна - Это фунция.
Надо создать реквизит объекта ТолькоПросмотр с типом булево.
---
РольДоступна - Проверка прав
---
запутался.Создал реквизит объекта ТолькоПросмотр. Вы написали,что РольДоступна не доступна на клиенте.Напишите пожалуйста, что и куда из вашего нужно добавить.
---
Вы написали,что РольДоступна не доступна на клиенте.
Прошу прощения, что ввел в заблуждение. Это для УФ. Для обыных форм разницы нет.
---
этот документ самостоятельно добавлен в базу и эта форма,в которую нужно добавить кнопку-управляемая форма.
Все равно не понял,что куда нужно написать.Сможете написать что и куда?
---
Создаете реквизит у объекта ТолькоПросмотр
Выносите его на форму в виде галки и пишите

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

    Если НЕ РольДоступна("ПолныеПрава") Тогда
    ЭтаФорма.ТолькоПросмотр = Объект.ТолькоПросмотр;
    Элементы.ТолькоПросмотр.Доступность = Ложь;
    КонецЕсли;
```

Больше в принципе ничего не надо делать.
---
Если НЕ РольДоступна("ПолныеПрава") Тогда
        ЭтаФорма.ТолькоПросмотр = Объект.ТолькоПросмотр;
        Элементы.ТолькоПросмотр.Доступность = Ложь;
    КонецЕсли;
этот код добавить в действие кнопки,да?
---
кнопку выкинуть. все в (15)
---
добавил реквизит объекта на форму и поставил флажок. также после повторного открытия формы, форму можно редактировать

```1c
    &НаСервере
    Процедура ТолькоПросмотрПриИзмененииНаСервере()
    Если НЕ РольДоступна("ПолныеПрава") Тогда
    ЭтаФорма.ТолькоПросмотр = Объект.ТолькоПросмотр;
    Элементы.ТолькоПросмотр.Доступность = Ложь;
    КонецЕсли;
    КонецПроцедуры
```
---
код добавили в ПриСозданииНаСервере?
и под полными правами конечно можно редактировать...
или вы хотите срубить сук на котором сидите? один раз закрыл - и привет? )))
---
да,добавил ПриСозданииНаСервере. Условние в коде убрал и просто реквизит ТолькоПросмотр стал неактивен, а форму можно редактировать
---
под полными правами после установки галки "ТолькоПросмотр" документ нужно ЗАПИСАТЬ!!!!
---
спасибо,получилось. Дело было в другом.
---
Этот же код добавить в событие приоткрытии() формы
---
при открытии документа нужно передать, что кнопка до этого была открыта
---
РольДоступна("ПолныеПрава") на клиенте не сработает.

(3) надо создать реквизит у объекта ТолькоПросмотр и ПриСозданииНаСервере уже проверять.
---
Не вводите его в заблуждение у него обычные формы.