Trailhead サンプルアプリケーションを試してみました。GitHubにTrailhead Appsが用意されているのですが、ここに各LWCのサンプルアプリケーションのリンクがあります。README.mdを見れば環境構築の方法を確認できます。実際に動かしてみてイメージを把握してからコードの内容を確認するという使い方ができるようになっていました。
こちらのトレイルヘッドでまとめられている話です。
LWC Recipes
認証
sf org login web -a lwc-recipes -b chrome
Git Clone
git clone https://github.com/trailheadapps/lwc-recipes cd lwc-recipes
デプロイ
sf project deploy start -o lwc-recipes sf org assign permset -n recipes -o lwc-recipes sf data tree import -p ./data/data-plan.json -o lwc-recipes sf org open -o lwc-recipes -b chrome
LWC Recipes
E-Bike
このサンプルコードを試すためには、Experience Cloudの有効化やその他設定変更、 Experience Cloud サイトのメタデータ ファイルの編集、ケースオブジェクトの設定変更が必要です。
認証
sf org login web -a ebikes-lwc -b chrome
Git Clone
git clone https://github.com/trailheadapps/ebikes-lwc cd ebikes-lwc
デプロイ
sf project deploy start -d force-app -o ebikes-lwc sf org assign permset -n ebikes -o ebikes-lwc sf data tree import -p ./data/sample-data-plan.json -o ebikes-lwc sf community publish -n E-Bikes -o ebikes-lwc sf project deploy start --metadata-dir=guest-profile-metadata -w 10 -o ebikes-lwc sf org open -o ebikes-lwc -b chrome
E-Bikes アプリケーション
E-Bikes Experience Cloud アプリケーション
DreamHouse
認証
sf org login web -a dreamhouse-lwc -b chrome
Git Clone
git clone https://github.com/dreamhouseapp/dreamhouse-lwc cd dreamhouse-lwc
デプロイ
sf project deploy start -d force-app -o dreamhouse-lwc sf org assign permset -n dreamhouse -o dreamhouse-lwc sf data tree import -p ./data/sample-data-plan.json -o dreamhouse-lwc sf org open -o dreamhouse-lwc -b chrome
DreamHouse アプリケーション
Bedsの値の変更はProperty Finderページから行えます。
Automation Components
管理パッケージインストール
認証
sf org login web -a automation-comps -b chrome
Git Clone
git clone https://github.com/trailheadapps/automation-components cd automation-components
デプロイ
sf project deploy start -o automation-comps sf org open -oautomation-comps -b chrome
できること
以下のようにフローとApexに関するサンプルコードを確認できたりします。
- @InvocableVariable : フローとApexクラスの間でデータ連携するときのサンプル。
- @InvocableMethod : フローアクションとして呼び出せるサンプル。
お試しフローの作成
Trailheadの手順で進めていくとフロー×Apex連携で商談ロスト時にレコードロックするサンプルフローを作成できます。
easy-spaces-lwc
パッケージインストール
認証
sf org login web -a dreamhouse-lwc -b chrome
Git Clone
git clone https://github.com/trailheadapps/easy-spaces-lwc cd easy-spaces-lwc
デプロイ
sf project deploy start -o easy-spaces-lwc sf org assign permset -n EasySpacesObjects -o easy-spaces-lwc sf org assign permset -n SpaceManagementApp -o easy-spaces-lwc sf data tree import -p ./data/Plan1.json -o easy-spaces-lwc sf data tree import -p ./data/Plan2.json -o easy-spaces-lwc sf org open -o easy-spaces-lwc -b chrome
テーマとブランディングの有効化
Space Management アプリケーション
パッケージ作成を試す
次のコマンドで未管理パッケージを作成できます。この作業にはDevHub組織が必要です。
sf package create -n ESObjects -t Unlocked -r es-base-objects
sf pakcageコマンドで次のエラーが発生した場合は設定不足が理由です。
Error (1): The requested resource does not exist
DevHub組織の設定で「ロック解除済みパッケージと第二世代管理パッケージを有効化」を行ってください。エラーが解決します。
上記手順でエラーメッセージは消えたのですが、version create コマンドが正常に実行できませんでした。
sf package version create --package 0Ho... --installation-key password123
Trailheadの手順のとおりに改めて再挑戦。コマンドも手順に記載されたsfdxコマンドの方で試してみました。
sfdx force:package:create --name=ESObjects --packagetype=Unlocked --path=./es-base-objects sfdx force:package:version:create --package=ESObjects --installationkeybypass --wait=20
次のような成功メッセージが表示されてうまくいきました。「sf package version list」で作成されていることを確認できました。
Successfully created the package version [*]. Subscriber Package Version Id: *
Package Installation URL: https://login.salesforce.com/packaging/installPackage.apexp?p0=*
As an alternative, you can use the "sf package:install" command.
Trailheadモジュール「Explore the Easy Spaces App Packaging Architecture」をクリアするには、DevHub組織=ソースをデプロイしたハンズオン組織で進めると良いと思います。DevHub組織を別のDeveloperEdtion組織に設定して進めたらチャレンジがうまくとおりませんでした。(少なくてもDevHub組織と第二世代パッケージの有効化の設定は必須)
apex-recipes
認証
sf org login web -a apex-recipes -b chrome
Git Clone
git clone https://github.com/trailheadapps/apex-recipes cd easy-spaces-lwc
デプロイ
sf project deploy start -o apex-recipes sf org assign permset -n Apex_Recipes -o apex-recipes sf org assign permset -n Walkthroughs -o apex-recipes sf data tree import -p ./data/data-plan.json -o apex-recipes sf data tree import -p ./data/data-plan2.json -o apex-recipes sf apex run --file data/setup.apex -o apex-recipes sf org open -o apex-recipes -b chrome
Apex Recipes アプリケーション
まとめ
Salesforce社が用意しているTrailhead サンプルアプリケーションはこんな感じでした。Salesforce CLIが使える状態になっていればソースのデプロイ→権限付与→テストデータ登録と簡単に実施できて実際に動かすことができるようになっています。E-Bikes アプリケーションにはExeperience Cloudのしっかりしたサンプルも用意されているのでこれをベースに設定まわりの勉強ができそうでした。