Salesforce APEX获取用户许可证
因此,我试图获得当前用户的用户许可证,如系统管理员或用户等。。。我看过这里,并使用了其他方法,但这些似乎不适合我。我想知道从哪里开始 我得到的错误是: 比较参数必须是兼容的类型:Schema.SObjectField、String 从使用以下代码开始:Salesforce APEX获取用户许可证,salesforce,apex,Salesforce,Apex,因此,我试图获得当前用户的用户许可证,如系统管理员或用户等。。。我看过这里,并使用了其他方法,但这些似乎不适合我。我想知道从哪里开始 我得到的错误是: 比较参数必须是兼容的类型:Schema.SObjectField、String 从使用以下代码开始: public String getOpps() { if(Profile.UserLicense.Name === 'Community Customer') { oppCheck = true; } else {
public String getOpps() {
if(Profile.UserLicense.Name === 'Community Customer') {
oppCheck = true;
} else {
oppCheck = false;
}
***loop*** {
code here
}
} else {
more code here
}
return 'nil';
}
这些是许可证类型,我从API指南中获得它们,多亏了 标准:用户许可证。此用户类型还包括Salesforce Platform和Salesforce Platform One用户许可证。标签是标准的。 PowerPartner:PRM用户,其访问受到限制,因为他或她是合作伙伴,通常通过合作伙伴访问应用程序 门户。标签是合作伙伴。 CSLitePortal:其访问受到限制的用户,因为他或她是组织的客户,通过 针灸门。标签是高容量门户。 CustomerSuccess:其访问权限受到限制的用户,因为他或她是组织的客户,并通过 客户门户。标签是客户门户用户。 PowerCustomerSuccess:其访问权限受到限制的用户,因为他或她是组织的客户,通过 客户门户。标签是客户门户管理器。与此相关的用户 许可证类型可以查看和编辑其直接拥有的数据或其拥有的数据 或在客户门户角色层次结构中与他们下面的用户共享。 CsnOnly:对应用程序的访问仅限于聊天的用户。此用户类型包括无聊天和聊天主持人 用户。标签是无颤音的。 此外,您可能会幸运地尝试:
Profile p = [Select Name from Profile where Id =: userinfo.getProfileid()];
String pname = p.name;
if(pname == 'Community Customer') {
oppCheck = true;
} else {
oppCheck = false;
}
只是澄清一下,系统管理员与用户是一个配置文件,而不是用户许可证。许可证决定了诸如Salesforce和Chatter之类的事情。