2010-12-12 3 views
2

Apex 클래스에서 Edition (예 : Group, Professional, Enterprise, Unlimited)을 어떻게 검색 할 수 있습니까? 좀 더 구체적으로, 사용자 버전에 대한 기능 (또는 API의 부족)을 검색하는 API가 있습니까?Salesforce Edition 및/또는 Apex/VisualForce의 기능을 감지합니다.

내가 풀려고하는 문제는 Group/Professional 에디션에서 사용자가 LOGIN_OAUTH_API_DISABLED 오류가 발생하여 내 앱에서 사용자 지정 웹 서비스에 액세스 할 수 없다는 것입니다. 이것이 Apex 내에서 작동하는지 여부를 감지 할 수있는 방법이 있습니까?

답변

2

당신은 조직의 라이센스 유형을 확인하려면 다음 SOQL을 사용할 수 있습니다

SELECT OrganizationType FROM Organization 

이 전문 것이 "프로페셔널 에디션"을 반환합니다. 자세한 내용은 Organization object page에서 확인할 수 있습니다.

1

찾고자하는 특정 기능이 있습니까? 에디션을 결정할 방법은 없습니다 (그리고 가능하다면 이것은 주로 청어가 될 것입니다). 많은 차이점이 데이터 모델에 반영되어 결국 describe features을 사용하여이를 발견 할 수 있습니다.

웹 서비스가 활성화/사용 가능한지 확인하려는 경우 apex 콜 아웃을 사용하여 전화를 걸 수 있습니다 (FWIW, 오류 코드는 정점에서가 아니라 OAuth에서 가져온 것입니다). 웹 서비스)

+0

감사합니다. 수퍼 파켈, 내가 검색하려고하는 특정 기능으로 내 질문을 업데이트했습니다. – Vincent

+0

업데이트 된 답변을 보내 주셔서 감사합니다. 나는이 문제에 대한 쉬운 해결책이 없다는 것을 모았으며, 내가 이미 알고있는 것을 확인해 주었다 .- 어떤 경우 에라도 당신의 생각을 제공해 주셔서 감사합니다! – Vincent

-3

"Apex is included in Unlimited Edition, Developer Edition, and Enterprise Edition."

Duh. Groupex/Professional Edition에서 Apex 코드를 어떻게 실행합니까? Apex가 없기 때문에 Visualforce 페이지는 매우 간단합니다 (Apex = 사용자 지정 컨트롤러 없음), 웹 서비스 API가 없습니다 (데이터 로더가 없음을 의미).

기존 코드를 그대로 유지 한 다음 try-catch 블록?

+0

보안 검토를 통과하면 관리되는 App을 Group/Professional에 배포 할 수 있습니다. – Vincent