Накладные на отпуск в произв-во: разграничение прав доступа

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

Ответить
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Накладные на отпуск в произв-во: разграничение прав доступа

Сообщение zna »

Доброго дня, коллеги.
Попытался включить механизм разграничения прав доступа к НОС: УПЛ => Настройка => Настройка прав доступа к документам => выбираю НОС => ставлю галочку, настраиваю для себя доступы для всех статусов. Во всех настройках имею административные права.
Но: при входе в любую накладную система закрывает документ для редактирования. Открывается документ только снятием галочки.
Кто- нибудь настраивал?
Была здесь уже такая тема про НПГ- та же проблема.
8.1, MS SQL, временные файлы чистил.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5185
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Накладные на отпуск в произв-во: разграничение прав дост

Сообщение edward_K »

я настраивал но для договоров. Вы на всех закладках все пометили? И там еще режим можно установить для каждого статуса.
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Re: Накладные на отпуск в произв-во: разграничение прав дост

Сообщение zna »

Да, пометил всё, что можно на всех вкладках.
Для договоров и заявок в МТС разграничение прав у нас работает нормально. Не хотелось бы мастерить эту же функциональность в докомпиляции интерфейса..
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Re: Накладные на отпуск в произв-во: разграничение прав дост

Сообщение zna »

Собрал разграничение прав доступа на JavaScript:
1. Пользователям назначил группы;
2. На событие "перед сменой статуса" запускается алгоритм, сохраняющий исходный статус в dsk- файле:

Код: Выделить всё

KatSopr.setPosition(CurDoc());
if(SaveMyDsk(KatSopr.Statt, 'KatSoprStatt'))  {} 
3. На событие "после смены статуса" запускается алгоритм, проверяющий допустимость нового статуса:

Код: Выделить всё

var UserDesgr, StatusOld, StatusNew, Check = false;
KatSopr.setPosition(CurDoc());
if(ReadMyDsk('KatSoprStatt'))
  {
    if(KatSopr.PodrToo == BazaTeplopribor || KatSopr.PodrToo == BazaTeplopribor2)  //Если отпуск идёт на базу Теплоприбор(2)
      {
        UserDesgr = sGetTune('USER.DESGR');
        StatusOld = Buf;
        StatusNew = KatSopr.Statt;
        if(UserDesgr == '06'  && StatusNew == Zakryt) Check = true;           // Кладовщики могут установить статус "Закрыт"
        if(UserDesgr == '01'  || UserDesgr == '02') Check = true;          // Администраторы и управление могут любой статус установить
        if(UserDesgr == '072' && StatusNew == Soglasovannyi) Check = true;    // Начальник производства может установить статус "Согласованный"
        if(UserDesgr == '10'  && StatusNew == Oformlyaemyi) Check = true;     // ПТО может установить статус "Оформляемый"
        Debug.print('НОС => ' + KatSopr.Nomer+' от '+KatSopr.DateDoc+': '+UserDesgr+'; '+UserName()+'; StatusOld = '+ StatusOld+'; StatusNew = '+StatusNew+'; Check = '+Check);
        if(Check == false)
          {
            KatSopr.Statt = StatusOld;
            KatSopr.rewrite();
            Debug.print('Вы не можете установить этот статус. Выполнен откат к исходному статусу.');
          }
        else Debug.print('Новый статус сохранён.');
      }
  }
else Debug.print('Ошибка чтения исходного статуса!');
и если условия допустимости не выполняются, происходит возврат к исходному статусу.
Всё работает, если нужны подробности об объектах- спросите, отвечу.
andy29
Сообщения: 4
Зарегистрирован: 18 июн 2014, 18:13

Re: Накладные на отпуск в произв-во: разграничение прав дост

Сообщение andy29 »

zna писал(а):Да, пометил всё, что можно на всех вкладках.
Для договоров и заявок в МТС разграничение прав у нас работает нормально. Не хотелось бы мастерить эту же функциональность в докомпиляции интерфейса..
Посмотрите настройку "Производство и планирование->Управление производственной логистикой->Для накладных считать запрещенными помеченные статусы на закладке "Доступ к документам". Если стоит значение "ДА", то помеченные статусы являются закрытыми для редактирование а не наоборот. Измените настройку на "НЕТ" и все должно работать как в договорах и в складском учете.
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Re: Накладные на отпуск в произв-во: разграничение прав дост

Сообщение zna »

Да, есть такая настройка, поставил "нет".. Но поздно уже, всё работает как надо. Благодарю, плюсую.
Ответить