質問
私は、標準のCognosネームスペースにグループのサブグループを取得しようとします。
すべてのグループを取得するためにContentstoreをキシにすると正常に動作します。 オブジェクトの「メンバー」を取得するための標準methodesは、ユーザーのみ「ルート」グループ(私はサブグループのするグループを)返します。他に何も....
私は何か間違ったことをやっているか、単に「やるべきではない」ことがありますか?
解決
私はそれを行うための方法を見つけます:
あなたがサブグループのするグループのためのsearchpathを持っていると仮定すると。 次PropEnumでそれのためにcontentstoreを照会します:
PropEnum[] props = {
PropEnum.defaultName,
PropEnum.searchPath,
PropEnum.members };
は、結果として、あなたは(...しかし一つだけの要素を持つ)BaseClass[] object
を取得します。
インポートcom.cognos.developer.schemas.bibus._3.Group
は<---これは、CognosのSDKライブラリの一部であり、
今、あなたがグループに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());
}
所属していません StackOverflow