Link to home
Start Free TrialLog in
Avatar of aliscool
aliscool

asked on

Crystal reporting on active directory and page size limits

All,

I am trying to develop a reporting solution for our very large active directory infrastructure using Crystal Reports Dev 8.5.  We have hundreds of thousands of objects in our Active directory and currently no means to report against it.

Using Crystal 8.5 Dev I have managed to connect to the active directory using the below logic.

ADO data connection using ADSDSOObject as the server and the following ldap query as the recorset that is fetched.  

SELECT name, adspath, givenName, Department, EmployeeID, HomeDirectory, cn, displayName, middleName, initials, company, title, department, streetAddress, postOfficeBox, l, st, postalCode, c, mail, otherMailbox, telephoneNumber, homePhone, mobile, pager, facsimileTelephoneNumber, wWWHomePage from 'LDAP://DC=Domain,DC=com' WHERE objectClass = 'user'

This allows me to pull in records up to 1000 total then it stops.  I suspect this is related to a maximum page size limit set on our domain controllers.  I see the same limit on a linked SQL server I have also set up.

My question is...

Is it possible through this or a similar mechanism to specify a page size in the ldap string, or some other way to return more than the current 1000 rows I am seeing?

Am I chasing a dead end?



ASKER CERTIFIED SOLUTION
Avatar of DRRYAN3
DRRYAN3

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of aliscool
aliscool

ASKER

Thank you DRRYAN3,

I am rethinking the whole thing now, I have built some vb scripts that will enumerate the Active directory one class at a time... at first they were dumping to excel but now that we have grown past the row limit of excel for most I am dumping them as text then importing to SQL.  Still really clunky though for our production enviroment.

If I figure out a way to import to SQL directly or a work around with Crystal I'll post for all to see.

again thanks for your time,
Alfred
According to the following article from Microsoft, you can exceed the 1000 record limit on reading Active Directory Data by setting the Page Size parameter to some value I.E 100.  This enables Client/Server paging.  

The problem I'm having is I cant find anywhere in the Crystal Report OLE DB provider for Directory services to set this parameter. Im using Crystal Reports Developer 8.0

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netdir/adsi/paging.asp