|  18.04.2003, 13:43 | #1 | 
| NavAx | Роли в Аттейне 
			
			Господа, подскажите, как в коде выяснить, к какой роли относится данный юзер? Т.е. иногда у меня возникает надобность выполнять некий код только в случае, если юзер - девелопер. Если бы, например, все девелоперы сидели под одним логином sa, то все очевидно - просто накатать IF USERID = 'sa' THEN ...... Но ситуация немного другая : есть роль super, под этой ролью создано несколько логинов, скажем, admin, developer, lipless_beaver etc. Дык вот как можно аналогичным образом в коде проверить, принадлежит ли юзер к данной группе? (вариант IF USERID IN [developer, admin, lipless_beaver] THEN... не предлагать, в дальнейшем могут появиться новые логины.] | 
|  | 
|  18.04.2003, 13:52 | #2 | 
| Участник | 
			
			делается сие шаманство следующим образом: в системе есть замечательная таблица Member Of - она как раз и содержит назначения всех ролей. то бишь можешь сделать так: //предварительно объяви переменную MemberOf (Record Member Of) MemberOf.SETRANGE("User ID", UPPERCASE(USERID)); а теперь просто IF MemberOf.FIND('-') THEN REPEAT //цикл по всем назначенным залогиневшемуся юзверю ролям // естественно в качестве userid можешь взять любой логин UNTIL MemberOf.NEXT = 0; но можешь еще поставить фильтр типа MemberOf.SETRANGE("Role ID", Text003); и уже потом сделать IF MemberOf.FIND('-') THEN //значит принадлежит | 
|  | 
|  18.04.2003, 16:27 | #3 | 
| NavAx | 
			
			Угу, уже и сам нашел, ID 2000000003 =)
		 | 
|  |