我需要检查X ++,如果调用者是EP或客户端,那么如果调用者是该代码中的EP,我可以进行一些自定义。请告诉我怎么可能
注意:我正在为EP和AX客户端使用ListPageInteraction类,如果调用者是ListPageInteraction类中的EP,我必须对同一查询(用于两者)进行一些修改
答案 0 :(得分:0)
检查NumberSeqNumCache.isEpClient方法,它看起来像这样:
/// <summary>
/// Determines whether the request is from EP.
/// </summary>
/// <returns>
/// true if EP is the caller; otherwise, false.
/// </returns>
static server boolean isEpClient()
{
xSession session = new xsession();
boolean isEP = false;
sysClientSessions clientsessions;
;
select ClientType from clientsessions where clientsessions.SessionId == session.sessionId();
if (clientSessions.ClientType == SessionType::WebUser || clientsessions.clientType == SessionType::Worker)
{
isEp = true;
}
return isEp;
}
它检查当前会话是否为webuser或worker类型。如果您使用客户端,会话将是SessionType :: GUI类型。请注意,其他会话也可以注册为SessionType :: Worker类型,例如批处理任务,因此这可能无处不在。