Посмотрел метод LicencedUsers() класса Info в Ax 2009 и увидел, что там данный недостаток уже исправлен:
X++:
static server int licensedUsers()
{
Dictionary dictionary = new Dictionary();
SysConfig sysConfigTemp;
select sysConfigTemp
where (sysConfigTemp.Id == licensecodenum(SysUsers)) && (sysConfigTemp.ConfigType == ConfigType::AccessCodes);
return dictionary.testCode(sysConfigTemp.Id,
sysConfigTemp.Value,
xSysConfig::find(ConfigType::LicenseName,0).Value,
xSysConfig::find(ConfigType::SerialNo,0).Value,
xSysConfig::find(ConfigType::LicenseName,1).Value);
}
Таким образом, для того, чтобы корректно отображались данные на форме Активные пользователи, а именно верно считалось число активных сессий в Axapta 3, необходимо добавить критерий проверки типа конфигурации
X++:
sysConfigTemp.ConfigType == ConfigType::AccessCodes
в методы:
1)Info::licensedUsers()
2)Info::licensedComUsers()
3)Info::licensedAosUsers()
Подсчет происходит так же в классе Info:
X++:
static server int licensedUsersTotal()
{
return Info::licensedUsers()+Info::licensedComUsers()+Info::licensedAosUsers();
}
Плюс к этому, следует добавить данный критерий в метод licensedObjectServers() класса Info.