Recce,
This macro is available from the Cognos Website (KB) and works a treat. Alterations required if you want a .csv instead.
lex
----------------------------------------------------------
Option Explicit
Sub Get_Users_List(UserClass As Object)
Dim I As Integer
If UserClass.Users.Count > 0 Then
For I = 1 To UserClass.Users.Count
Print #1, UserClass.Name, UserClass.Users(I).Name
Next
else
Print #1, UserClass.Name & ":"
End If
If UserClass.UserClasses.Count >= 0 Then
For I = 1 To UserClass.UserClasses.Count
Call Get_Users_List(UserClass.UserClasses(I))
Next
End If
End Sub
Sub Main()
Dim objAuthApp As Object ' Access Manager Application Object
Dim objAuthDoc As Object ' Access Manager Document Object
Dim objDSConfig As Object
Const AdminUser = "Administrator"
Const AdminSignon = ""
Const NameSpace = "default"
Const FileName = "C:\ClassUsers.txt"
' Calls Access Manager and opens namespace with admin signon
Set objAuthApp = CreateObject("Authenticator2.Application"
Set objAuthDoc = objAuthApp.Documents.OpenWithBasicSignon(NameSpace, AdminUser, AdminSignon, 0)
' Opens output file and writes title
Open FileName For Output As #1
Print #1, "User Class:User Name"
' Calls recursive procedure for getting users list
Call Get_Users_List(objAuthDoc.RootUserClass)
' Closes output file
Close #1
' Exits Access Manager
objAuthApp.Quit
Set objAuthDoc = Nothing
Set objAuthApp = Nothing
End Sub
"Time flies like an arrow, but fruit flies like a banana."