Список форумов www.integro.ru www.integro.ru
ЦСИ ИНТЕГРО
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Роли пользователя

 
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков
Предыдущая тема :: Следующая тема  
Автор Сообщение
netkiller



Зарегистрирован: 21.04.2008
Сообщения: 16

СообщениеДобавлено: Вт 15 Июл 2008 13:07    Заголовок сообщения: Роли пользователя Ответить с цитатой

Нужна помощь.
Необходимо получить количество и наименования ролей у пользователя который вошел в систему. Приложение разрабатывается на делфи.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
RuslanG



Зарегистрирован: 10.07.2005
Сообщения: 171
Откуда: ИНТЕГРО

СообщениеДобавлено: Ср 23 Июл 2008 15:28    Заголовок сообщения: Ответить с цитатой

Код:
procedure TTestForm.UserRolesButtonClick(Sender: TObject);

   procedure AddToMemoRole(anActiveDb: IIngeoDb; anUser: IIngeoUser);
   var
      i: Integer;
      aRoleId: String;
      aRole: IIngeoRole;
      aRoleName: String;
   begin
      Memo.Lines.Add('Входит в группы:');
      for i := VarArrayLowBound(anUser.RoleIDs, 1) to VarArrayHighBound(anUser.RoleIDs, 1) do begin
         aRoleId := anUser.RoleIDs[i];
         aRole := anActiveDb.Roles.RoleFromID(aRoleId);
         aRoleName := aRole.Name;
         Memo.Lines.Add(aRoleName);
      end;
   end;

var
   i: Integer;
   anActiveDb: IIngeoDb;
   aLogonUserId: String;
   anUser: IIngeoUser;
begin
   // Объект управления информацией активной БД ИнГЕО
   anActiveDb := FIngeo.ActiveDb;
   // Идентификатор пользователя, учетная запись которого
   // в данный момент используется для доступа к базе данных.
   aLogonUserId := anActiveDb.LogonUserID;
   // Получение пользователя по идентификатору
   anUser := anActiveDb.Users.UserFromID(aLogonUserId);
   // Вывод в Memo информации о пользователе
   Memo.Lines.Add(Format('Пользователь: %s', [anUser.Name]));
   Memo.Lines.Add(Format('Полное имя: %s', [anUser.FullName]));
   Memo.Lines.Add(Format('Описание: %s', [anUser.Description]));
   // Вывод в Memo информации о ролях пользователя
   AddToMemoRole(anActiveDb, anUser);
end;

_________________
С уважением, Руслан Гадеев
Видео уроки ИнГео
Документация ИнГео
Обновления ИнГео
Интегропедия
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
netkiller



Зарегистрирован: 21.04.2008
Сообщения: 16

СообщениеДобавлено: Чт 24 Июл 2008 15:10    Заголовок сообщения: Ответить с цитатой

Большое спасибо
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков Часовой пояс: GMT + 5
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете добавлять приложения в этом форуме
Вы можете скачивать файлы в этом форуме


© phpBB Group
Русская поддержка phpBB