2.5 KiB
2.5 KiB
Smart Clone - Opportunity Cloner
The purpose of the Smart Clone is to provide the user with the functionality to clone an opportunity, but with added benefits.
- The ability to select only fields that need to be edited during the cloning
- The ability to select fields that must be cleared of their original value
- The ability to clone other child objects than just Opportunity Products
The Project consists of the following components:
| Item | Description |
|---|---|
| OpportunityCloneService | Apex class that contains the Apex functionality |
| OpporutnityCloneserviceTest | Code coverage and unit test class |
| TestCloneUtility | Utilities used in the Code coverage and unit test class |
| SmartCloneChildList custom label | Custom Label used as a setting to store semi-colon separated list of child objects to select from |
| opportunityCustomClone | Lightning web component that is the visual interface |
| OppCustomCloneAura | Aura Lightning Component that is used to wire to a QuickAction |
| Opportunity.SmartClone QuickAction | The QuickAction button to use on the Opportunity Detail Layout |
| Opportunity.ClonedFields fieldset | the fieldet used to configure displayable and cleared fields for input |
Additional Notes
- This application currently will not support the cloning of a hierarchy of children. This means it is only designed to support the cloning of direct children to the Opportunity, and the Opportunity itself
- This application will not support RecordType as a field to be edited/updated during the clone.
Setup
Prerequisites
- You need to have the Salesforce CLI installed on your system to follow the install directions.
Installed Steps
- Clone this repository to your local filesystem.
- Navigate to the directory created from the clone.
- Create a 'build' folder in the directory of this cloned repository
- Convert the project into deployable Metadata API format using the following command
sfdx force:source:convert -r ./force-app/main/default -d ./build/unpackaged/ - Zip the 'unpackaged' directory located in the 'build' folder.
- Deploy the zip file into your instance using the following command
sfdx force:mdapi:deploy -u <yourinstancealias> -f ./build/unpackaged.zip -w 30 --verbose- Optionally, you can use the
-l RunLocalTestsoption if installing into a production instance separately.
- Optionally, you can use the
- Once the deployment completes successfully, the components will be installed in your instance.