2 Replies Latest reply: Jul 10, 2014 7:31 AM by Jebamalai Dass RSS

    Active Directory Report Issue

      Hi,

       

      First time poster and relative newcomer to Qlikview so please go easy.

       

      We have a report that shows the content of  Active DIrectory.  This report is manually reloaded when required by all three members of my team, myself running Win 7 and my two collegues who both run XP.

       

      We have recently upgraded to a new V11 SR2 environment from V9 and now only the two members of our team still running XP can reload the data.

       

      When I try to run the code below I get the error shown in the attached screen grab.  When I reload the connection seems to connect ok and then the reload fails when trying to retreive the first of the data. 

       

      Any advice or suggestions would be gratefully received as to how to resolve the issue as we plan to upgrade all our client machines Windows 7 and we all need to be able to reload this report.

       

      Thanks

       

      SET RootDse = 'DC=**company**, DC=**domain**';
      /*
      Read names from Active Directory using AdsDSO.
      Active Directory returns a maximum number (pagesize) of rows per call. 
      The loop below will get all the rows regardless of the pagesize. 
      */
      
      CONNECT TO 'Provider=ADsDSOObject';
      LET arg=chr(01); // Set search start name to a very low value
      DO 
       UserTable:
        LOAD 
        displayName as DisplayName,
        name as UserName,
        distinguishedName as UserDN,
        upper(sAMAccountName) as %KeyLanID,
        sAMAccountName As SamUser
       ;
       SQL select 
        name,displayName,sAMAccountName, distinguishedName  // Fields to select 
       FROM 'LDAP://$(RootDse)'  WHERE objectCategory='person' 
        AND name>'$(arg)'; // Get rows where "name" is GT the arg
       
       EXIT DO WHEN ScriptError > 1 // Stop loop if SELECT has error
       EXIT DO WHEN NoOfRows('nameTable') = 0;  // Stop loop if SELECT returns nothing
       EXIT DO WHEN peek('UserName') = '$(arg)';  // If the last "name" read is EQ to arg -- no more entries
       
       LET arg=peek('UserName'); // Set the arg to the last "name" read
      LOOP