Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Запрет редактирования регистра сведений

Запрет редактирования регистра сведений
Я
   DmitriiRylov
 
21.05.18 - 09:01
Здравствуйте,
суть Создавать - можно, Изменять/Удалять - нельзя

вводные:
РС УсловияПоверки (независимый, в пределах дня)
Права:
Чтение, Изменение, Просмотр, Редактирование

Хочу чтобы пользователь создавал, но больше эту запись не изменял и не удалял.
Чтение, Изменение, Просмотр - дают право на чтение почему-то
Редактирование - дает право на изменение и удаление

Как придумал:
Добавил реквизит редактирование (булево), который принимает при записи истина, а дальше при открытии проверка, если истина, то запрет.
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если Запись.Редактирование = Истина Тогда

        Элементы.Период.Доступность = Ложь;
        Элементы.Отдел.Доступность = Ложь;
        Элементы.Температура.Доступность = Ложь;
        Элементы.Давление.Доступность = Ложь;
        Элементы.Влажность.Доступность = Ложь;
        Элементы.РуководительМетрологическойСлужбы.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
    Запись.Редактирование = Истина;
КонецПроцедуры

Но верю, что есть другие варианты.
 
 
   FIXXXL
 
1 - 21.05.18 - 10:48
(0) убери право интерактивного изменения и напиши свою форму добавления
   SleepyHead
 
2 - 21.05.18 - 10:50
(0) создавать можно, изменять/удалять нельзя. Смысл? Что делать, если создал ошибочно?
   lodger
 
3 - 21.05.18 - 11:05
(2) судя по названиям это не бухгалтерские, не оперативные и даже не управленческие данные.
поэтому, ну записалось и записалось. передаст кому надо об ошибке - почистят если простят за такой поступок.
   los_hooliganos
 
4 - 21.05.18 - 11:08
(3) Может это зарплатные данные. О том кому и сколько заплатили.
   los_hooliganos
 
5 - 21.05.18 - 11:09
О том выплатили 10000 изменить нельзя.
Но если это ошибка, то можно доначислить или удержать
   lodger
 
6 - 21.05.18 - 11:10
(4) Температура, Давление, Влажность, РуководительМетрологическойСлужбы?
   catena
 
7 - 21.05.18 - 11:19
(6)Ну правильно, прогнозируют данные, а зп получают с коэффициентом совпадения с реальными))
   ВРедная
 
8 - 21.05.18 - 11:25
(0) Сделай подчиненный регистратору, если архитектура позволяет, и давай права на регистратор
   Сти
 
9 - 21.05.18 - 11:47
(0) Да, есть несколько вариантов, как это сделать даже без добавления доп.реквизита.

Вот, например, универсальная фигня, быстро отбивающая охоту у пользователя что-то уже существующее править. Т.е., править можно, но не запишется, и юзер в итоге привыкнет не править.
Процедура ПодпискаНаСобытие1ПередЗаписью(Источник, Отказ, Замещение) Экспорт
    
    Если Не Источник.ОбменДанными.Загрузка Тогда
        НЗ = РегистрыСведений.РегистрСведений1.СоздатьНаборЗаписей();
        Для каждого СтрокаОтбора из Источник.Отбор Цикл
            УсловиеОтбора = НЗ.Отбор[СтрокаОтбора.Имя];
            ЗаполнитьЗначенияСвойств(УсловиеОтбора, СтрокаОтбора);
        КонецЦикла;
        
        НЗ.Прочитать();
        Если НЗ.Количество() > 0 Тогда
            Отказ = Истина;
        КонецЕсли;
    КонецЕсли;
    
КонецПроцедуры


Или, если есть нарисованные в конфигураторе формы, то можно использовать события, например, при попытке редактирования в списке:

Процедура РегистрСведенийСписокПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    
    Если НЕ НоваяСтрока Тогда
        РегистрСведенийСписок.ЗакончитьРедактированиеСтроки(Истина);
    КонецЕсли;
    
КонецПроцедуры


Ну и так далее.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует