Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 апр 2024, 00:17

Запрет перепроведение документа

Автор vladiclav121, 15 июн 2018, 19:19

0 Пользователей и 1 гость просматривают эту тему.

vladiclav121

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

AIFrame

Зачем править модули объектов, когда есть подписки на события и событие проведения\призаписи\передзаписью?
И сразу хорошим тоном будет для таких заглушек создавать роль, типа роль "ПерепроведениеДокументов", а не только ПолныеПрава.

vladiclav121

Я и хочу не править модуль объекта, а в форме макета дописать перед записью, я не знаю как в коде прописать ДокументОбъект.Поступление.Проведен или по другому можешь подсказать, только начинаю кодить в 1с.

AIFrame

Цитата: vladiclav121 от 15 июн 2018, 23:33форме макета
Какого макета? ТОРГ-12?
Может ты хотел сказать "в модуле формы?"
Цитата: vladiclav121 от 15 июн 2018, 23:33не править модуль объекта
Делай подпиской на событие.

Цитата: vladiclav121 от 15 июн 2018, 23:33как в коде прописать ДокументОбъект.Поступление.Проведен
Если ДокументОбъект.Проведен Тогда

vladiclav121

"в модуле формы" дописал код
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
Если ДокументОбъект.Поступление.Проведен Тогда
Отказ=Истина;
КонецЕсли;

Выдает ошибку "Значение не является значением объектного типа (Проведен)"
https://ibb.co/irFCXy


KOI8-R

Чисто ради интереса, а как вы планируете обрабатывать ситуацию когда пользователь просто отменяет проведение и затем проводит документ по новой?

AIFrame

Цитата: KOI8-R от 18 июн 2018, 11:38пользователь просто отменяет проведение
По логике задачи - запретить любые телодвижения с проведенным. В том числе отмену проведения.
Цитата: vladiclav121 от 18 июн 2018, 09:57ДокументОбъект.Поступление
Откуда ты такой код вообще берешь?

Luzer1C

Смотрю я тут одни спецы собрались. А с помощью ролей "Интерактивное изменение проведённых" еще не предлагали? Как раз этот флажок разрешает создавать новые документы и проводить их, а вот менять проведенные не даёт. И огород городить не надо с окольными путями.
Халамбалам.

AIFrame

Цитата: Luzer1C от 19 июн 2018, 09:08А с помощью ролей
Ты же в курсе, что роли работают по ИЛИ и механизмов запрета как в правах NTFS там нет? Хоть в одной будет право разрешающее, этого хватит.
Менять все роли? А если обновление - опять менять? А если опять обновление - снова менять?
А если проведение будет сниматься неинтерактивно?
Хорош велосипеды изобретать уже. Подписка на событие и свой общий модуль. Чо тут выдумывать сидеть, не понимаю.

Luzer1C

AIFrame, знаю я как работают роли. Но нужно смотреть в каждом конкретном случае. Это один из самых простых способов, что я предложил.
Халамбалам.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск