![]() |
---|
Summary
– See DRAFT -- Open Guide to SF Solution Packaging (P1) for work in progress notes.
A lot of information on Salesforce solution packaging is already being written.
As Salesforce is a continually improved, living platform, the information in forums or Stack Exchange cannot be consistently up to date.
This unofficial, opinionated, open guide arose from the lessons that too many of us learned the hard way – and by observing the great success achieved by the truly awesome AWS Open Guide.
It's our way to help make a great platform even greater. For more user-to-user advice, see: |
Table of Contents
Each heading on this page is a link to the corresponding section in the official Salesforce ISVforce Guide.
|
See the full content for more about these tips. |
Recently Reported Issues
|
"Learn to plan, build, distribute, market, sell, and support solutions that run on the Salesforce platform."
The Open Guide to SF Solution Packaging is designed as a companion to the Salesforce ISVforce Guide.
By following the links to the ISVforce chapters, you can orientate yourself to the base platform functionality.
See also
"Learn to plan, build, distribute, market, sell, and support solutions that run on the Salesforce platform."
"Discover the architectural concepts that influence AppExchange solution design. Learn how to plan, build, and package your solution for customers."
Architectural Assessment
Style | General Conventions |
|
Triggers |
|
|
Apex Classes |
|
|
Apex Tests |
| How do tests relate to other code?
|
Lightning Components and Events |
|
|
Visualforce |
|
|
Objects |
|
|
Enterprise Patterns | (TBD) | (TBD) |
"Learn how to package, upload, and install a beta version of your solution as part an iterative development approach. After your beta is up and running, learn how to test, fix, extend, and uninstall the solution."
When run concurrently, it's commonplace for valid Apex tests to fail, often due to row locking issues. If you are running the Apex tests interactively, a good approach is to run the tests in concurrent mode first, and then run the failed tests asynchronously (one-at-a-time mode). Here's a bookmarklet you can run from Chrome to select the tests which failed in the last run. First, open the Select Test dialog in the UI, and then launch the bookmarklet.
|
"At Salesforce, nothing is more important than the security and success of our customers. To distribute a solution on AppExchange, it must pass our comprehensive security review. Learn how to design a solution security strategy and prepare for the security review."
"You turned an idea into a solution and are ready to get it in front of customers. To publish your solution on AppExchange, use the AppExchange publishing console. The publishing console is where you create a listing for your solution, connect orgs, manage license settings, and view analytics for your published listings."
"Learn how to use the License Management App (LMA) to manage leads and licenses for your AppExchange solutions, and how to provide administrative support for your customers."
"Maximize customer adoption by offering free trials of your solution on AppExchange. Explore the types of trials available and determine the best type for your solution."
"Your packaged solution is ready for an update. Learn how to fix small issues with patches and make major changes with upgrades."
Partner/Solution Types The AppExchange hosts a wide range of solutions, which are created by a rich array of Salesforce contributors and partners. Some material in the guide is best suited for a subset of package developers. For convenience, we refer to some broad groups of solution developers as Level 1, Level 2, and Level 3.
For clarity, some material is tagged for these developer subsets. |
|