HOWTO: Información De Active Directory Desde X++
!
Warning: This post is over 365 days old. The information may be out of date.Tenía este Job por aquí desde una vez que tuve que utilizarlo para activar/desactivar usuarios automáticamente en Microsoft Dynamics AX (probado en AX 2009) cuando éstos se desactivaban en el dominio. Lo publico para que no se me pierda y por si alguien pudiera sacarle partido :).
static void JAEE_IterateActiveDirectoryUsers(Args _args)
{
str computer = new xSession().clientComputerName();
xAxaptaUserManager mgr = new xAxaptaUserManager();
xAxaptaUserDetails usr;
container doms;
int d, u;
str dom, login, name, sid, email;
;
// iterate AD domains
doms = mgr.enumerateDomains(computer);
for (d = 1; d <= conlen(doms); d++)
{
dom = conpeek(doms, d);
setprefix(dom);
// iterate AD domain users
usr = mgr.enumerateDomainUsers(dom);
for (u = 0; u < usr.getUserCount(); u++)
{
if (usr.isUserEnabled(u) && !usr.isUserExternal(u))
{
// get information from AD
login = usr.getUserLogin(u);
name = usr.getUserName(u);
sid = usr.getUserSid(u);
email = usr.getUserMail(u);
// stuff happens here, you can compare AD data with AX User info
info(strfmt("%1 - %2 - %3 - %4 - %5", dom, login, name, email, sid));
}
}
}
}
Descarga