3

I have built managed package using developer’s edition. I am using APEX code, classes and triggers in the package to handle certain things.

I have uploaded package as managed-released. The upload was successful. I then tried installing the package in my Salesforce Professional edition. I did get below error while installing:

Your request to install package “Package name” was unsuccessful. None of the data or setup information in your salesforce.com organization was affected. If your install continues to fail, contact Salesforce CRM Support through your normal channels and provide the following information. Problem:

  1. Apex Classes(classes/PhoneNumberFormatTestClass.cls-meta.xml) Missing feature Installing this package requires the following feature and its associated permissions: Apex Classes
  2. Apex Triggers(triggers/FormatPhoneNumberForLead.trigger-meta.xml) Missing feature Installing this package requires the following feature and its associated permissions: Apex Triggers

When I contacted Salesforce they said:

There are no limitations around apex and professional edition. There is no restriction on using apex if you start out with an unmanaged package, however the issue is with distribution. You cannot distribute an unmanaged package through the appexchange. There is no rev share implications.

From what I see in their answer the package should work in my Professional edition.

Does anyone know or suspect why I cannot install the package?

  • Does your user profile on your Professional Edition allow you to modify apex code or classes? – battery.cord Sep 27 '16 at 13:38
  • 2
    To install managed package in Professional edition, You must be an eligible partner with salesforce.com and your app has to pass the security review. The appropriate permissions will automatically be enabled after you pass the security review. The considerations for using Apex in GE/PE are given in following link, developer.salesforce.com/docs/atlas.en-us.packagingGuide.meta/… – Devendra Sep 27 '16 at 13:39
  • 2
    @Devendra And that should be an answer. – sfdcfox Sep 27 '16 at 14:23
  • 1
    @Devendra I think you are right, the app needs to go through review and I need to become partner in order to run it on pro edition. I am just confused because this is what Salesforce told me, and they didn't mention any review etc: There are no limitations around apex and professional edition. There is no restriction on using apex if you start out with an unmanaged package, however the issue is with distribution. You cannot distribute an unmanaged package through the appexchange. There is no rev share implications. – zachu Sep 27 '16 at 15:56
  • 1
    @zachu You are right, I am putting this as an answer. so that some one who face the same issue can be benefited. – Devendra Sep 27 '16 at 16:03
5

As per the Salesforce documentation,

You must be an eligible partner with salesforce.com and your app has to pass the security review. The appropriate permissions will automatically be enabled after you pass the security review.

Also, here are some important considerations for using Apex in GE/PE.

  • GE/PE customers can’t create or modify Apex in your app; they can only run the existing Apex.
  • Your Apex code should not depend on features and functionality that exist only in DE, EE, UE, or PXE, or your app will fail to install.
  • Make sure to use REST if you plan to expose an Apex method as a Web service. Apex classes that have been exposed as a SOAP Web service can’t be invoked from an external web app in GE/PE.
  • Using Apex to make Web service callouts is allowed in GE/PE. For instance, if you’re planning to make a Web service callout to an external Web service, as long as the managed package is authorized, these classes will function in GE/PE.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.