Ребят подскажите программно как получить дату запрета реадктирования для текущего пользователя в сеансе? 8.3
---
Если получать дату запрета запросом то она будет текущая на данный момент, а в сеансе может быть еще до изменения. Для УТП дату из сеанса:

```1c
    СоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить();
    ГраницаПоОрганизации = СоответствиеГраницЗапрета["ОбщаяДатаЗапретаРедактирования"];
```
---
https://forum.infostart.ru/forum29/topic187392/
---
Если получать дату запрета запросом то она будет текущая на данный момент, а в сеансе может быть еще до изменения. Для УТП дату из сеанса:

```1c
    СоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить();
    ГраницаПоОрганизации = СоответствиеГраницЗапрета["ОбщаяДатаЗапретаРедактирования"];
```
---
СоответствиеГраницЗапрета["ОбщаяДатаЗапретаРедактирования"];
Спасибо, удалось получить дату, а к примеру для текущего пользователя сеанса как ее получить?
---
Смотрите отладчиком соответствие. А меня так:

```1c
    ДатаЗапретаРедактирования = СоответствиеГраницЗапрета[Справочники.Организации.ПустаяСсылка()]; //по пользователю упр
    ДатаЗапретаРедактирования = СоответствиеГраницЗапрета["ОбщаяДатаЗапретаРедактирования"]; //общая упр
```
---
Для текущего пользователя делаю вот так:

СоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить();

Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
ДатаЗапретаРедактированияПользователя = СоответствиеГраницЗапрета[Пользователь];

По отладке пусто, что я неправильно делаю?
---
Если пусто, значит действует общая дата запрета.
---
) Если пусто, значит действует общая дата запрета.
Но прописана другая дата именно для текущего пользователя. общая к примеру 31.08.20 а для пользователя 01.08.20
---
Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь();
Надо использовать пользователя справочника "Пользователи", а не пользователя ИБ...

```1c
    Пользователь = ПараметрыСеанса.ТекущийПользователь;
```
 или
```1c
    ДатаЗапретаРедактированияПользователя = СоответствиеГраницЗапрета[ПараметрыСеанса.ТекущийПользователь];
```
---
смотрите отладчиком что есть в СоответствиеГраницЗапрета. Там данные уже по текущему пользователю
---
Пусто
---
Быть такого не может! Вы же получили СоответствиеГраницЗапрета["ОбщаяДатаЗапретаРедактирования"]. У вас в соответствии только одно значение?
---
Так он и выдает общую 31.08.20

а СоответствиеГраницЗапрета[Пользователь]; пусто
---
1. В конфигураторе поставте точку останова после строки СоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить();
2. Выделить "СоответствиеГраницЗапрета" и Shift+F9
3. Выбрать СоответствиеГраницЗапрета и F2
4. Скриншот в студию.
---
Для документа (на примере документа реализации, которая проводится автоматически на основании своего документа):

```1c
    Результат = ДатыЗапретаИзмененияСлужебный.ПроверитьДатыЗапретаИзмененияЗагрузкиДанных(РеализацияОбъект, Ложь, Истина, Ложь);

    Если Не Результат.ИзменениеЗапрещено Тогда
    РеализацияОбъект.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный);
    Иначе
    ххх
    КонецЕсли;
```
---
в ЕРП

```1c
    Запрос = Новый Запрос(
    "ВЫБРАТЬ
    | ДатыЗапретаИзменения.ДатаЗапрета КАК ДатаЗапрета,
    | ДатыЗапретаИзменения.Пользователь КАК Пользователь,
    | ДатыЗапретаИзменения.Пользователь.ИдентификаторПользователяИБ КАК ПользовательИдентификаторПользователяИБ,
    | ДатыЗапретаИзменения.Пользователь.Предопределенный КАК ПользовательПредопределенный
    |ПОМЕСТИТЬ ВременнаяТаблица
    |ИЗ
    | РегистрСведений.ДатыЗапретаИзменения КАК ДатыЗапретаИзменения
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | ВременнаяТаблица.ДатаЗапрета КАК ДатаЗапрета,
    | ВременнаяТаблица.Пользователь КАК Пользователь
    |ПОМЕСТИТЬ ВТ_ДатаБезГруппировки
    |ИЗ
    | ВременнаяТаблица КАК ВременнаяТаблица
    |ГДЕ
    | ВременнаяТаблица.ПользовательИдентификаторПользователяИБ ЕСТЬ NULL
    | И ВременнаяТаблица.ПользовательПредопределенный ЕСТЬ NULL
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ВременнаяТаблица.ДатаЗапрета,
    | ВременнаяТаблица.Пользователь
    |ИЗ
    | ВременнаяТаблица КАК ВременнаяТаблица
    |ГДЕ
    | ВременнаяТаблица.Пользователь = &Пользователь
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | МАКСИМУМ(ВТ_ДатаБезГруппировки.ДатаЗапрета) КАК ДатаЗапрета
    |ИЗ
    | ВТ_ДатаБезГруппировки КАК ВТ_ДатаБезГруппировки"
    );
    Запрос.УстановитьПараметр("Пользователь", ПараметрыСеанса.ТекущийПользователь.Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
    ДатаЗапретаРедактированияПользователя = Выборка.ДатаЗапрета;
    Иначе
    ДатаЗапретаРедактированияПользователя = Дата(1999, 1, 1);
    КонецЕсли;
```