7.7 Разрешение на создание элемента!

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Asttoxa, 10 мар 2011.

  1. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    Идея такая:
    Есть справочник. У него в корне 3 группы. в этих трех группах есть множество других НО!
    Нужно сделать так, чтобы в 1 группе мог создавать и редактировать 1ый пользователь, во второй группе редактировать и создавать 2ой пользователь, а в третьей группе 3тий пользователь! Просматривать и выбирать могут все и везде!

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

    PS Да и еще нужно чтобы в корне дерева ни папки ни элементы создавать никому нельзя было!

    :angry:
  2. 2man
    Offline

    2man Опытный в 1С

    Регистрация:
    26 ноя 2010
    Сообщения:
    81
    Симпатии:
    0
    Баллы:
    26
    В форме списка справочника следует использовать предопределенную процедуру ПриВводеСтроки() и там проверять по имени пользователя.
    В форме элемента подойдет процедура ВводНового()
    Форма списка:
    Код:
    Процедура ПриВводеСтроки()
    Если ИмяПользователя()<>"Пользователь1" Тогда
    Предупреждение("Вам нельзя добавлять элементы справочника!");
    Возврат;
    КонецЕсли;
    КонецПроцедуры
    
    
    Форма элемента:
    Код:
    Процедура ВводНового()
    Если ИмяПользователя()<>"Пользователь2" Тогда
    Предупреждение("Вам нельзя добавлять элементы справочника!");
    Возврат;
    КонецЕсли;
    КонецПроцедуры
    
    
  3. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    Тут говорится о глобальном запрете редактирования. И это лучше запрещать в Правах доступа. А я говорю о частичном запрете. Тоесть В одну папку можно создавать а в другую нельзя! Тоесть проверка на пользователя + проверку на глобальную папку.
  4. Diego
    Offline

    Diego Любитель 1С Команда форума

    Регистрация:
    3 апр 2009
    Сообщения:
    966
    Симпатии:
    2
    Баллы:
    29
    Наверно перед записью элемента в справочник проверять его родителя (не помню уже, есть он в семерке)
    или код группы, куда записывается элемент.
  5. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    В том то и дело что я хотел сделать НЕ ПЕРЕД записью а ПЕРЕД созданием проверять на доступ ...
    Тоесть не запретить записывать, а запретить создавать!
  6. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26
    Добавте в справочник "Пользователи" Рекивизит на "Нужный Справочник" и установите нужную группу каждому пользователю, а при создании нового элемента проверяйте , у пользователя есть разрешение на создание....

    Смотрите процедуру "ВводНового()"
  7. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Это все реализуется через права с помошью RLS
  8. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Itsys - v7.7. ;)
  9. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    Сори, тогда точно придется морочиться с реквизитами пользователей или еще один справочник добавлять :) В любом случае будет тормознуто...
  10. TopicStarter Overlay
    Asttoxa
    Offline

    Asttoxa Опытный в 1С

    Регистрация:
    18 май 2010
    Сообщения:
    525
    Симпатии:
    0
    Баллы:
    26
    Ребят вы может не услыхали меня! Запретить или разрешить редактировать элементы в справочнике я могу силами 1с там где я определяю права доступа.
    Мне нужно чтобы разрешение СОЗДАНИЯ элемента зависело от двух параметров:
    1) Пользователь
    2) Корневая папка в справочнике, а не сам справочник!
  11. alp
    Offline

    alp Опытный в 1С

    Регистрация:
    8 янв 2009
    Сообщения:
    432
    Симпатии:
    0
    Баллы:
    26

    1) в 1С можно вибирать группу, тоесть в реквизите справочника пользвателе будет стоят ваша группа,

    Код:
    <Ваш реквизит>.ВыборГруппы(1);
    
    
    
    2) Использовать рекурсивную функцию для поиски вашей группы

    Код:
    Функция НайтиРодителя(ТекЭлемент)
    Если ПустоеЗначение(ТекЭлемент.Родитель) = 1 Тогда
    Возврат ТекЭлемент;
    Иначе
    Возврат НайтиРодителя(ТекЭлемент .Родитель);
    КонецФункции
    
    
    
    
    
    3) В Процедуре ВводНового()
    Код:
     
    ТекушийРодительСоздаваемогоЭлемента =  НайтиРодителя(Родитель);
    
    Если ГлТекущийПользователь.<Ваш реквизит> <> ТекушийРодительСоздаваемогоЭлемента Тогда
    Предупреждение("Нельзя создавать....");
    СтатусВозврата(0);
    Возврат;
    КонецЕсли;
    
    
    
    



    4) + еще надо запретит создавать не в папке...

Поделиться этой страницей