
【Salesforce】LGForce の導入方法(Salesforce CLI を使用)【帳票ツール】
2024/08/02
はじめに
本記事では、シンプルな Salesforce 帳票ツールである LGForce の導入手順について解説します。
LGForce では、App Exchange が導入準備中とのことで、今回解説する手順はそれよりも多少複雑になります。(この手順が使えなくなるということではありません)
なお、LGForce のサービスについては以下の公式サイトをご確認ください。
1.ツールをインストールする
まずは、LGForce をインストールさせるためのツール群をインストールします。必要なものは以下の通りです。
- 1.Visual Studio Code
- 2.Git
- 3.Node.js
- 4.Java(JDK 17)
- 5.Salesforce CLI
順番にインストールしていきましょう。
※ツールのインストール時や Salesforce CLI のログイン時に、お使いの PC のセキュリティシステムの設定変更が必要な場合があります。十分な作業時間をとり、一通りの手順を実施するようお願いします。
Visual Studio Code(以下、VSCode)
後述の Salesforce CLI を動作させるために必要なツールです。以下のサイトからダウンロードできます。
Git
LGForce の資材をダウンロードするために必要なツールです。Windows の場合は以下のサイトからダウンロードできます。
mac や Linux の場合はコマンドでインストールできます。
# mac
$ brew install git
# Linux(debian/Ubuntu系)
$ sudo apt-get update
$ sudo apt-get install git
# Linux(CentOS/Red Hat系)
$ sudo yum update
$ sudo yum install git
Node.js
後述の npm を含むシステムです。以下のサイトからダウンロードできます。
Java(JDK 17)
後述の Salesforce CLI を動作させるために、Java の JDK が必要になります。推奨バージョンは 17 で、以下のサイトからダウンロードできます。
Salesforce CLI
LGForce の資材を組織に反映するために必要なツールです。
Salesforce CLI のインストール方法はいくつかありますが、npm によるインストールがおすすめです。VSCode のターミナルを立ち上げて、以下のコマンドを実行することでインストールできます。
$ npm install @salesforce/cli --global
以下の記事に Salesforce CLI の詳細なインストール手順やエラー対応方法がありますので、参考にしてください。
2.コマンドで組織に LGForce の資材を反映する
ツールのインストールが終わったら、次は LGForce の資材を自分の Salesforce の組織に送ります。
作業フォルダをひとつ作成して VSCode で読み込み、VSCode のターミナルで以下のコマンドを順番に実行すると、組織に資材が反映されます。
# 1. GitHub から資材を clone する。
$ git clone https://github.com/YuTaExtend/LGForceAction.git
# 2. clone されたフォルダに移動する。
$ cd LGForceAction
# 3. Salesforce CLI のログイン情報を初期化する。
$ sf org logout --target-org lgforce-org
# 4. Salesforce にログインする。(※注意点あり。下記参照)
$ sf org login web --alias lgforce-org
# 5. 資材を組織に送る。
$ sf project deploy start --manifest ./manifest/package.xml --target-org lgforce-org
手順 4 について補足ですが、コマンド実行時にブラウザが立ち上がるので、そこで自分の環境にログインする流れになります。また、Sandbox や独自ドメインにログインしたい場合は、以下のようにコマンドに追記が必要になります。
# 4. Salesforce にログインする。(Sandbox や独自ドメインの場合)
$ sf org login web --alias lgforce-org --instance-url https://MyDomainName--SandboxName.sandbox.my.salesforce.com
3.LGForce の初期設定を行う
続いて、LGForce の資材の初期設定を行います。以下の手順を順番に実施ください。
- 1.タブ権限編集
- 2.項目レベルセキュリティ編集
- 3.テンプレート作成
- 4.フロー作成
- 5.アクション作成
- 6.ページレイアウト編集
順番に実施していきましょう。
1.タブ権限編集
まずは、システム管理者のプロファイルで「【LGForce】テンプレート」のタブの権限を「デフォルトで表示」に変更します。

2.項目レベルセキュリティ編集
次に、システム管理者のプロファイルから「【LGForce】テンプレート」「【LGForce】項目マッピング」の項目レベルセキュリティの権限を参照し、すべての項目の編集権限を付与します。

3.テンプレート作成
次に、PDF を生成するテンプレートをエクセルで作成し、テンプレート情報をレコードとして登録します。サンプルとして、商談名と金額を表示するよう以下のようなエクセルファイルを作成しました。

【LGRorce】テンプレートのタブから新規作成をクリックし、テンプレートを新規作成します。
「オブジェクトAPI参照名」には、テンプレートを使いたいオブジェクトの API 参照名、出力ファイル名にはファイル名を設定します。

「ContentDocument ID」には、アップロードしたエクセルファイルのドキュメント ID を指定します。ドキュメント IDは、ファイルの詳細画面の URL に含まれる、「069」から始まる 18 桁の英数字の文字列です。

続いて、項目マッピングを設定します。エクセルファイルや出力ファイル名で「{!文字列}」の形式になっている場所にレコードの値を差し込めます。今回は商談名と金額に値を差し込みますので、以下の画面のように設定ください。(別記事にまとめますが、サブクエリで子オブジェクトのレコード一覧を差し込むこともできます)

4.フロー作成
サンプルで、商談から請求書 PDF を生成するフローを一つ作成してみます。フローの新規作成から画面フローを選択し、以下の画面キャプチャのように「PDF 作成」という画面を配置します。

画面の要素の内容は以下の通りです。「カスタム」セクションに「【LGForce】PDF出力フロー」が表示されているので、これを組み込みます。

次に、「【LGForce】PDF出力フロー」の設定を行います。API参照名は任意の英数字で入力いただくほか、「テンプレートID」「レコードID」「PDF変換実行」「ダウンロード実行」をパラメータとして持ちます。
テンプレートIDは手順 3 のテンプレートの ID を設定します。ID は手順 3 で作成したテンプレートのレコードの URL に含まれている、18 桁の英数字の文字列です。

また、レコードIDは「新規リソース」を選択して、以下のように設定します。

最後に、フローを保存して有効化すれば完了です。
※「PDF変換実行」「ダウンロード実行」については、別記事にて解説します。

5.アクション作成
次に、PDF を生成したいオブジェクトで以下のようなアクションを新規作成します。アクションでは、手順 4 で作成したフローを呼び出します。

6.ページレイアウト編集
最後に PDF を生成したいオブジェクトのページレイアウトで、手順 5 で作成したアクションを配置します。

これで初期設定は完了です。
4.LGForce の利用申請を行う
最後に、LGForce の利用申請を行います。お試しなので、まずは Trial プランを選びましょう。
- 1.組織 ID 取得
- 2.LGForce 利用申請
- 3.API キー設定
順番に実施していきましょう。
1.組織 ID 取得
Salesforce の組織 ID は開発者コンソールから取得できます。まずは以下の図のように右上の歯車マークのメニューから「開発者コンソール」を選択します。

次に、開発者コンソールの「Query Editor」タブの画面キャプチャの①の位置に以下のクエリを書き、「Execute」ボタンをクリックします。そうすると、③の位置に組織 ID が表示されます。これをコピーしましょう。
SELECT Id FROM Organization

2.LGForce 利用申請
手順 1 でコピーした組織 ID を使って、以下のページで利用申請します。Trial プランは無料で申請できるので、まずは無料で申請してみましょう。

Trial プランの場合は、送信後に API キーが発行されます。

3.API キー設定
カスタム表示ラベル「LGF_API_KEY」の値の欄に、手順 2 で入手した API キーを入力します。

これで利用申請の反映は完了です。
5.LGForce の使用方法
準備ができたので、PDF を作成してみます。設定したオブジェクトのレコードの詳細画面に作成したアクションが表示されていると思いますので、それをクリックすると PDF の生成とダウンロードが始まります。

無事に項目にレコードの値が差し込まれていますね。

まとめ
LGForce を使って、Salesforce のレコードから PDF を生成できました。日本語の出力も問題ありません。
今回は基本的な使い方のみご紹介しましたが、応用次第でいろいろな場所に組み込めるものになっていますので、次回以降の投稿でご紹介していきます。