Вниз
Скачать: CL | DM;

ХП и пользователи   Найти похожие ветки 

 
ksan   (2003-12-22 18:56) [0]

Здравствуйте, уважаемые!
Можно ли в ХП определить зарегистрированного пользователя, который запустил эту ХП, с тем, чтобы в зависимомти от имени пользователя и предоставленных ему прав выполнять определенные действия? Если можно, то как получить его имя?


 
Rad ©   (2003-12-22 19:38) [1]

CURRENT_USER
вроде, и
USER


 
Trad   (2003-12-22 21:45) [2]

а это как?
label52.Caption:=CURRENT_USER; чтоли? - не работает....


 
Trad   (2003-12-22 23:06) [3]

как пользоваться CURRENT_USER?


 
kaif ©   (2003-12-23 00:15) [4]

Trad (22.12.03 23:06) [3]
как пользоваться CURRENT_USER?

Очень просто -
определив в ХП зарегистрированного пользователя, который запустил эту ХП, в зависимомти от имени пользователя и предоставленных ему прав, выполнять определенные действия.
Так как ХП работает на сервере, то и действия она выполняет обычно над базой данных. Можно, конечно, какой-нибудь EVENT в ней сгенерить, зарегистрировать его в приложении и повесить обработчик на событие, когда этот EVENT возникнет, в котором Lable.Caption присваивать. Но зачем? Приложение и так знает, какой юзер логинится.
Кстати, права предоставляются не только юзеру, но и могут предоставляться роли. Узнать роль можно с помощью CURRENT_ROLE.
USER и CURRENT_ROLE - функции, возвращащие имя пользователя и его роль в текущей транзации и могут использоваться в SQL-запросах, триггерах и ХП.


 
Trad   (2003-12-23 00:26) [5]

мне нужно, чтобы в Lable.Caption отображался пользователь, как это сделать?


 
Rad ©   (2003-12-23 01:10) [6]

Trad (23.12.03 00:26) [5]
мне нужно, чтобы в Lable.Caption отображался пользователь, как это сделать?
Подумать :)
Опять же, каждый клиент ведь и так знает, под кем подсоединяется...


 
Trad   (2003-12-23 02:53) [7]

а конкретно, как код написать?


 
stud ©   (2003-12-23 09:26) [8]

после подключения к БД например, вроде label1.caption:=database.parambyname("user name")
или создаеш свою таблицу с описаинем пользователей на русском языке и после подключения выбираеш данные из нее


 
Deniz ©   (2003-12-23 13:35) [9]

Query1.SQL.Add("select USER from RDB$DATABASE");
Query1.Open;
Label1.Caption:=Query1.Fields[0].AsString;
Query1.Close;

примерно так, но ... вроде USER или CURRENT_USER в зависимости от сервера. Для FB 1.5 работают оба варианта, но вот для IB7 не знаю.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
14-63404
VictorT
2003-12-26 14:57
2004.01.20
Надежда умирает последней


6-63270
Yakudza
2003-11-19 12:31
2004.01.20
Как оборвать соединение с инетом ?


7-63410
ФЫ
2003-10-23 22:52
2004.01.20
дисковод


14-63359
PVOzerski
2003-12-29 12:06
2004.01.20
Сообщение об ошибке при запуске NT4


1-63224
Dantis
2004-01-09 12:11
2004.01.20
Linux Unix




   Наверх