Чичикин Арсен | Управляющий, собственник | 1С-Софт Райз

«Управление проектом в условиях неопределенности»

1. Требования Заказчика в тендерной документации и реальные требования к автоматизации диаметрально противовположны 2. Заказчик не готов к проекту автоматизации, а контракт уже подписан... 3. Заказчик "сам знает, как настроить автоматизированную систему"

Запрет на изменение и перенос в другую группу номенлатуры

1. medved577 1 11.01.17 19:51 Сейчас в теме
Имеется КА 2.2.1, хотелось бы разрешить редактирование номенклатуры одному человеку - тут все понятно, другим только на просмотр - тут тоже более менее, а вот как можно запретить перенос элементов справочника в другую группу? Кто делал подобное? Может есть у кого пример реализации?
Найденные решения
13. YNik 12.01.17 21:29 Сейчас в теме
(12), В конфигураторе, в конфигурации, Общие, Подписки на события.
Перед этим в Общих модулях создаешь свой общий модуль (если еще нет своего), например МойОбщийМодуль, в нем создаешь процедуру, например:
Процедура ОбработкаЗаписиСправочникаНоменклатура (Источник, Отказ) Экспорт
   Если Не Источник.ЭтоНовый() И (Источник.Родитель <> Источник.Ссылка.Родитель) Тогда
        НельзяМенятьРодителя = ...; //условие, определяющее, кому нельзя менять родителя
        Если НельзяМенятьРодителя Тогда
            Отказ = Истина;
            Сообщить("Нет прав на изменение группы номенклатуры!");
            Возврат;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры
Показать

Потом в Подписках на события добавляешь свою подписку, в источнике указываешь СправочникОбъект.Номенклатура, в событии - ПередЗаписью, в обработчике - свою процедуру МойОбщийМодуль.ОбработкаЗаписиСправочникаНоменклатура.

Остальные ответы
Сортировка: Древо
2. YNik 12.01.17 05:01 Сейчас в теме
(1), делал такое в УТ 10.3, добавлял в подписку на события перед записью в справочник обработчик, в котором делал проверку:
	Если (ТипЗнч(Источник) = Тип("СправочникОбъект.Номенклатура")) И 
			Не Источник.ЭтоНовый() И (Источник.Родитель <> Источник.Ссылка.Родитель) Тогда
		НельзяМенятьРодителя = ...; //условие, определяющее, кому нельзя менять родителя
		Если НельзяМенятьРодителя Тогда
			Отказ = Истина;
			Сообщить("Нет прав на изменение группы номенклатуры!");
			Возврат;
		КонецЕсли;
	КонецЕсли;
Показать
3. medved577 1 12.01.17 14:25 Сейчас в теме
(2) Т.е. в процедуру ПриЗаписи добавить обработчик?
4. tailer2 12.01.17 14:27 Сейчас в теме
(3) перед записью
и не "в процедуру", а в подписку
6. medved577 1 12.01.17 14:43 Сейчас в теме
(4) не совсем понял - что такое "подписка" ?
8. tailer2 12.01.17 14:49 Сейчас в теме
10. medved577 1 12.01.17 15:48 Сейчас в теме
(8)А что такое "подписка" ? Это где?
11. Hallon 12.01.17 16:00 Сейчас в теме
(10) Подписка на событие имеется ввиду.
12. medved577 1 12.01.17 17:19 Сейчас в теме
(11)Я просто не очень силен еще в 8, это где находится
13. YNik 12.01.17 21:29 Сейчас в теме
(12), В конфигураторе, в конфигурации, Общие, Подписки на события.
Перед этим в Общих модулях создаешь свой общий модуль (если еще нет своего), например МойОбщийМодуль, в нем создаешь процедуру, например:
Процедура ОбработкаЗаписиСправочникаНоменклатура (Источник, Отказ) Экспорт
   Если Не Источник.ЭтоНовый() И (Источник.Родитель <> Источник.Ссылка.Родитель) Тогда
        НельзяМенятьРодителя = ...; //условие, определяющее, кому нельзя менять родителя
        Если НельзяМенятьРодителя Тогда
            Отказ = Истина;
            Сообщить("Нет прав на изменение группы номенклатуры!");
            Возврат;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры
Показать

Потом в Подписках на события добавляешь свою подписку, в источнике указываешь СправочникОбъект.Номенклатура, в событии - ПередЗаписью, в обработчике - свою процедуру МойОбщийМодуль.ОбработкаЗаписиСправочникаНоменклатура.

7. spacecraft 12.01.17 14:46 Сейчас в теме
(1) если всем, кроме одного, только просмотр... зачем еще что-то городить?
Или даже для этого одного тоже запрет на перенос в другую группу?
9. medved577 1 12.01.17 15:47 Сейчас в теме
(7) задача стоит ограничить доступ до уровня - посмотри, добавь в документ
5. DrBlack 18 12.01.17 14:32 Сейчас в теме
На УПП можно решить с помощью RLS, указав права доступа на конкретные группы, на КА не помню уже, есть RLS или нет...
Оставьте свое сообщение

Вакансии

Менеджер по продажам проектов 1С
Санкт-Петербург
Полный день

Бизнес-аналитик 1С
Санкт-Петербург
зарплата от 70 000 руб. до 90 000 руб.
Полный день

Консультант-аналитик 1С
Санкт-Петербург
зарплата от 50 000 руб. до 65 000 руб.
Полный день

Консультант по внедрению 1С
Новосибирск
Полный день

Программист 1С
Новокузнецк
зарплата от 55 000 руб.
Полный день