Cognos 8 SDK: как получить подгруппы группы? - PullRequest
0 голосов
/ 12 января 2010

Я пытаюсь получить подгруппу группы в стандартном пространстве имен Cognos.

Запрос хранилища содержимого для получения ВСЕХ групп работает нормально.Стандартные методы для получения «членов» объектов возвращают пользователей или только «корневую» группу (группу, в которой я хочу подгруппы).Ничего другого ....

Я делаю что-то не так или это просто "не делать"?

1 Ответ

0 голосов
/ 13 января 2010

Я нашел способ сделать это:

Предполагается, что у вас есть путь поиска для группы, подгруппы которой вы хотите. Запросите хранилище содержимого для него с помощью следующего PropEnum:

PropEnum[] props = { 
    PropEnum.defaultName, 
    PropEnum.searchPath, 
    PropEnum.members };

В результате вы получите BaseClass[] object (хотя только с одним элементом ...). Import com.cognos.developer.schemas.bibus._3.Group <--- это часть библиотек Cognos SDK и теперь вы можете разыграть группу <code>object[0].

object.getMembers().getValue()[] - это массив всех членов, включая группы, роли, учетные записи.

В Java это выглядит так (запрос для объекта уже сделано):

Group group = (Group)object[0];
BaseClass obj = null;
for (int i = 0; i < group.getMembers().getValue().length; i++){
   obj = group.getMembers().getValue();
   System.out.println(obj.getSearchPath().getValue());
}
...