Главная
Новый форум
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Права доступа

 
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование отчетов в БЭСТ-5
View previous topic :: View next topic  
Author Message
Slava111



Joined: 09 Aug 2007
Posts: 3



PostPosted: 09 Aug 2007 05:11    Post subject: Права доступа Reply with quote

БЭСТ 5/3.3/8
Добрый день!
Подскажите. Как ограничить права доступа пользователей к отдельным отчета
Back to top
View user's profile Send private message
dshlykov



Joined: 02 Aug 2005
Posts: 172
Location: Дмитрий Шлыков
Occupation: Компания "БЭСТ"
Interests: Москва

PostPosted: 09 Aug 2007 08:50    Post subject: Reply with quote

Добрый день!
1. Самое простое ввести пароль на отчет: пункт меню "Файл - Параметры отчета" и установить галочку у параметра "Защита паролем". После выхода из окна Вам необходимо будет ввести пароль доступа к отчету. После этого перед любым обращением к отчету, будет запрашиватся пароль.
2. Контроль доступа можно сделать с помощью функций USER(), которая возвращает код или наименование пользователя, работающего в системе. Перед загрузкой отчета можно проанализировать права доступа и запретить выполнения отчета. При необходимости могу расписать данный пункт подробнее.
_________________
С уважением, Дмитрий Шлыков
Компания "БЭСТ"
Back to top
View user's profile Send private message Send e-mail
Slava111



Joined: 09 Aug 2007
Posts: 3



PostPosted: 10 Aug 2007 02:28    Post subject: Reply with quote

Если не затруднит, можно второй пункт поподробн
Back to top
View user's profile Send private message
dshlykov



Joined: 02 Aug 2005
Posts: 172
Location: Дмитрий Шлыков
Occupation: Компания "БЭСТ"
Interests: Москва

PostPosted: 10 Aug 2007 10:42    Post subject: Reply with quote

Добрый день!
Slava111 wrote:
Если не затруднит, можно второй пункт поподробнее
В FR есть функция User(), она выдает следующие значения:
    USER('CODE') - код пользователя, который работает с БЭСТ-5
    USER('NAME') - имя пользователя, который работает с БЭСТ-5
При загрузке отчета, в событии OnActive карточки запроса, Вы проверяете имееет ли этот пользователь право на работу с отчетом. Если нет, то вы имееете возможность Выдать об этом сообщение (функция MESSAGEBOX()) и остановить выполнение отчета (функция STOPREPORT). Последняя функция отрабатывает только после карточки запроса. Если такое не подходит, обычно выводим все карточку запроса, на которой все объекты кроме кнопки "Отмена" за блокированы.
_________________
С уважением, Дмитрий Шлыков
Компания "БЭСТ"
Back to top
View user's profile Send private message Send e-mail
Slava111



Joined: 09 Aug 2007
Posts: 3



PostPosted: 13 Aug 2007 04:34    Post subject: Reply with quote

А можно на примере, например на отчете кассовая книга.
Back to top
View user's profile Send private message
dshlykov



Joined: 02 Aug 2005
Posts: 172
Location: Дмитрий Шлыков
Occupation: Компания "БЭСТ"
Interests: Москва

PostPosted: 13 Aug 2007 09:14    Post subject: Reply with quote

Добрый день!
Slava111 wrote:
А можно на примере, например на отчете кассовая книга.
Расказываю на примере отчета кассовая книга:
1. Открываете дизайнер отчетов и в нем открываете указанный Вами отчет.
2. С помощью пункта меню "Сохранить-Сохранить Как" сохраняете этот отчет по новым именем (так как поставочные отчеты пользователь не имеет права корректоровать).
3. В новом отчете находите карточку запроса (в данном случае она находится на стр.1) и щелкаете дважы мышкой в любом месте на этой карточке, где нет объектов или входите событие OnActive карточки запрсоса через инспектор свойств (клавиша F11).
4. В данном событии пишете следующий код:
    IF [USER('CODE')='amdin'] OR [USER('CODE')='0000001'](....) Then lUser=True // есть права на обращение к отчету
    Else lUser=False; // нет прав на обращение к отчету
5. Затем если прав нет закрываем доступ ко всем обьектам карточки запроса, кроме кнопки отмена. Для этого далее пишем следующий код:
    name_B.Enabled := lUser //закрыть доступ к параметру наименование
    spr_sch.Enabled := lUser //закрыть доступ к параметру счет
    ...
    Button1.Enabled := lUser //закрыть доступ к кнопке Выполнить

_________________
С уважением, Дмитрий Шлыков
Компания "БЭСТ"
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование отчетов в БЭСТ-5 All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group

Rambler
Rambler's Top100 Рейтинг@Mail.ru