Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Запрет создания элементов справочников

Запрет создания элементов справочников
Я
   Консультант Баранов
 
06.11.19 - 09:57
Нужно запретить создание элементов справочника с некоторыми условиями. ОбычныеФормы

Допустим добавляем некоторую роль. И предположим программно элементы не создаются.

Где лучше разместить проверку? ПредОткрытием Если не РольДоступна Тогда Отказ = Истина
 
 
   Масянька
 
1 - 06.11.19 - 09:58
(0) В списке документов.
   ДенисЧ
 
2 - 06.11.19 - 09:59
Просто в роли снять галку на нужном справочнике - интерактивное создание
   Ненавижу 1С
 
3 - 06.11.19 - 09:59
в РЛС или в событии объекта "перед записью"
   Консультант Баранов
 
4 - 06.11.19 - 10:00
(2) Не вариант. 1. Ролей много не хотелось бы типовую изменять.
2. Есть доп условия.
   Курцвейл
 
5 - 06.11.19 - 10:00
(3) Почему перед?
Логичнее ПриЗаписи Отказ
   Масянька
 
6 - 06.11.19 - 10:00
+ (1) Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
    
    ЕстьПраво = абОбщее.ПолучитьПравоРедактированияБонусов();
    
    Если (НЕ ЕстьПраво) Тогда
        Предупреждение("Для работы с данным видом документов у Вас недостаточно прав." + Символы.ПС + 
                       "Обратитесь к администратору.");
        СтандартнаяОбработка = Ложь;
        Отказ                  = Истина;
    КонецЕсли;
    
КонецПроцедуры
   Консультант Баранов
 
7 - 06.11.19 - 10:01
(3)> "перед записью"

Изменять можно. Добавлять новое нельзя.
   Консультант Баранов
 
8 - 06.11.19 - 10:01
(6) Ок. Т.е. в ПередОткрытием лучше пихать.
   ДенисЧ
 
9 - 06.11.19 - 10:01
(5) Плохой вариант
   Масянька
 
10 - 06.11.19 - 10:02
+ (6) В ПВХ ПраваПользователей - в предопределенных прописано новая фигня (булево).
   Курцвейл
 
11 - 06.11.19 - 10:02
(9) Чем он плох то?
   ДенисЧ
 
12 - 06.11.19 - 10:03
(11) Человек редактирует, вводит, радуется жизни. А при записи ему дубинов в лоб.
   Масянька
 
13 - 06.11.19 - 10:04
(12) Полей 10-15 заполнил и тут, бац, вторая смена...
Я бы (как минимум) ругнулась матом... В лицо писателю.
   Курцвейл
 
14 - 06.11.19 - 10:06
(12) Зато это фундаментальный запрет.
Игры с формами обходятся через обработки.
   Масянька
 
15 - 06.11.19 - 10:07
(14) А что "фундаментального"?
   ДенисЧ
 
16 - 06.11.19 - 10:08
(14) После такого пейсательства у тебя возникнут фундаментальные проблемы. Ты просто не сможешь писать такой код.
(13) Вот и я про то. Лучше не давать надежд. 1сник - не женщина, в конце концов...
   Масянька
 
17 - 06.11.19 - 10:09
(16) Сижу и думаю: а я кто? :)))))))))))))))))))))))))))))))))))))))))))))))))
   Курцвейл
 
18 - 06.11.19 - 10:10
(16) Не надо путать теплое и мягкое.
Одно дело удобный интерфейс, другое дело ограничение прав.
   mikecool
 
19 - 06.11.19 - 10:10
(17) не боись, скоро придет просветление
   Масянька
 
20 - 06.11.19 - 10:11
(19) А мне, что - разорваться? (С)
:)))))))))))))))))))))))))))))))))))))))))))))))))))))
   dka80
 
21 - 06.11.19 - 10:11
(20) гусары, молчать!
   Fish
 
22 - 06.11.19 - 10:12
(18) Т.е. при ограничении прав пользователи должны страдать, и понимать, что оно есть, только после того, как они уже ввели 100500 строк и реквизитов? :))
   Fish
 
23 - 06.11.19 - 10:12
(17) А ты 1сниЦА, а не 1сник :))
   Курцвейл
 
24 - 06.11.19 - 10:15
(22) Это вопрос удобства интерфейса.
Может для формы нового объекта ставить все в режим "Только просмотр" для соответствующих прав?
И никто ничего уже ввести не сможет.
Но удобство никак не связано с ограничением прав "Нельзя записать новый объект"
   unregistered
 
25 - 06.11.19 - 10:16
ИМХО, контроль должен быть и на форме, и в подписке ПередЗаписью объекта.
Контроль на форме избавит пользователя от ненужных действий (попытки ввести кучу данных с последующим обломом).
Контроль в ПередЗаписью гарантирует, что пользователь не добьётся своего сторонними методами, в обход формы. Самый типичный случай - обработка группового изменения реквизитов. В конфигурациях на УФ она вообще встроена. На старых конфигурациях на ОФ  у нас пользователи тоже очень активно такими вещами пользовались.
   Fish
 
26 - 06.11.19 - 10:17
(24) Правильное ограничение прав звучит так: "нельзя СОЗДАТЬ новый объект".
Даже в конфигураторе право называется "Добавление", а не "запись нового".
   dka80
 
27 - 06.11.19 - 10:19
(24) капец ты упертый. Еще в старом фильме советском было "ты туда не ходи! ты сюда ходи!" - зачем что-то открывать, если там все-равно ничего не даст делать? Чтобы лишние вопросы сыпались
   Fish
 
28 - 06.11.19 - 10:19
(25) Емнип, обработка группового изменения реквизитов работает только с существующими объектами. А тут речь о создании нового - см (7)
   Курцвейл
 
29 - 06.11.19 - 10:20
(26) Вы уж сами разбирайтесь что для вас правильнее, добавлять или создавать. сути вопроса это не меняет.
   dka80
 
30 - 06.11.19 - 10:20
И вообще, приплетать групповую обработку тут не к месту. так можно и сказать, что данные через обмен прилететь могут
 
 Рекламное место пустует
   Консультант Баранов
 
31 - 06.11.19 - 10:22
(30) > так можно и сказать, что данные через обмен прилететь могут

Предполагаем, что нет обработок на создание, нет обменов.
   Курцвейл
 
32 - 06.11.19 - 10:22
(27) Это ты упертый. Наймешь себе падвана, они начнет тебе новые формы писать и рисовать, а про ограничение прав забудет.
Та же проблема будет при сопровождении легаси.
   Fish
 
33 - 06.11.19 - 10:26
(29) Добавлять и создавать в данном контексте - это как раз одно и то же. :))
   Курцвейл
 
34 - 06.11.19 - 10:26
(33) А "записать новый" что-то другое?
   unregistered
 
35 - 06.11.19 - 10:29
(28) Да. Невнимательно прочел. Но тем не менее я бы сделал, как написал в (25) - и на форме и в подписке. Потому что все эти "предположим программно элементы не создаются" - сказки про белого бычка.
   unregistered
 
36 - 06.11.19 - 10:36
(31) >> Предполагаем, что...

Практика показывает, что такие предположения и допущения живут ровно до тех пор, пока о них не забывают. А вспоминать потом приходится в самый неподходящий момент.
Сегодня обменов никаких нет, а как фамилия того, кто обещал, что их никогда не будет? А фамилия того, кто гарантировал в случае подключения обменов провести анализ всего и вся на предмет таких неявных логических ловушек в коде?
А потом приходится долго и мучительно доказывать заказчику, что косяки и последующие переделки, за которые он должен заплатить, - это следствие упрощенного понимания принятого когда-то давно решения.

Впрочем это уже всё ОФФ и ИМХО.
   Масянька
 
37 - 06.11.19 - 10:49
(36) А ты точно об 1С говоришь?
   Fish
 
38 - 06.11.19 - 10:55
(34) Конечно. Т.к. ты сначала добавляешь(создаёшь) объект, потом изменяешь его, и только потом записываешь. А твоё ограничение сработает только тогда, когда пользователь уже совершил кучу действий, что неправильно.
   Курцвейл
 
39 - 06.11.19 - 11:16
(38) Да вы мастер создавать объекты, не записывая. :)


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