Is there an API method to return what edition current customer is using?
Attribution to: Mark Kofman
Possible Suggestion/Solution #1
You can query the OrganizationType from the Organization object.
select OrganizationType from Organization
As of API 32 possible values are: ["Team Edition","Professional Edition","Enterprise Edition","Developer Edition","Personal Edition","Unlimited Edition","Contact Manager Edition","Base Edition"]
Where Team Edition is commonly referred to as Group Edition and Base Edition is known as Performance Edition.
These values are derived from:
Schema.DescribeFieldResult dfr = Schema.sObjectType.Organization.fields.OrganizationType;
List<String> values = new List<String>();
for(Schema.PicklistEntry ple : dfr.getPicklistValues()){
values.add(ple.getValue());
}
system.debug(JSON.serialize(values));
Attribution to: Daniel Hoechst
Possible Suggestion/Solution #2
Use below class to determine the instance and edition of salesforce.
public class whereAmI{
// First method will give us the edition as a string
public Static String getEdition(){
// Organization object FTW!
Organization[] org = new Organization[]{};
org = [select Id, OrganizationType from Organization limit 1];
// Check to make sure we have a result
if(org.size()==1)
return org[0].OrganizationType;
else
return '[still lost...]';
}
// Next method tells us if we're in a sandbox
public Static Boolean isSandbox(){
String host = URL.getSalesforceBaseUrl().getHost();
String server = host.substring(0,host.indexOf('.'));
// It's easiest to check for 'my domain' sandboxes first
// even though that will be rare
if(server.contains('--'))
return true;
// tapp0 is a unique "non-cs" server so we check it now
if(server == 'tapp0')
return true;
// If server is 'cs' followed by a number it's a sandbox
if(server.length()>2){
if(server.substring(0,2)=='cs'){
try{
Integer.valueOf(server.substring(2,server.length()));
}
catch(exception e){
//started with cs, but not followed by a number
return false;
}
//cs followed by a number, that's a hit
return true;
}
}
// If we made it here it's a production box
return false;
}
}
Courtesy : http://www.michaelforce.org/recipeView?id=a0Ga000000Ekp65EAB
Attribution to: Jitendra Zaa
This content is remixed from stackoverflow or stackexchange. Please visit https://salesforce.stackexchange.com/questions/216