Script AD, comptabilitasationd'éléments

Résolu
mamash_bek Messages postés 20 Date d'inscription mercredi 6 juin 2007 Statut Membre Dernière intervention 11 juin 2009 - 9 juin 2009 à 11:40
mamash_bek Messages postés 20 Date d'inscription mercredi 6 juin 2007 Statut Membre Dernière intervention 11 juin 2009 - 11 juin 2009 à 14:48
Bonjour,

Je dois comptabiliser certains éléments sur l' AD mais le traitement est un peu long avec le RecordCount. N'est-il pas possible de passer par une comptabilisation au sein de la requête (un peu comme sur les BDD classiques)?
= > Anomalie sur :

objCommand.CommandText = "SELECT Count(*) FROM 'LDAP://" &
strChemin & "' WHERE objectCategory='" & strCategorie & "'"

Script actuel fonctionnant:
Function Calcul(strChemin,strCategorie)

Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider= ADsDSOObject;"
Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection
 
objCommand.Properties("Page Size") = 100000
objCommand.CommandText = "SELECT * FROM 'LDAP://" & strChemin & "' WHERE objectCategory='" & strCategorie & "'"
Set objRecordSet = objCommand.Execute
[...]
Calcul = objRecordSet .RecordCount

En vous remerciant par avance
A voir également:

2 réponses

mamash_bek Messages postés 20 Date d'inscription mercredi 6 juin 2007 Statut Membre Dernière intervention 11 juin 2009 1
11 juin 2009 à 14:48
Pour info dans le LDAP AD, il suffit décrire notre comparaison de la forme:
Champs-à-tester='*toto*'
Champs-à-tester='toto*'

Champs-à-tester='*toto'

Plutôt que les syntaxes BDD 'classqiue' qui ne marche pas ici comme les
substr, mid like '%..%'
3
mamash_bek Messages postés 20 Date d'inscription mercredi 6 juin 2007 Statut Membre Dernière intervention 11 juin 2009 1
10 juin 2009 à 10:50
Bon en fait le réel problème de lenteur provient des contrôles sur les données du Recordset que j'effectue parla suite.
J' inclue donc des conditions plus restrictives dans mon WHERE et effectue plusieurs
objCommand.Execute.

Par contre, j'aimerai y rajouter quelques chose comme :

objCommand.CommandText = "SELECT  [...]
where [...] and not Mid(sAMAccountName,1,4)='adm-' "

Mais cela n'est pas interprété par l' AD auriez vous une idée de la syntaxe à appliquer dans le cas ou cela est possible?
0
Rejoignez-nous