5

I have a managed package. I have a picklist about where to store something. If the picklist has "Files" and "Notes and Attachments", and I want to add "Content" as an enumeration, when I make a new package and provide it for my customers, will they get the new picklist value or will they need to add it manually?

  • 1
    Best you change the accepted answer to Vladimir's. – Keith C Feb 7 '18 at 22:00
9

Unfortunately, not.

We tried to support this scenario in Winter '18, as correctly stated in the release notes document posted above, but we had to revert that change and pull it from the release.

https://releasenotes.docs.salesforce.com/en-us/winter18/release-notes/rn_change_log.htm

September 27, 2017

Add New Picklist Values in Managed Package Upgrades We removed this entry from the release notes. This feature is no longer available in the Winter ‘18 release, and we are evaluating it for a future release.

I'm looking into why it wasn't removed from the Release notes.

Sorry for the confusion,

Vladimir

| improve this answer | |
  • 1
    How about Winter 19 - can we already add new picklist options on managed package upgrades? – wesaw Oct 2 '18 at 16:00
6

Yes. No - see the answer from Salesforce Product Manager Vladimir Gerasimov.

New behaviour is (incorrectly) documented in the Add New Picklist Values in Managed Package Upgrades part of the Winter '18 release notes:

Developers can now deploy new picklist values to subscriber orgs in managed package upgrades.

Previously, managed package upgrades could not add new picklist values in subscriber orgs without post-deployment steps. Now, a managed package upgrade can add values, based on the value’s API name, automatically.

A managed package upgrade with new picklist values has the following behaviors.

  • Adds new picklist values that have been added to the package since it was last deployed
  • Does not deactivate or activate existing values
  • Does not delete existing values
  • Does not change default values
  • Does not change existing value labels
| improve this answer | |
  • +1 Nice. I didn't see this in ISVforce docs. – sfdcfox Feb 7 '18 at 19:17
1

From the ISVforce Guide : Special Behavior of Components in Packages: (my emphasis)

Custom Fields

  • When explicitly referencing a picklist value in code, keep in mind that subscribers can add, edit, and delete picklist field values for custom fields. Carefully consider this possibility when explicitly referencing a picklist value in code. Developers can add and delete picklist values, but new picklist values are not installed into the subscriber’s org for existing fields during a package upgrade. Picklist values deleted by the developer are still available in the subscriber’s org.
  • Package upgrades remove dependent picklist values that are saved in a managed custom field.

So, as at Summer '19, any new packaged picklist values will need to be either manually added after the upgrade or created via a post install script with the Metadata API.

| improve this answer | |

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.