Запрет на изменение стандартных полей

Обсуждаем TrackStudio по-русски

Запрет на изменение стандартных полей

Postby sunshinetk » Mon Sep 06, 2010 10:17 am

TrackStudio 3.5.68
Добрый день!
Просмотрел форум, но внятных ответов не нашел, вопрос следующий:
нужно что бы пользователь мог менять поля "Сделать до" и "Приоритет" только через определенное сообщение.
Что бы пользователь не мог редактировать эти поля из всех сообщений, нужно убрать возможность редактирования поля для группы, в которую входит пользователь.
Далее редактирование поля происходит через скрипт, но если у пользователя нет прав на редактирование поля, то и скрипт не отрабатывает, так как нет прав.
Единственное решение, как я понимаю, это давать права на редактирование, но в каждое сообщение вставлять скрипт, который сравнивает значение стандартных полей в задаче и в сообщении, и в случае различия уведомляет о невозможности изменения поля через данное сообщение, либо просто игнорирует изменение этого поля в сообщении. В любом случае получается громоздко и некрасиво, особенно если реализован сложный процесс и в задаче 20 - 30 типов сообщений.
Прошу помочь, ответив на вопрос, как более красиво решить данную задачу?
Обрезать стандартные поля и переводить "Сделать до" в UDF не хотелось бы.
На мой взгляд, в TS очень не хватает механизма игнорирования проверки прав в определенных случаях в скриптах.
sunshinetk
 
Posts: 63
Joined: Wed Sep 16, 2009 8:27 am

Re: Запрет на изменение стандартных полей

Postby Petr » Mon Sep 06, 2010 11:24 am

через ядро все делайте, там права не проверяются.
TS Support
email: parsentev@yandex.ru
Petr
 
Posts: 1122
Joined: Wed Aug 12, 2009 4:38 pm

Re: Запрет на изменение стандартных полей

Postby admin » Mon Sep 06, 2010 2:11 pm

Petr wrote:через ядро все делайте, там права не проверяются.


Именно так. Secured-классы и бины - это просто обертка над ядром, которая проверяет права. Если это не нужно - просто вызывайте соот. методы ядра, они называются так же и параметры там те же (за исключением сессии пользователя, про которую ядро не знает).
Maxim Kramarenko (mailto: maximkr@trackstudio.com)
TrackStudio - Hierarchical Bug & Issue Tracking Software
http://www.trackstudio.com
admin
Site Admin
 
Posts: 7304
Joined: Thu Jan 01, 1970 3:00 am
Location: Smolensk, Russia

Re: Запрет на изменение стандартных полей

Postby sunshinetk » Mon Sep 06, 2010 3:28 pm

Спасибо.
А как тогда, например setDeadline вызвать из KernelManager или через KernelManager.getMessage().createMessage делать?
sunshinetk
 
Posts: 63
Joined: Wed Sep 16, 2009 8:27 am

Re: Запрет на изменение стандартных полей

Postby sunshinetk » Tue Sep 07, 2010 5:10 pm

Может все таки подскажет кто нибудь, если мы вызываем, например, task.setDeadline(), то как вызвать этот метод через Kernel?
Или через KernelManager нельзя вызвать?
sunshinetk
 
Posts: 63
Joined: Wed Sep 16, 2009 8:27 am

Re: Запрет на изменение стандартных полей

Postby Petr » Wed Sep 08, 2010 9:17 am

http://download.trackstudio.com/doc/en/ ... l.Calendar)
Code: Select all
KernelManager.getMessage().createMessage(sc.getUserId(), taskId, mstatusId, ec.toString(), hrs1, handlerUserId, handlerGroupId, resolutionId, priority, deadline1, budget, null);
TS Support
email: parsentev@yandex.ru
Petr
 
Posts: 1122
Joined: Wed Aug 12, 2009 4:38 pm

Re: Запрет на изменение стандартных полей

Postby sunshinetk » Wed Sep 08, 2010 4:10 pm

Спасибо за ответ!
Все работает.
sunshinetk
 
Posts: 63
Joined: Wed Sep 16, 2009 8:27 am


Return to TrackStudio Support [Russian]

Who is online

Users browsing this forum: Google [Bot] and 0 guests