SFDX - Create Objects with Custom Properties
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}
With the current state of the DX CLI, is it possible to dynamically add objects that have custom properties?
Example - I create a scratch org then install the base package.
From thereon, would I be able to create say an Account object and give it custom fields through the CLI?
I haven't seen anything in the API documentation about such a thing, but I'm new to Salesforce in general so wondering if an approach for this is not supported?
Or can you only do such a thing once every package you need that contains the custom fields you want/need for objects have been installed?
Hoping if there is even a hacky way about the above, I'd love to know. Thinking of leveraging that possibility with javascript and powershell.
Any clarity greatly appreciated.
javascript salesforcedx process-automation
add a comment |
With the current state of the DX CLI, is it possible to dynamically add objects that have custom properties?
Example - I create a scratch org then install the base package.
From thereon, would I be able to create say an Account object and give it custom fields through the CLI?
I haven't seen anything in the API documentation about such a thing, but I'm new to Salesforce in general so wondering if an approach for this is not supported?
Or can you only do such a thing once every package you need that contains the custom fields you want/need for objects have been installed?
Hoping if there is even a hacky way about the above, I'd love to know. Thinking of leveraging that possibility with javascript and powershell.
Any clarity greatly appreciated.
javascript salesforcedx process-automation
add a comment |
With the current state of the DX CLI, is it possible to dynamically add objects that have custom properties?
Example - I create a scratch org then install the base package.
From thereon, would I be able to create say an Account object and give it custom fields through the CLI?
I haven't seen anything in the API documentation about such a thing, but I'm new to Salesforce in general so wondering if an approach for this is not supported?
Or can you only do such a thing once every package you need that contains the custom fields you want/need for objects have been installed?
Hoping if there is even a hacky way about the above, I'd love to know. Thinking of leveraging that possibility with javascript and powershell.
Any clarity greatly appreciated.
javascript salesforcedx process-automation
With the current state of the DX CLI, is it possible to dynamically add objects that have custom properties?
Example - I create a scratch org then install the base package.
From thereon, would I be able to create say an Account object and give it custom fields through the CLI?
I haven't seen anything in the API documentation about such a thing, but I'm new to Salesforce in general so wondering if an approach for this is not supported?
Or can you only do such a thing once every package you need that contains the custom fields you want/need for objects have been installed?
Hoping if there is even a hacky way about the above, I'd love to know. Thinking of leveraging that possibility with javascript and powershell.
Any clarity greatly appreciated.
javascript salesforcedx process-automation
javascript salesforcedx process-automation
asked 4 hours ago
trebleCodetrebleCode
1133
1133
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
The Salesforce DX CLI can do things at a few different levels. It manages scratch and non-scratch orgs, for example, and it handles deploying and retrieving source. On top of those basic capabilities, it has some tools that handle building specific types of metadata, like sfdx force:apex:class:create
.
Salesforce DX is a source-based system, and you can always create metadata source code yourself using any tool you please. Convenience commands like the above make it easier, but don't preclude you from simply writing an Apex class and its associated XML metadata to disk and then performing a deployment.
sfdx
does not offer commands to programmatically scaffold the metadata for a custom object or add fields to a custom object, as it does for Apex, Visualforce, and Lightning components. However, it's not particularly difficult to generate or template out the XML definitions of that metadata yourself.
The easiest way to figure out what the metadata needs to look like is just to pull some examples from one of your orgs, or you can look through an existing project like those in the trailheadapps
collection on GitHub. Bear in mind that Salesforce has two source code formats (Metadata API and SFDX), so you may see some confusing differences between older and newer projects. You'll start out with SFDX format source code if you're building your project anew with SFDX.
Once you have the metadata in hand, SFDX will happily push it into your scratch org, sandbox, or production org using the sfdx force:source:push
(scratch orgs/source-tracking orgs), sfdx force:source:deploy
(non source-tracking orgs with SFDX source format), and sfdx force:mdapi:deploy
(any org with Metadata API source format) commands.
You can mix-and-match package installations and deployments of metadata from SFDX. Just bear in mind that if you install a managed package you're still subject to the usual limitations on altering managed components.
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "459"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f260148%2fsfdx-create-objects-with-custom-properties%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The Salesforce DX CLI can do things at a few different levels. It manages scratch and non-scratch orgs, for example, and it handles deploying and retrieving source. On top of those basic capabilities, it has some tools that handle building specific types of metadata, like sfdx force:apex:class:create
.
Salesforce DX is a source-based system, and you can always create metadata source code yourself using any tool you please. Convenience commands like the above make it easier, but don't preclude you from simply writing an Apex class and its associated XML metadata to disk and then performing a deployment.
sfdx
does not offer commands to programmatically scaffold the metadata for a custom object or add fields to a custom object, as it does for Apex, Visualforce, and Lightning components. However, it's not particularly difficult to generate or template out the XML definitions of that metadata yourself.
The easiest way to figure out what the metadata needs to look like is just to pull some examples from one of your orgs, or you can look through an existing project like those in the trailheadapps
collection on GitHub. Bear in mind that Salesforce has two source code formats (Metadata API and SFDX), so you may see some confusing differences between older and newer projects. You'll start out with SFDX format source code if you're building your project anew with SFDX.
Once you have the metadata in hand, SFDX will happily push it into your scratch org, sandbox, or production org using the sfdx force:source:push
(scratch orgs/source-tracking orgs), sfdx force:source:deploy
(non source-tracking orgs with SFDX source format), and sfdx force:mdapi:deploy
(any org with Metadata API source format) commands.
You can mix-and-match package installations and deployments of metadata from SFDX. Just bear in mind that if you install a managed package you're still subject to the usual limitations on altering managed components.
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
add a comment |
The Salesforce DX CLI can do things at a few different levels. It manages scratch and non-scratch orgs, for example, and it handles deploying and retrieving source. On top of those basic capabilities, it has some tools that handle building specific types of metadata, like sfdx force:apex:class:create
.
Salesforce DX is a source-based system, and you can always create metadata source code yourself using any tool you please. Convenience commands like the above make it easier, but don't preclude you from simply writing an Apex class and its associated XML metadata to disk and then performing a deployment.
sfdx
does not offer commands to programmatically scaffold the metadata for a custom object or add fields to a custom object, as it does for Apex, Visualforce, and Lightning components. However, it's not particularly difficult to generate or template out the XML definitions of that metadata yourself.
The easiest way to figure out what the metadata needs to look like is just to pull some examples from one of your orgs, or you can look through an existing project like those in the trailheadapps
collection on GitHub. Bear in mind that Salesforce has two source code formats (Metadata API and SFDX), so you may see some confusing differences between older and newer projects. You'll start out with SFDX format source code if you're building your project anew with SFDX.
Once you have the metadata in hand, SFDX will happily push it into your scratch org, sandbox, or production org using the sfdx force:source:push
(scratch orgs/source-tracking orgs), sfdx force:source:deploy
(non source-tracking orgs with SFDX source format), and sfdx force:mdapi:deploy
(any org with Metadata API source format) commands.
You can mix-and-match package installations and deployments of metadata from SFDX. Just bear in mind that if you install a managed package you're still subject to the usual limitations on altering managed components.
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
add a comment |
The Salesforce DX CLI can do things at a few different levels. It manages scratch and non-scratch orgs, for example, and it handles deploying and retrieving source. On top of those basic capabilities, it has some tools that handle building specific types of metadata, like sfdx force:apex:class:create
.
Salesforce DX is a source-based system, and you can always create metadata source code yourself using any tool you please. Convenience commands like the above make it easier, but don't preclude you from simply writing an Apex class and its associated XML metadata to disk and then performing a deployment.
sfdx
does not offer commands to programmatically scaffold the metadata for a custom object or add fields to a custom object, as it does for Apex, Visualforce, and Lightning components. However, it's not particularly difficult to generate or template out the XML definitions of that metadata yourself.
The easiest way to figure out what the metadata needs to look like is just to pull some examples from one of your orgs, or you can look through an existing project like those in the trailheadapps
collection on GitHub. Bear in mind that Salesforce has two source code formats (Metadata API and SFDX), so you may see some confusing differences between older and newer projects. You'll start out with SFDX format source code if you're building your project anew with SFDX.
Once you have the metadata in hand, SFDX will happily push it into your scratch org, sandbox, or production org using the sfdx force:source:push
(scratch orgs/source-tracking orgs), sfdx force:source:deploy
(non source-tracking orgs with SFDX source format), and sfdx force:mdapi:deploy
(any org with Metadata API source format) commands.
You can mix-and-match package installations and deployments of metadata from SFDX. Just bear in mind that if you install a managed package you're still subject to the usual limitations on altering managed components.
The Salesforce DX CLI can do things at a few different levels. It manages scratch and non-scratch orgs, for example, and it handles deploying and retrieving source. On top of those basic capabilities, it has some tools that handle building specific types of metadata, like sfdx force:apex:class:create
.
Salesforce DX is a source-based system, and you can always create metadata source code yourself using any tool you please. Convenience commands like the above make it easier, but don't preclude you from simply writing an Apex class and its associated XML metadata to disk and then performing a deployment.
sfdx
does not offer commands to programmatically scaffold the metadata for a custom object or add fields to a custom object, as it does for Apex, Visualforce, and Lightning components. However, it's not particularly difficult to generate or template out the XML definitions of that metadata yourself.
The easiest way to figure out what the metadata needs to look like is just to pull some examples from one of your orgs, or you can look through an existing project like those in the trailheadapps
collection on GitHub. Bear in mind that Salesforce has two source code formats (Metadata API and SFDX), so you may see some confusing differences between older and newer projects. You'll start out with SFDX format source code if you're building your project anew with SFDX.
Once you have the metadata in hand, SFDX will happily push it into your scratch org, sandbox, or production org using the sfdx force:source:push
(scratch orgs/source-tracking orgs), sfdx force:source:deploy
(non source-tracking orgs with SFDX source format), and sfdx force:mdapi:deploy
(any org with Metadata API source format) commands.
You can mix-and-match package installations and deployments of metadata from SFDX. Just bear in mind that if you install a managed package you're still subject to the usual limitations on altering managed components.
answered 3 hours ago
David Reed♦David Reed
40.5k82360
40.5k82360
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
add a comment |
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
1
1
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
The shane-sfdx-plugins plugin for the cli facilitates creating that object and field metadata from the command line. Unofficial and unsupported, but written by a Salesforce employee.
– Thomas Taylor
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
That's pretty snazzy. Adding to my sfdx now...
– David Reed♦
3 hours ago
add a comment |
Thanks for contributing an answer to Salesforce Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f260148%2fsfdx-create-objects-with-custom-properties%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown