==更新:) =========无法选择用户信息(UserInfo)中的记录。用户名: , 。 Dynamics Axe 2009
!像另一个2100的限制!请帮忙 !
下面是我们发现的一些更新:
我写了一个简单的工作:
server static void testEs(Args _args)
{
UserInfo t;
;
select t;
}
当我运行它为管理员,没有任何问题。当我删除我的管理员权限并再次运行时,仍然出现此错误: 无法在用户信息(UserInfo)中选择记录。用户名: , 。
对于简单的测试,我们删除了一些用户,从2188到2074个用户。已删除的用户已在系统中一段时间(一个月前)。我重做相同的测试(非管理员时运行上述工作),现在它工作。
任何想法的人??????
==原始消息==================
嗨! (对不起,我的英文不好)
当我们的生产环境中非管理员用户尝试登录Ax时,我们遇到了一个问题。
实际上,存在与这些消息的信息日志(堆栈跟踪被附加到消息):
==信息日志========
无法选择在用户信息记录(用户信息)。用户名: , 。 SQL数据库发出错误。
(S)\类\信息\ checkStartupCompany_Server - 8号线 (C)\类\信息\ checkStartupCompany - 线4 (C)\类\信息\启动 - 线49
下面是用SQL语句错误:
SQL语句:????????SELECT TOP 1 A.COMPANY,A.ID,101090 FROM USERINFO一个WHERE((((ID IN(,,,,,,,, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,? ,?,?,?,?,?,?,?,?,?, [..并继续..] ?,? ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?)))
==结束信息日志========
这里的信息:: checkStartupCompany_Server与这里的内容发表评论,其中它的bug:
server static void checkStartupCompany_Server(str _curext, userId _curuseid)
{
UserInfo userInfo;
if (!hasMenuItemAccess(menuitemdisplaystr(SysDataAreaSelect), MenuItemType::Display) ||
!hasMenuItemAccess(menuitemdisplaystr(SysDataArea), MenuItemType::Display))
{
select firstonly Company from userInfo
where userInfo.Id == curuserid(); // <== HERE !!!!!!!!!!!!!!
if (userInfo.Company != curext())
{
appl.setDefaultCompany(userInfo.Company, false);
}
}
}
=== ==========
在Info :: checkStartupCompany_Server的代码中,它使得管理员用户不会遇到这个问题,因为上面的条件被绕过了。
我们现在怀疑公司设置。
任何帮助表示赞赏:)提前:)
== END原始消息==================
谢谢