À partir d'une classe Apex, comment puis-je détecter l'édition (par exemple, Groupe, Professionnel, Entreprise, Illimité). Plus précisément, existe-t-il une API pour récupérer les capacités (ou leur absence) pour l'édition de l'utilisateur? Le problème que j'essaie de résoudre est celui de l'édition de groupe/professionnel, les utilisateurs ne peuvent pas accéder aux services Web personnalisés dans mon application, en recevant l'erreur LOGIN_OAUTH_API_DISABLED. Existe-t-il un moyen de détecter si cela fonctionne à partir d'Apex?Détection de l'édition et/ou des capacités Salesforce à partir d'Apex/VisualForce
Répondre
Vous pouvez utiliser le SOQL suivant pour déterminer le type de licence de l'Organisation:
SELECT OrganizationType FROM Organization
Pour professionnel, il retournera "Professional Edition". Ceci est détaillé sur le Organization object page.
Y a-t-il des fonctionnalités spécifiques que vous cherchez à découvrir? Il n'y a aucun moyen de déterminer l'édition (et ce serait principalement un hareng si vous le pouviez). Beaucoup de différences finissent par se refléter dans le modèle de données, et vous pouvez découvrir cela en utilisant le describe features. Si vous voulez vérifier à partir de l'apex si vos services Web sont activés/disponibles, vous pouvez utiliser des légendes apex pour essayer de faire un appel (et FWIW, le code d'erreur provient d'OAuth, et non de votre apex service web)
"Apex is included in Unlimited Edition, Developer Edition, and Enterprise Edition."
Duh. Comment allez-vous exécuter un code Apex dans Group/Professional Editions? Il n'y a pas d'Apex, les pages Visualforce doivent être très simples (pas d'Apex = pas de contrôleurs personnalisés), pas d'API webservices (ce qui signifie aussi pas de Data Loader) ...
Je dirais qu'il suffit de garder votre code existant et de l'envelopper try-catch bloc?
Vous pouvez déployer une application gérée dans Group/Professional une fois qu'elle a passé la vérification de sécurité. – Vincent
Merci superfell, j'ai mis à jour ma question avec la capacité spécifique que j'essaie de détecter. – Vincent
Merci pour votre réponse mise à jour. Je comprends qu'il n'y a pas de solution facile à ce problème, ça a confirmé ce que je savais déjà ;-) En tout cas merci d'avoir offert vos pensées! – Vincent