Preparação para criar um aplicativo
Objetivos de aprendizagem
- Explicar a estrutura do projeto Salesforce DX.
- Descrever como usar a Salesforce CLI para criar um projeto.
- Descrever como usar a Salesforce CLI para importar dados de exemplo.
Criar um projeto do Salesforce DX
Para criar seu primeiro aplicativo, crie um projeto e conecte-o ao repositório de controle de origem.
Um projeto Salesforce DX é uma cópia local dos metadados do pacote, um grupo de códigos e personalizações que estão relacionados. Ele também contém os principais ativos necessários para sincronizar a origem e os metadados do projeto local com suas organizações temporárias. Crie o projeto no mesmo computador em que instalou a Salesforce CLI e, em seguida, sincronize esse projeto com seu repositório VCS.
Por isso, vamos lá! Crie um projeto chamado geolocation
(geolocalização).
- Em um terminal ou na janela de comando, navegue até o local onde deseja colocar seu projeto.
- Crie o projeto:
sf project generate --name geolocation
Esse comando cria uma pasta chamada geolocation (geolocalização) e cria um novo projeto com todos os ativos na estrutura de pastas adequada. Veja um exemplo de um projeto local. É possível ver como um projeto evolui quando você começa a adicionar o código-fonte, componentes do Lightning e classes, entre outros.Ativo Objetivo sfdx-project.json
Esse arquivo indica que o diretório é um projeto Salesforce DX. Ele contém informações sobre o projeto e permite a autenticação de organizações. Ele também indica à Salesforce CLI onde colocar os arquivos durante a sincronização entre o projeto e a organização. Nesse arquivo, você especifica: - Os caminhos para o código-fonte, classes e metadados, de acordo com a localização em um ou mais diretórios de pacotes, nesse caso,
force-app
. - O namespace, se necessário.
- A versão da API da sua origem.
config/project-scratch-def.json
Determina a configuração de uma organização temporária, incluindo os recursos e configurações que definem a forma da organização. Você pode criar um arquivo de configuração para ser compartilhado por toda a equipe de desenvolvimento. force-app
A pasta que contém a origem do projeto. - Os caminhos para o código-fonte, classes e metadados, de acordo com a localização em um ou mais diretórios de pacotes, nesse caso,
Configurar um arquivo de definição da organização temporária
Os arquivos de definição de organizações temporárias permitem criar organizações temporárias com diferentes recursos ou preferências para testes. Por exemplo, você pode ativar ou desativar o armazenamento em cache da web móvel do Salesforce definindo a preferência enables1EncryptedStoragePref2
da organização. Durante o desenvolvimento, a desativação do armazenamento em cache evita que a página seja atualizada repetidamente, aguardando até que as alterações no código do componente entrem em vigor.
Opcionalmente, atualize o conteúdo de config/project-scratch-def.json
para torná-lo mais pessoal, como mudar a propriedade orgName
.
{ "orgName": "Account Geolocation App", "edition": "Developer", "features": ["EnableSetPasswordInApi"], "settings": { "lightningExperienceSettings": { "enableS1DesktopEnabled": true }, "mobileSettings": { "enableS1EncryptedStoragePref2": false } } }
Criar uma organização temporária
Agora que você entende o potencial das organizações temporárias, veja o fluxo de trabalho básico de quando você usa essas organizações no Modelo de desenvolvimento com pacotes.
- Efetue push de sua origem e metadados locais para uma organização temporária.
- Extraia todas as alterações feitas na organização temporária para o projeto local.
- Sincronize esse projeto com seu repositório de controle de origem.
Mas, antes de podermos experimentar o fluxo de trabalho, temos que criar uma organização temporária. Vamos fazer isso agora.
- Na janela de comando, mude para o diretório do projeto
geolocation
(geolocalização).cd geolocation
- Crie uma organização temporária com o alias GeoAppScratch.
sf org create scratch --set-default --definition-file config/project-scratch-def.json --alias GeoAppScratch
O processo pode demorar um pouco. Usamos esses indicadores ao iniciar o comando:
- O indicador
--set-default
indica que você deseja que essa organização temporária seja a organização padrão para esse projeto quando executar comandos da Salesforce CLI. Para usar uma organização diferente por comando, especifique o indicador--target-org
e especifique outro alias. - O indicador
--definition-file
é o caminho para o arquivo de configuração da organização temporária do projeto. - Você se lembra do nosso amigo, o indicador
--alias
, da unidade anterior? Ele permite que você consulte a organização usando o alias, GeoAppScratch, em comandos futuros que aceitem o indicador--target-org
.
Criar dados de teste
As organizações temporárias vêm com alguns dados padrão dependendo da edição escolhida. No entanto, é importante adicionar alguns dados de exemplo que sejam mais relevantes para o aplicativo ou pacote que você está criando. Portanto, vamos usar a Salesforce CLI para criar contas de exemplo para testar com nosso aplicativo de geolocalização.
- Crie a conta do Marriott Marquis.
sf data create record --sobject Account --values "Name='Marriott Marquis' BillingStreet='780 Mission St' BillingCity='San Francisco' BillingState='CA' BillingPostalCode='94103' Phone='(415) 896-1600' Website='www.marriott.com'"
- Crie a conta do Hilton Union Square.
sf data create record --sobject Account --values "Name='Hilton Union Square' BillingStreet='333 O Farrell St' BillingCity='San Francisco' BillingState='CA' BillingPostalCode='94102' Phone='(415) 771-1400' Website='www.hilton.com'"
- Crie a conta do Hyatt.
sf data create record --sobject Account --values "Name='Hyatt' BillingStreet='5 Embarcadero Center' BillingCity='San Francisco' BillingState='CA' BillingPostalCode='94111' Phone='(415) 788-1234' Website='www.hyatt.com'"
Para continuar a revolucionar o mundo dos desenvolvedores, oferecemos comandos que capturam dados da sua organização temporária e colocam esses dados no projeto. Em seguida, você pode confirmar esses dados no repositório de controle de origem para recarregá-los se você, ou outro desenvolvedor, criar uma nova organização temporária.
Seja qual for o sistema de controle de origem usado, recomendamos que você o configure para excluir a pasta.sf
, para não ser adicionada ao repositório. Essa pasta contém informações temporárias para suas organizações temporárias, portanto você não precisa salvá-las para a posteridade. No Git, você a adicionaria ao arquivo.gitignore
.
- No projeto de geolocalização Salesforce DX, crie um diretório chamado
data
(dados).mkdir data
- Exporte alguns dados de exemplo.
sf data export tree --query "SELECT Name, BillingStreet, BillingCity, BillingState, BillingPostalCode, Phone, Website FROM Account WHERE BillingStreet != NULL AND BillingCity != NULL and BillingState != NULL" --output-dir ./data
Agora você tem dados de exemplo que podem ser importados no futuro com esse comando. Mas não faça isso agora, importaremos os dados para uma organização temporária diferente posteriormente.sf data import tree --files data/Account.json
Até agora, sincronizamos dados comuns. Agora, vamos passar para a parte realmente divertida - o código.