Salesforce専用ドキュメントソリューション
PDF Butler / SIGN Butler / COLLABORATION Butler / BULK Butler について学ぶ

アカデミー

アカデミーでは、Butler製品(PDF Butler・SIGN Butler・COLLABORATION Butler・BULK Butler)の使い方を学ぶことができるコンテンツを掲載しております。

CloudCrossing Japan公式YouTubeコンテンツ(日本語)、および CloudCrossing公式YouTubeコンテンツ(英語)と併せてご参照ください。
※本コンテンツは、Academy(英語版)からの抜粋版となりますので、予めご了承ください。

※CloudCrossing公式YouTubeコンテンツ(英語)は、YouTubeの自動字幕・翻訳機能をご活用ください。

はじめに

PDF Butlerは30日間の無料トライアルが可能です!
AppExchangeで”今すぐ入手”ボタンをクリックしたら、初期設定を行うだけ。たった10分で設定が完了します。
初期設定が完了すれば、今すぐ使い始めることができます!

YouTube:PDF Butlerインストールと初期設定
PDF Butler:AppExchangeページ

わずか15分でサンプルの見積書が作成できます。データソースの作成、ドキュメント変数の配置、テーブル行の繰り返しといった基本操作を理解することができます。以下のYouTube動画と見積書テンプレートを基にご設定ください。

YouTube:はじめてのドキュメント生成
Wordファイル:見積書テンプレート

PDF Butler | ドキュメント変数の種別・設定

ドキュメント変数はテンプレートのドキュメントにSalesforceのデータを取り込み、動的に表示するための機能です。
一般的なテキスト項目の表示からテーブル行の繰り返しまで、様々な表現を簡単に実装できます!

最も利用する変数の種別です。Salesforceの一般的なテキスト項目とドキュメント変数を1対1で置き換えるために、このシングルの変数を使用します。

YouTube: シングル

タイトル型のドキュメント変数を利用することで、生成するドキュメントの名前を動的に設定することができます。

YouTube: タイトル

Microsoft Wordでは、すべての入力は段落(PARAGRAPH)であり、箇条書きや番号付きリストも段落になります。これらを繰り返したり、条件を追加して段落を表示したり非表示にしたりすることができます。

テーブルの行を繰り返すことは重要です。行を繰り返し、製品の概要を示す方法を学びましょう。これらを繰り返したり、条件を追加して行を表示または非表示にすることができます。

行と同じように、表全体を繰り返します。これらのテーブルを繰り返したり、条件を追加してテーブルを表示・非表示にすることができます。

テーブルは PDF Butler のコンテンツコンテナです。データソースがレコードを持っている場合、テーブルのすべての内容を表示します。

行は、PDF Butlerではコンテンツコンテナでもあります。データソースがレコードを持っている場合、行の全ての内容を表示します。

TextAreaフィールドを追加し、思い通りに書式設定できます。TextAreaフィールドは、新しい行に入力や パーツを配置できます。PDF Butlerはこれらを完璧にフォーマットします。



各改行に対して新しい段落
TextAreaは、Enter(キャリッジリターン、改行)を保持できます。通常、TextAreaの改行に対して段落内改行を行いますが、この設定により、TextAreaの改行ごとに新しい段落を作成します。

レコードの処理、Paragraphs・TableRow・Tablesの表示/非表示を複雑な条件で指定できます。

SINGLE ConfigTypes は素晴らしいものですが、時にはいくつかのロジックが関係し、どのフィールドまたは静的テキストを表示するかについてより多くの制御が必要な場合があります。例えば、商品名や説明文の翻訳に複数のフィールドがある場合、言語に応じて適切なフィールドを使用したい場合です。

Microsoft Word文書内のセクションは、縦横の切り替え、ヘッダー・フッターの変更などをサポートします。PDF Butlerを使用すると、これらの完全なセクションを表示または非表示にすることを選択できます。

Salesforceからドキュメントに画像を動的に読み込めます。製品などのレコードに関連付けられます。複数のレコードを1つのレコードに関連付けることも可能です(例:ケース)。また、超複雑な処理は、APEXを追加することで思い通りにできます。

 商品画像(複雑ではない)     商品画像テンプレート    ケース画像(やや複雑)     ケース画像テンプレート     ロゴ画像 (非常に複雑)    プレースホルダー画像    画像サイズ最適化 
メールに画像を使用する場合に、Salesforce の「ファイル」から取得した画像の URL を PDF Butler に渡して、メールクライアントがメールを正しく表示できるようにする方法について説明します。

いくつかの Mergefield は、例えば表や行のように、ドキュメント内の構造を識別するためだけのものです。ドキュメントが生成されたとき、これらのフィールドはもう表示されません。そのため、これらのフィールドは SINGLE ConfigType で置き換えられることはありません。 もちろん、生成された文書でこれらを見たくありません。 PDF Butlerは、マージフィールドを完全に制御することができます。このレッスンでは、MergeFieldsの削除を制御する方法を紹介します。

ドキュメントにバーコードを出力したい場合。入力されたデータを使って、バーコードやQRコードを生成できます。様々な種類がありますが、有名なのはCODE128とQRです。

SFDCのリッチテキストフィールドを扱えます。これらのフィールドは、ドキュメントに組み込むことができるHTMLスニペットです。 このビデオでは、ドキュメントにそれらを追加する方法と、保持したいスタイルとクラス(HTMLであることを忘れないでください)をより具体的に定義する方法を紹介します。

SFDCのリッチテキストフィールドは、画像を表示することができます。私たちは、リッチテキストピクチャーの使用をあまり好みませんが、サポートしています。 PDF Butlerは、堅牢で強固な方法でリッチテキストピクチャをサポートする唯一のソリューションであるかもしれません。 もし、リッチテキストピクチャーを使いたい場合は、support@pdfbutler.com に連絡して、私たちの無料アドオンを入手してください。ご連絡の際は、PDF Butlerのユーザー名とOrgIdを必ずお知らせください。 Actionableで使用するクラス:ActionablePDFButler_Actionable_RichTextPics



複数のリッチテキスト画像を処理する必要がある場合、SFDCの制限にかかることがあります。PDF Butler Image Processorは、SFDCの制限を回避し、リッチテキスト画像を処理できます。 契約内容によっては、追加費用が発生する場合がありますので、アカウントマネージャーにご確認ください。

  1. Actionableで使用するクラス:
    PDFB_Act_RichTextPicsByUrl
  2. Actionableの “When”を確認: データソースの後(BEFORE_BUT_AFTER_DATASOURCES)であることを確認してください。
  3. KeyValue DataSourceのフィールド:
    – pdfbutler_parentId
    – pdfbutler_url
TABLE_COLUMN_REMOVERを使用すると、テーブルの特定のカラムの表示/非表示を指定できます。 例えば、割引がないときに割引カラムを非表示にしたい場合、問題なく実現できます。
このオプションが無効になっている場合、テクニカルサポート(support@pdfbutler.com)までご連絡いただければ、無料で有効に設定変更いたします。

再利用可能なMicrosoft Wordのテンプレートを追加し、製品シートや利用規約などのドキュメントを別々に管理するなど、さまざまな活用方法があります。

Salesforceに数式項目を作成することなく、四則演算を行いたい場合、関数型の変数が利用できます。

YouTube: 関数(シングル)

データのブロックを複製したい場合、TABLEだけでなくCONTENT_CONTROLLERでも可能です。



Microsoft Wordの「開発者」メニュー項目を有効にする:
「開発者」タブを表示する
テーブルの複数行を複製する場合は、このConfigTypeを使用します。

これらのConfigTypesは、親子(入れ子の)DataSourceを持つ複雑なセットアップで使用します。
CONTENT_CONTROLLERは、他のCONTENT_CONTROLLERの子にすることが可能です。 ここでは、ROWS_CONTROLLERがCONTENT_CONTROLLERの子である例を説明します。
これは非常に複雑な例ですが、DataSourceとConfigTypesを組み合わせたり、入れ子にすることの有効性について、よく理解できるはずです。

テーブルの列を繰り返し表示する機能です。 また、テーブルの列と行の両方を繰り返すことができる複雑なカラムリピーターもあります。詳しくは、テクニカルサポート(support@pdfbutler.com)までお問い合わせください。

SIMPLE COLUMN REPEATER ドキュメント
大文字、小文字、頭文字を大文字にするなどの書式設定が可能です。

PDF Butler | データソース(DataSource)の設定

DataSource は、Salesforce からデータを取得する方法を指定するだけでなく、データの定義も指定します。
デモドキュメントおよび画像プレースホルダーをダウンロードのうえ、設定方法をご確認ください。
SFDCから正確に1行を選択します。これは主に、作業中のレコードに関連する行です。見積書、商談、ケースなどです。

複数のレコードを選択します。主に、作業中のレコードに関連するレコードを選択します。例:商談商品、見積明細行、納入商品など。

Translation Workbenchから選択リストに関する翻訳を直接取得できます。

Salesforceのドキュメント、ファイル、または添付から、ロゴや サムネイルなどの画像を使用できます。

複雑なデータモデルでデータを選択できます。これは、PDF Butlerの最も強力な機能の一つですが、理解するのは大変です。ネストされたDataSourceについて、解説します。

YouTube:データソースの親子関係

Salesforceのロールアップサマリー(積み上げ集計)は素晴らしいですが、利用できない場合や、残っていない場合があります。そんな時、私たちがお役に立ちます。

DataSource をコントロールできます。独自のSOQLを作成し、Salesforce.comの能力をフルに活用できます。
GROUP BY、AVG/SUM/MIN/MAX/LIMIT…、複雑なWHERE句などを利用できます。

APEXで独自のActionableを簡単に実装するKEYVALUEの設定について解説します。

ドキュメントのダウンロードはこちら
時には、特定のデータを文書テンプレートにハードコーディングする代わりに、再利用する方が簡単な場合があります。このような場合には、静的な値を使用することができます。例えば、会社の住所、人名などです。これらのデータを管理しやすく、再利用しやすい静的データソースに保存して、複数のテンプレートで使用できます。

時には、大量の画像を読み込む必要があります。この場合、画像はSalesforceにロードされるのではなく、直接PDF Butlerにロードされる点が特徴です。これにより、Salesforceの制限を回避し、大量の画像(最大300枚)を高速に読み込むことができます。PDF Butlerは、生成速度を最適化するために、画像を同時に読み込むことができます。

既存のDataSourceから新しいDataSourceを作成することで、Salesforceからデータを1回選択するだけでよくなり、パフォーマンスが向上します。

 Filtered DataSources  
 Filtered Child DataSources 
PDF ButlerでReport Dataを使用する。

PDF Butler | ドキュメント設定(Doc Config)

PDF Butlerのドキュメント設定(Doc Config)で利用できる各ドキュメントタイプについて概要を説明します。

Microsoft Wordからスタートして、PDFまたはMicrosoft Wordドキュメントを生成します。

  DocConfig email
再利用可能なMicrosoft Wordのテンプレートは、製品情報や 利用規約などのドキュメントを別々に管理することができ、さまざまな可能性を持っています。

Salesforce のデータを使って Excel (XSLX) のドキュメントを生成することができます。

YouTube:Excelの生成

パンフレット、利用規約などの静的PDFファイルを使用して、PDF Butler の処理で使用できます!

メール送信のプロセスを自動化し、ドキュメントを自動的に送信します。


  自動メール送信

  DocConfigメール

企業や関連会社、行政機関などのPDFドキュメントを再利用します。これらのPDFドキュメントにCRMのデータを事前に埋め込んで、最適なユーザーエクスペリエンスを提供します。

CSV(Character Separated Values)ファイルの生成方法について説明します。
※日本では、CSVといえばカンマ区切りが主流ですが、ヨーロッパなどでは小数点にカンマ(,)を使用することなどから、セミコロン(;)を用いるケースもあり、その他にもタブ区切りやスペース区切りなど、何らかの文字区切ったテキストファイルをCharacter-separated valuesといいます。

PowerPointファイルを生成する方法を紹介します。

PDF Butler | FAQ

お客様からのよくあるご質問などをまとめたFAQコンテンツです。
PDF Butlerのサポートは、すべてお手伝いすることです。
そのため、最良の支援方法は、あなたの組織(Org)にアクセスすることです。
ユーザーを作成する必要はなく、一定時間だけアクセスを許可することができます。これにより、私たちはあなたの質問を確認することができます。
“CloudCrossing サポート”にログインを許可する必要があります。これは、PDF Butler製品を開発している当社の社名です。



代理ログインの設定手順(日本語マニュアル)
Salesforceでは、ライセンスの管理を非常に簡単に行うことができます。 Setup => Installed Packages => PDF Butler => Manage Licenses (Button)でライセンスを割り当てることができます。

このエラーは悩ましいですが、Salesforce は機密情報には保護されたカスタム設定を使用するのがベストプラクティスだと言っていますが、新しい権限を作成してしまい、ISV パートナーがそれを自動的に権限設定に追加することを許可してくれません。 申し訳ありませんが、ご自身で設定する必要があります。 システム権限 “View all Custom Settings(すべてのカスタム設定の表示 )”を確認してください。

もちろんです。但し、ドキュメントの生成はいつでも可能ですが、DocConfigsを設定したい場合は、Scratch Orgユーザーのパスワードを作成し、ブラウザからログインする必要があります。 そうしないと、次のようなエラーが表示されます。

“Oops, there was an error rendering Canvas application
(Canvasアプリケーションのレンダリングにエラーが発生しました)”
または
“Your Browsing session has ended or is invalid
(ブラウズセッションが終了したか、無効です)”

sfdx force:user:password:generate –targetusername でパスワードを生成することができます。
sfdx force:user:display -u ” を実行すると、パスワードを再び見ることができます。
IDE(例えばVSCode)を使ってorgを開くと、エラーが出ます。設定ページを開くと、”Your browsing session has ended or is invalid “というエラーが表示されます。

Cookieの設定で「サードパーティのCookieをブロックする」が設定されている可能性があります。

もちろん可能です。さらに、それをサポートするコンポーネントも用意しています。ビデオをご確認ください。 Class: PDFButler_LibraryFiles

もちろん可能です。標準、カスタム、そしてマネージドパッケージフィールドのフィールドを暗号化するためのShield Platform Encryptionは完全にサポートされています。 全体として、暗号化されたフィールドをPDF Butler DataSourceに追加することができます。ローミングユーザーのすべてのセキュリティと権限は、データを返す前にSalesforceによってチェックされます。つまり、そのユーザーがデータにアクセスできる場合、ドキュメント内では暗号化されていない状態で表示されます …. つまり、ユーザーがデータにアクセスした場合、そのデータは暗号化されていない状態でドキュメントに表示されます。 弊社はSalesforceのプラットフォームと完全に連携しており、Salesforceの機能および制限を意味します。詳しくはこちらの記事をご覧ください。

  Shield Platform Encryption の一般的な考慮事項

PDF Butlerには、ADMINパスワードとUSERパスワードの2つのパスワードがあります。どちらも登録時に送信されるメールに記載されています。メールに件名は、”PDF Butler registration completed”です。
新しいパスワードが必要な場合でも、問題ありません。
ビデオをご確認ください。

DataSourceで使用するカスタム変数の設定Actionableで問題なく追加できます。ビデオをご確認ください。

Salesforce がお客様のドメイン名からメールを送信することを許可していないためです。 例えば、お客様のドメインが「xyz.com」で、営業担当者のメールアドレスが「igor.stuyver@xyz.com」である場合。Salesforce の自動化されたプロセスで、顧客の 1 人にメールが送信されます。
そこで、Salesforceからメールが送信されますが、メールの送信元アドレスは「igor.stuyver@xyz.com」です。送信元サーバーがドメイン「xyz.com」のものではないため、これはSPAMとみなされます。もし、誰でもあなたのドメインからメールを送ることができたら…フィッシングはとても簡単になりますね。
では、Salesforceがあなたのドメインからメールを送信できるようにするには、どうすればよいのでしょうか?
Salesforceの管理者とドメインの管理者が一緒になって、わずか10分で設定できます。
以下の記事とビデオを参照してください。

 DKIM (Domain Keys Identified Mail)

 SPF (Sender Policy Framework)

お問い合わせ

PDF Butler製品に関するお問い合わせは、以下のWebフォームよりお気軽にご連絡ください。