Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
LDAP SEARCH ALL
|
LDAP SEARCH ALL ( dnRootEntry ; arrResultado ; filtro {; escopo {; atributos {; atributosComoArray}}} ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
dnRootEntry | String |
![]() |
o Distinguished Name do diretório raiz onde a pesquisa começará | |||||
arrResultado | Array objeto |
![]() |
Resultado da pesquisa | |||||
filtro | String |
![]() |
filtro de pesquisa LDAP | |||||
escopo | String |
![]() |
Escopo da pesquisa "base" (padrão), "one", ou "sub" | |||||
atributos | Array texto |
![]() |
Atributos da pesquisa | |||||
atributosComoArray | Array booleano |
![]() |
True = força os atributos a serem retornados como um array, false = força os atributos a serem retornados como uma variável simples | |||||
O comando LDAP SEARCH ALL encontra todas as ocorrências que correspondem aos critérios definidos no servidor LDAP objetivo. Este comando deve ser executado dentro de uma conexão com um servidor LDAP aberto com LDAP LOGIN; caso contrário, um erro 1003 é retornado.
Lembre que os servidores LDAP geralmente impõem um número máximo de entradas que podem ser recebidas a partir de uma pesquisa. Por exemplo, o diretório de Microsoft Active limita esse número para 1.000 entradas como padrão.
Constante | Tipo | Valor | Comentario |
LDAP root only | Texto | "base" | Procurar só no elemento raíz definido por dnRootEntry (por padrão se for omitido) |
LDAP root and next | Texto | "one" | Buscar no elemento la raíz definido por dnRootEntry e nas entradas posteriores diretamente nun nivel |
LDAP all levels | Texto | "sub" | Buscar no elemento raíz definido por dnRootEntry e em todas as entradas posteriores |
Em atributos, passar um array de texto que contém a lista de todos os atributos LDAP para recuperar a partir das entradas encontradas. Por padrão, se o parâmetro for omitido, todos os atributos são recuperados.
Nota: Por favor, note que os nomes dos atributos LDAP diferenciam entre maiúsculas e minúsculas. Para mais informações sobre os atributos LDAP, você pode consultar esta página que lista todos os atributos disponíveis para MS Active directory.
Como padrão, o comando retorna atributos como uma array se forem encontrados vários resultados, ou como uma variável, se for um único resultado. Parâmetros opcionais atributosEmArray permitem "forçar" o formato dos atributos retornados em um array ou como uma variável para cada atributo definido:
Queremos obter o número de telefone de todos os usuários com nome "smith" no diretório da empresa:
ARRAY TEXT($_tabAttributes;0)
ARRAY BOOLEAN($_tabAttributes_asArray;0)
APPEND TO ARRAY($_tabAttributes;"cn")
APPEND TO ARRAY($_tabAttributes_asArray;False)
APPEND TO ARRAY($_tabAttributes;"telephoneNumber")
APPEND TO ARRAY($_tabAttributes_asArray;False)
ARRAY OBJECT($_entry;0)
LDAP LOGIN($url;$myLogin;$pwd)
$filter:="cn=*smith*"
LDAP SEARCH ALL($dnSearchRootEntry;$_entry;$filter;LDAP all levels;$_tabAttributes)
LDAP LOGOUT
//$_entry conterá por exemplo
// $_entry{1} = {"cn":"John Smith","telephoneNumber":"01 40 87 00 00"}
// $_entry{2} = {"cn":"Adele Smith","telephoneNumber":"01 40 87 00 01"}
// $_entry{3} = {"cn":"Adrian Smith","telephoneNumber":"01 23 45 67 89"}
// ...
Estes exemplos ilustram o uso do parâmetro atributosEmArray:
ARRAY OBJECT($_entry;0)
ARRAY TEXT($_tabAttributes;0)
ARRAY BOOLEAN($_tabAttributes_asArray;0)
APPEND TO ARRAY($_tabAttributes;"cn")
APPEND TO ARRAY($_tabAttributes_asArray;False)
APPEND TO ARRAY($_tabAttributes;"memberOf")
APPEND TO ARRAY($_tabAttributes_asArray;True)
LDAP LOGIN($url;$login;$pwd;LDAP password plain text)
LDAP SEARCH ALL($dnSearchRootEntry;$_entry;$filter;LDAP all levels;$_tabAttributes;$_tabAttributes_asArray)
LDAP LOGOUT
ARRAY TEXT($_arrMemberOf;0)
OB GET ARRAY($_entry{1};"memberOf";$_arrMemberOf)
// em $_arrMemberOf temos um array que contém todos os grupos da entrada
ARRAY TEXT($_tabAttributes;0)
ARRAY BOOLEAN($_tabAttributes_asArray;0)
APPEND TO ARRAY($_tabAttributes;"cn")
APPEND TO ARRAY($_tabAttributes_asArray;False)
APPEND TO ARRAY($_tabAttributes;"memberOf")
APPEND TO ARRAY($_tabAttributes_asArray;False)
LDAP LOGIN($url;$login;$pwd;LDAP password plain text)
LDAP SEARCH ALL($dnSearchRootEntry;$_entry;$filter;LDAP all levels;$_tabAttributes;$_tabAttributes_asArray)
LDAP LOGOUT
$memberOf:=OB Get($_entry{1};"memberOf")
// em $memberOf temos uma variável que contém o primeiro grupo da entrada
Produto: 4D
Tema: LDAP
Número
1329
Criado por: 4D v15
Manual de linguagem 4D ( 4D v20 R7)