Ограничить доступ к полю дата для всех кроме одного пользователя
Доброе время суток, вопрос скорей всего глупый и для многих не составит труда его реализовать но я не смог, есть база Бухгалтерия предприятия КОРП, редакция 3.0 редакция 3.0 (3.0.67.54), нужно закрыть в документе поле дата для всех кроме одного пользователя, подскажите как можно это реализовать.
Заранее спасибо
Заранее спасибо
По теме из базы знаний
- Робот - Дата запрета редактирования
- Комплексный контроль остатков. Для одного или сразу нескольких логически связанных регистров накопления. Универсальное решение уровня данных для контроля не только складских остатков
- Контроль видимости и доступности элементов управляемой формы
- История одного взлома или проверьте вашу систему на безопасность
- Самые используемые методы БСП 3.1.9
Найденные решения
Создайте отдельную роль, например "РедактированиеДатыДокументов", отключите у нее все права. Назначьте ее нужным пользователям. В обработчике создания формы напишите:
Если Не Пользователи.РолиДоступны("РедактированиеДатыДокументов") Тогда
Элементы.Дата.Доступность = Ложь;
КонецЕсли;
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Создайте отдельную роль, например "РедактированиеДатыДокументов", отключите у нее все права. Назначьте ее нужным пользователям. В обработчике создания формы напишите:
Если Не Пользователи.РолиДоступны("РедактированиеДатыДокументов") Тогда
Элементы.Дата.Доступность = Ложь;
КонецЕсли;
(8) Например использовать серверный метод для проверки:
Но зачем? :)
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Если Не РедактированиеДатыДоступно() Тогда
Элементы.Дата.Доступность = Ложь;
КонецЕсли;
КонецПроцедуры
&НаСервереБезКонтекста
Функция РедактированиеДатыДоступно()
Возврат Пользователи.РолиДоступны("РедактированиеДатыДокументов");
КонецФункции
ПоказатьНо зачем? :)
Ну вот если совсем просто и не брежно можно написать что то вроде этого:
Если ИмяПользователя() = "Иванов Иван Ивановнич" Тогда
Элементы.Дата.Доступность = Истина;
Иначе
Элементы.Дата.Доступность = Ложь;
КонецЕсли
(5) Знаю я таких программистов. Не учите неправильному коду. Потом начинаешь разбираться с чужим кодом, действуешь по наитию "правильно" - ищешь проблему в ролях, а находишь такие ляпы страшные.
Потратьте время и научитесь правильным решениям, чтобы за свой труд не стыдно было.
Потратьте время и научитесь правильным решениям, чтобы за свой труд не стыдно было.
(12) Я когда предложил я явно указал - цитирую "Ну вот если совсем просто и не брежно можно написать что то вроде этого: ". Понятно что это очень не красиво, ну это вариант. Одну задачу можно решить разными способами, ну а от того какой способ правильный каждый для себя принимает сам. Если Вы заботитесь о том что когда то ваши наработки будет кто то еще разбирать то да тут нужно думать как лучше написать. А с другой стороны что тут не правильно, можно и так предложить и по другому предложить все будет работать. Что не правильного??? Понятия правильно ни где не описано. Есть задача которую нужно решить а решить ее можно по разному. Это тоже самое что 2+2 = 4 и 1 + 1+ 1+1 = 4 и 2*2 = 4 или 2 в степени 2 тоже 4. Ведь ответ один и тот же а подход разный. Тут нужно понимать с точки зрения логики правильный подходит или нет, но не как само решение. А вот как правильно писать - ни где еще не видел такую прям инструкцию. Есть рекомендации и не более того. Так что вот!
(13) Соглашусь с вами частично. Это мое мнение, что если программист (разработчик) имеет опыт и знает несколько способов решения, то стоит об этом упомянуть, когда даешь плохой совет. Иначе складывается ощущение, что кроме 2+2 вы не знаете другой арифметики.
Почитайте желтые книжки, там все прекрасно описано каким должен быть код. Когда задача решается в одно действие, то при наличии минимального опыта будет достаточно решить ее правильно. При увеличении объема работы увеличивается риск допустить ошибки и принять не правильные решения - это и есть опыт, который определяет ваш уровень.
Понятия правильно ни где не описано. Есть задача которую нужно решить а решить ее можно по разному.
Почитайте желтые книжки, там все прекрасно описано каким должен быть код. Когда задача решается в одно действие, то при наличии минимального опыта будет достаточно решить ее правильно. При увеличении объема работы увеличивается риск допустить ошибки и принять не правильные решения - это и есть опыт, который определяет ваш уровень.
(12) и еще добавляю к написаному - это не ляп. ЛЯПЫ это когда 2+2 = 5 вот это ляп. А то что вам трудно как то разобраться в чужом коде ну тут напишу вашими словами "Знаю я таких программистов". Знаете когда пишут конфигурации специалисты 1С - знаеете там тоже иногда не ту логики, особенно касательно ранее вышедших конфигураций типа 1С УПП, торговля 10 и др. Это сейчас у них подход к написанию как то унифицировался и новые решения они уже более обдумано пишутся, но и то бывает встречаешь код типа по 10 раз одну и туже таблицу обходят и что то проверяют - но сам конечный результат он верен!
(14) Вы оправдываете свою некомпетентность.
Таким образом, можно на любой вопрос отвечать простым ответом в стиле - правьте все руками в коде конфигурации.
Такие ответы - это не то, что изобретение велосипеда, а какого-то ненужного механизма.
Возможно, вы хороший программист и имеете хороший опыт, но как человек - даете неправильные советы. Вместо того, чтобы писать тирады мне, лучше потратьте время на автора.
Ну вот, исправил одного человека, остался еще один миллион (шутка).
Таким образом, можно на любой вопрос отвечать простым ответом в стиле - правьте все руками в коде конфигурации.
Такие ответы - это не то, что изобретение велосипеда, а какого-то ненужного механизма.
Возможно, вы хороший программист и имеете хороший опыт, но как человек - даете неправильные советы. Вместо того, чтобы писать тирады мне, лучше потратьте время на автора.
Ну вот, исправил одного человека, остался еще один миллион (шутка).
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот