帳票DX for Salesforce(document DX) リリースノート2024/10/24 パッケージ「v1.102.0」を作成しました。機能追加既存機能の調整全バージョンに適用する変更コミュニティユーザ向けの設定について2024/09/04 パッケージ「v1.93.0」を作成しました。2024/08/01 パッケージ「v1.91.0」を作成しました。2024/07/31 パッケージ「v1.90.0」を作成しました。機能追加既存機能の調整2024/07/02 パッケージ「v1.81.0」を作成しました。2024/06/27 パッケージ「v1.80.0」を作成しました。2024/05/22 パッケージ「v1.79.0」を作成しました。2024/05/08 パッケージ「v1.77.0」を作成しました。2024/05/08 パッケージ「v1.76.0」を作成しました。2024/04/24 パッケージ「v1.75.0」を作成しました。2024/04/23 パッケージ「v1.74.0」を作成しました。2024/04/23 パッケージ「v1.73.0」を作成しました。2024/03/18 パッケージ「v1.68.0」を作成しました。v1.58.0以降へのアップデートの前に以下を確認して下さい。機能追加既存機能の調整2023/11/06 パッケージ「v1.51.0」を作成しました。2023/10/02 パッケージ「v1.43.0」を作成しました。2023/08/31 パッケージ「v1.35.0」を作成しました。2023/08/04 パッケージ「v1.31.0」を作成しました。2023/07/20 パッケージ「v1.28.0」を作成しました。2023/07/14 パッケージ「v1.27.0」を作成しました。2023/05/25 パッケージ「v1.17.0」を作成しました。2023/05/19 パッケージ「v1.16.0」を作成しました。2023/05/10 パッケージ「v1.15.0」を作成しました。2023/04/25 パッケージ「v1.14.0」を作成しました。2023/04/24 パッケージ「v1.13.0」を作成しました。2023/04/19 パッケージ「v1.12.0」を作成しました。2023/04/18 パッケージ「v1.11.0」を作成しました。2023/03/15 パッケージ「v1.6.0」を作成しました。
「連携履歴」の「ログ取得」機能が自動的に稼動する機能を追加しました。
15分毎に連携履歴のレコードを一括更新します。以下の条件に該当するレコードが更新対象になります。
「ステータス」が、「実行中」あるいは空欄のレコード
「実行日」の降順で並べて、先頭から50件に該当するレコード
最新版をインストールするのみでは自動更新は稼働しません。インストール後に「連携履歴」タブをクリックし、レコードを何も選択せずに「ログ取得」ボタンをクリックして下さい。以後、15分毎に自動的に上記条件で一括更新を行います。
「連携履歴」タブ内で、レコードを何も選択せずに「ログ取得」を実行する事で、15分毎の自動実行を待たずに、即時に一括更新を実行する事ができます。次の自動更新は「ログ取得」ボタンを押してから15分後になります。
レコードを選択して「ログ取得」をクリックした場合は、従来通り、選択したレコードのみが更新されます。
15分毎に自動実行はApexジョブを利用しています。Apexジョブ名は「D3WorkerLogAcquisitionScheduler_*」です。実行すると、連携履歴を一括更新した後に、15分後に再度実行するApexジョブが自動的に登録されます。登録されたApexジョブをキャンセルしたい場合は、開発者コンソールを開き、Ctrl+Eで「Enter Apex Code」を開き、以下のコードを実行して下さい。自動実行のキャンセルは例外的な状況でしか必要が無いと考えており、これを実行するボタンは設けておりません。
1docutizexa.D3WorkerLogAcquisitionBatch.cancelReservedApexJob();
従来は「PDF結合」と「エラー条件」、「出力後更新処理」を併用不能でしたが、併用可能になりました。
これに伴い、「ボタン生成」画面と「出力定義作成」画面の「エラー条件」タブ内に「一部のレコードにエラーがあっても処理を実行する」のチェックボックスを追加しました。
チェックされている場合:「エラー条件」タブの条件に該当しないレコードは処理する。
「エラー条件」タブの条件をレコードのフィルタリング条件として利用する場合はこちらを利用します。
「出力後更新処理」は、「エラー条件」に該当しないレコードだけが更新対象になります。
チェックしない場合:「エラー条件」タブの条件に該当しないレコードが1件でも見つかった場合は、一切処理を実行しない。
一切エラーが無い場合にのみ処理を実行したい場合はこちらを利用します。
このチェックボックスは、単票かヘッダー明細型、かつ、(リストボタン あるいは 出力定義生成時)にのみ活性になります。
ボタン生成の場合は、生成するVisualforcePage内のJavaScript内の以下コード部分が書き換わります。生成後に当該箇所の値を書き換えて振る舞いを変更する事も可能です。意図的に文字列値で指定しています。真偽値で指定しないようご注意下さい(シングルクォーテーションは残して下さい)。
xxxxxxxxxx
11var filterMode = 'true';
「出力定義」を生成する場合、「追加のパラメーター」のJSON内にfilterMode 要素を出力します。生成後に直接値を編集することでも挙動を変更する事ができます。
「ボタン生成」画面にて、「エラー条件」タブでエラー条件を指定した上で、ボタンを生成した場合、JavaScript上で先に処理対象レコードのエラー有無を確認するコードを生成するように変更しました。
既存のボタンの挙動は変わりません。新しく作成したボタンのみ当変更が反映されます。
詳細ページボタン、リストボタンを問わず、新規作成するボタンには当変更が適用されます。
処理の実行ボタンをクリックすると、生成処理を行うための子ウィンドウを開く以前にエラーチェックを行います。エラーとして判断されたレコードを除外して後続処理を進めます。
残存するレコードが0件の場合は「実行可能なレコードがありません。」のダイアログを表示し、後続処理を行いません。
残存するレコードが1件以上であっても、上記の「一部のレコードにエラーがあっても処理を実行する」をチェックせずに生成したコードの場合は、「エラーがあるため実行しません。」のダイアログを表示し、後続処理を行いません。
選択リストの値をラベルに読み替えて獲得する機能を追加しました。
「基本設定」画面の「出力方法」欄を「オプション」に改名しました。
「基本設定」画面の「オプション」内に「選択リスト」の欄を追加しました。設定可能な値は以下の通りです。
API参照名で取得
:既定値。従来通り、選択リスト項目をAPI参照名の値を獲得します。
ラベルで取得(数式もラベルで判定)
:選択リストの値をラベルで獲得します。
数式内で値を獲得する際にもラベルで獲得されるため注意が必要です。
抽出条件を指定する欄については従来通りAPI参照名で値を照合します。
コミュニティユーザ向けの権限セット「document DX Community User Permission Set」を追加しました。
プロファイルが「Partner Community」や「Customer Comunity Login User」等のユーザに権限セットを付与する場合は当権限セットを利用して下さい。権限が不足している場合は、当権限セットの複製を作成して、それを加工して利用して下さい。
後述の「コミュニティユーザ向けの設定について」の説明を参照して下さい。
活動履歴を作成する際に「期日」を現在日付で更新する機能を追加しました。
Salesforceの「活動タイムライン」には、「期日」が入力されていないと挙動が不正になる問題があるため、当機能を加えています。
カスタム設定「document DX Static Setting」に、「活動期日指定」(FillTaskActivityDate__c)のチェックボックスを追加しました。
この項目をチェックした場合、活動履歴を作成した際に「期日」を現在日付で更新します。
「帳票DX for Salesforce」の新規インストールの際は「活動期日指定」をチェックした状態にします。アップデートの場合はチェック状態を変更しません。
主オブジェクトとして選択可能なオブジェクトの制限を解除しました。
直近の制限は当リリースノート内の「v1.11.0」の説明を参照して下さい。当制限を解除しました。
ボタン生成を行う事ができないオブジェクトが存在します。以下のSOQLで該当するオブジェクトで、Attachment, Calendar オブジェクト等が該当します。 「帳票DXアクション」によって出力等を行って下さい。
xxxxxxxxxx
11select DeveloperName from EntityDefinition where IsLayoutable = false
該当するオブジェクトは、オブジェクト選択画面にて、オブジェクト名の隣に「i」アイコンが表示されます。
マウスオーバーすると「ボタンを作成できないオブジェクトです」と説明が表示されます。
選択すると、「主オブジェクト「添付ファイル」にボタンを作成する事はできません。「出力定義作成」から「帳票DXアクション」を利用する等して代替する必要があります。」の文言の警告を表示します。
「出力定義作成」画面で、主オブジェクトにファイルの添付が不能の場合は「出力元レコードに添付」を選択できないように変更しました。
「出力定義作成」と「ボタン生成」画面にて、主オブジェクトにて活動履歴の作成が許可されていない場合は「活動履歴作成」のチェックボックスを非活性とするように変更しました。
「設定」一覧で画面の横幅を縮めると操作用ボタンを押せなくなる問題を修正しました。常に全ボタンを表示します。
設定の名前内に含める事を禁止する文字を変更しました。
変更前:「\」「/」「<」「>」
変更後:「\」「/」「<」「>」「#」「:」「*」「?」「"」「|」「,」「;」「+」「%」「&」「'」「[」「]」 、制御文字、両端の空白文字
「設定」の名前を命名する際に、自動的に以下の調整を行うように変更しました。
空白文字(全角スペース含む)とゼロ幅スペースを、半角スペース(U+0020)に置換
文字列の両端の空白文字を除去
「\」「/」「<」「>」「#」「:」「*」「?」「"」「|」「,」「;」「+」「%」「&」「'」「[」「]」を全角文字に置換する。
制御文字(U+0000~U+001F、U+007F~U+009F の範囲の文字)を除去
NFCでUnicode正規化
活動履歴を作成する際に、「コメント」欄に「対象レコード群」を追加して出力するように変更しました。
「ボタン生成」画面や「出力定義作成」画面でのPDF結合処理に関して以下の変更を加えました。
「PDF統合」の表現は「PDF結合」に変更しました。
「PDF結合」の実施有無は「ボタンを設置する場所」や「出力方法」で指定するよう変更しました。
認証情報登録画面である「OPROARTS(帳票DX)」のリンクが適切に動作するように修正しました。
「基本設定」画面について「設定編集」と表記している箇所がありました。「基本設定」の表現に統一しました。
zipファイルとして生成ドキュメント群をダウンロードする場合、合計ファイルサイズが100MBを超過する場合は処理を打ち切るよう変更しました。
コミュニティユーザを作成しExperience Cloudからドキュメント出力等を行うためには以下の設定が必要になります。(2024/11/29記載)
権限セット「Customer Comunity Login User」に該当ユーザを割り当てる。
プロファイル「Customer Community Login User」を開き、「コピー」ボタンを押して複製を設ける。複製に対して以下の変更を加える。
システム管理者権限>「API の有効化」をチェックする。
一般ユーザ権限>「ToDoの編集」をチェックする。
カスタムオブジェクト権限>「OPROARTSユーザ(帳票DX)」の「すべて表示」をチェックする。自動的に「OPROARTSユーザ(帳票DX)」の参照、「OPROARTS(帳票DX) 」の参照にもチェックが入る。
カスタムオブジェクト権限>「設定」の「すべて表示」をチェックする。自動的に「設定」の参照にもチェックが入る。
該当ユーザに対して複製のプロファイルを割り当てる。
明細の件数が200件を超える場合に「Aggregate query has too many rows for direct assignment, use FOR loop」のエラーが生じる場合がある問題について対策しました。
項目選択画面にて表示できるD³Workerのワークの件数の上限を、1000件→999件に変更しました。
インストールの際に、カスタム設定「document DX Static Setting」内の「XA Template Info URL」(XATemplateInfoURL__c)が空欄の場合は既定値で更新するように変更しました。
既定値は「https://xa.oproarts.com/docutize-bridge/getTemplateInfo」です。
専用環境をお持ちの場合はドメイン部分(xa.oproarts.com)を適切な値に書き換えて下さい。
PDFの「設定」を作成する際に、XAデザイナーにて作成済の既存のテンプレートを流用可能になりました。また、PDFをインポートしてテンプレートを作成する事が可能になりました。
PDFの「設定」の詳細画面を開き「レイアウト」ボタンを押した際に、テンプレートが未作成の場合はダイアログが開くようになりました。ダイアログでは以下を選択する事が可能です。
白紙から作成:従来通りの動作です。白紙のテンプレートを作成します。
ローカルのPDFファイルから作成:任意のPDFファイルを元にテンプレートを作成します。
「作成」ボタンクリック後に表示されるダイアログにて取り込み対象ページを絞り込む事が可能です。
XAテンプレート一覧:一覧の中から任意のテンプレートを指定できます。指定したテンプレートの複製を作り、その複製を「設定」に紐づくテンプレートとします。
任意のバケット内の、任意のフォルダ内のテンプレートを指定する事が出来ます。
PDFを複数レコードまとめて出力する場合に、PDFファイルを統合して出力する事が可能になりました。
「出力確認」画面の場合、レコードを選択して「出力確認」ボタンを押した後で、「PDFファイルを統合」のチェックボックスをチェックする事で、複数のレコードで生成したPDFファイル群を1ファイルに結合して出力する事ができます。
「ボタン生成」「出力定義作成」画面の場合、「ボタン設定」の「その他」のカテゴリ内で「PDFファイルを統合」をチェックする事で機能を利用できます。
当機能を利用する場合、「エラー条件」「出力パターン」「出力後更新処理」を利用する事は出来ません。
ボタン生成時に作成されるVisualforcePage内のJavaScriptや、出力更新処理の定義内で対応する項目は「mergeMode」になります。想定する設定値は以下の通りです。出力形式がPDFの場合にのみ当設定は有効になります。
'none':従来通り。PDFファイルは1レコードにつき1ファイル生成する。
'engine':複数のレコードを選択した場合も、1ファイルのPDFにまとめます。
リストビューから複数のレコードを処理する場合に、それらを処理する順番を指定可能になりました。
「ボタン生成」「出力定義作成」画面に「順序」タブを追加しました。ここで順序を指定できます。
「ボタン設定」で「リストボタン」を選択している場合に、当機能を利用する事ができます。
項目選択画面での「表示順序」の指定より、当機能での設定を優先します。
「帳票DXオブジェクトアップグレード」機能を追加しました。
Salesforceのアプリケーションランチャーにて「帳票DX」を検索する事でヒットします。
Salesforceにパッケージの新しいバージョンをインストールする際に、選択リスト項目の選択肢は自動的に更新されません。当機能を利用する事で更新する事ができます。
「登録」ボタンをクリックすると、当バージョンでは以下の更新を実施します。
「帳票DXアクション」オブジェクトの「サービス」項目に対して、以下の変更を加えます。
選択リスト値「ViewFramer(XA)」を登録します。
選択リスト値「viewframer」の表示を「ViewFramer(OPROARTS)」に変更します。
これによって、「帳票DXアクション」によってViewFramerに自動的な連携を行う際に、XA用ViewFramerとOPROARTS用ViewFramerを容易に切り替えて利用する事が可能になります。
PDFの「文書のプロパティ」に設定する値を指定可能になりました。
ボタンを生成した際に作成されるVisualforcePage内のJavaSciprtに対して以下のパラメーターを追加するか、あるいは、出力定義の「追加のパラメーター」のJSONに以下の属性を追加する事によって、任意の値を指定する事が可能になりました。
「出力/連携」欄で「PDF」を指定した場合にだけ機能します。それ以外の場合は、指定があっても無視します。
DIT:PDFの「文書のプロパティ」の「タイトル」に表示させたい文字列を指定します。
DIA:PDFの「文書のプロパティ」の「作成者」に表示させたい文字列を指定します。
DIS:PDFの「文書のプロパティ」の「サブタイトル」に表示させたい文字列を指定します。
DIK:PDFの「文書のプロパティ」の「キーワード」に表示させたい文字列を指定します。
「設定」をコピーする際に、「基本設定」画面の「出力/連携」欄を変更可能にしました。
「出力/連携」欄は、PDF/Excel/Word/PowerPointの出力、あるいはD³Worker連携 を選択する欄です。
従来はコピーする際に当項目を変更する事ができませんでした。
「出力/連携」欄の選択状態がコピー元と異なる場合は、テンプレートを複製しません。新規作成が必要になります。
「設定」を複製する際の名前のデフォルトを変更しました。
変更前:(空)
変更後:コピー元の「設定」の名前 +「_copy」
Salesforce上の画像を獲得する際の最大サイズを緩和しました。
変更前:2,097,152byte(2MiB)
変更後: 104,857,600byte(100MiB)
処理対象とするファイルのサイズが 6,000,000byte(約5.7MiB) を超過する場合に Saleslforce の REST API を利用します。その場合、1ファイルにつき1回のAPIコールが発生します。Salesforceのガバナ制限にご注意ください。
生成するドキュメントの最大サイズを緩和しました。
変更前:6,000,000byte(約5.7MiB)
変更後:Saleslforce の REST API で獲得可能な上限まで。
処理対象とするファイルのサイズが 6,000,000byte(約5.7MiB) を超過する場合に Saleslforce の REST API を利用します。その場合、1ファイルにつき1回のAPIコールが発生します。Salesforceのガバナ制限にご注意ください。
ボタンや出力定義にてエラー条件を指定する際に、値が空であるかを判定する事を可能にしました。
ボタンや出力定義の作成画面の「エラー条件」タブにて、「比較する値」を空欄にする事ができず、値が空であるかを判定する事が出来ませんでした。「比較」列で「一致しない」か「一致する」を選んでいる場合は、「比較する値」が空欄でもエラーとしないよう修正しました。
「ボタン生成」「出力定義作成」画面にてエラー条件を指定する際に、項目の型が「選択リスト」や「複数選択リスト」の場合の操作性を改良しました。
変更前は、テキストボックスにて値を直接する必要がありました。
変更後は、リストボックスやプルダウン内に、表示ラベルによって項目を選択できるようにしました。
対象項目が「複数選択リスト」型の場合、あるいは、「比較」の方法が複数の値と照合する方法である場合、Ctrlキーと同時にクリックする事によって複数の項目を同時に選択する事が可能です。
「項目編集」ボタンを押した際に表示する「項目選択 / 出力詳細」画面にて、「抽出条件」欄の表示を調整しました。
1番目の明細オブジェクトの場合、「ID選択/該当分全件」の選択肢の表示を以下の通りとしました。
一覧型の場合:表示する。
単票型の場合:表示しない。常に「該当分全件」が抽出対象となるため。
ヘッダー明細型の場合:表示しない。常に「該当分全件」が抽出対象となるため。
2番目の明細オブジェクトの場合、「ID選択/該当分全件」の選択肢は表示しないよう変更しました。常に「該当分全件」が抽出対象となるためです。
レイアウト新規作成をキャンセルした場合、「レイアウト」ボタンをすぐに押せるようにするよう修正しました。
「設定」をインポートする際に、ファイル名に基づいて「設定」の名前の案を設定しますが、その際にUnicode正規化をNFCで行うように変更しました。
macにて「設定」をエクスポートすると、濁点や半濁点が独立した文字としてファイル名に反映され、エクスポート元の「設定」の名前と乖離が生じてしまうため。
Office系ファイルを出力する「設定」で「レイアウト」ボタンを押した際の初回の動作を変更しました。
変更前:「Officeアドインを利用しますか?」の選択肢が表示される。
変更後:「Officeアドインが表示されない場合」のボタンを表示する。
デフォルトではOfficeアドインを利用するものとして扱います。Officeアドインを利用できない環境で当システムをお使いになる場合は、「Officeアドインが表示されない場合」ボタンをクリックします。「はい」「いいえ」の選択肢が表示されるので、Officeアドインの利用可否を選択して下さい。
「設定」の名前として、半角の「<」「>」の利用を禁止しました。
新規に作成する「設定」にのみ当制限を適用します。既に存在する「設定」はそのまま利用できます。
現バージョンで「設定」の名前として禁止している文字は「/」「\」「<」「>」になります。
権限セットを調整しました。
document DX General User Permission Set
「出力定義」タブ、「帳票DXアクション」タブを非表示にするよう変更しました。
document DX General User Permission Set
「出力定義」タブを常に表示するように変更しました。
新規作成直後のOfficeテンプレートを開いて、Officeアドイン版Document Designer for Officeにて「アップロードフォームを開く」ボタンをクリックした場合に、適切にログインする事が出来ない問題を修正しました。
項目選択画面にてチェックボックスが表示されない事がある問題を修正しました。
XAに連携するViewFramerに対して帳票DXアクションでリクエスト可能になりました。
「帳票DXアクション」のレコードを、「ViewFramer」のレコードタイプで作成し、かつ、「サービス」欄で「ViewFramer(XA)」(xa_viewframer)を選択する事で、XAに連携するViewFramerに対してリクエストする事が可能になりました。
当対応に伴い、従来の「ViewFramer」は、「ViewFramer(OPROARTS)」に表記を変更しました。こちらは従来通りの振る舞いとなり、OPROARTSに連携するViewFramerに対してリクエストします。
既に過去のバージョンがインストールされている組織に当バージョンをインストールしても、自動的に「ViewFramer(XA)」(xa_viewframer) が登録されません。手動で追加する必要があります。
設定>オブジェクトマネージャー>帳票DXアクション>項目とリレーション>サービス を開きます。
「値」の欄に「xa_viewframer」が無い場合、「新規」ボタンを押して追加します。
「xa_viewframer」と記入します。
「この選択リスト値を特定のレコードタイプに追加するには、追加したいレコードタイプのチェックボックスにチェックを入れてください。」の欄で、「ViewFramer」をチェックします。
「保存」ボタンをクリックします。
項目名にゼロ幅スペースが含まれる場合であっても、Office上に設置したタグが適切に認識されるように対処しました。
ただし、過去に作成したテンプレートで問題が生じている場合は、項目選択画面で項目を選び直し、かつテンプレート上にタグを置き直して更新する必要があります。
「所有者」(OwnerId)フィールドにて、ユーザーオブジェクト固有の項目が選択可能になるよう変更しました。
項目選択画面で、カスタムオブジェクトの「所有者」から「ロールID」の配下の項目を選択して、「保存」ボタンを押すと、「オブジェクトが見つかりません」のエラーが発生する問題について対処しました。「所有者」(OwnerId)フィールドは、「参照関係(ユーザー,グループ)」型ですが、現状はグループオブジェクトが保持するフィールドのみ存在するものとみなされていました。ユーザーオブジェクトが保持するフィールドが指定された場合にも存在するものとして判定するよう対策しました。
ドキュメント生成の際に引用するフィールドに対して項目レベルセキュリティで権限が付与されていない場合のエラーメッセージを変更しました。
変更前:指定されたIDのレコードが見つかりません。(レコードのオブジェクトID)
変更後:参照権限がありません。参照の権限が付与されていない項目が存在します(オブジェクト:(オブジェクト名)
/ フィールド:(問題があるフィールドのAPI参照名)
/ ユーザ:(出力者のユーザー名)
((出力者オブジェクトID)
)。
ドキュメント作成の際に「出力履歴」を作成しますが、その際に「リクエストエンティティ」欄に格納する文字列が許容サイズをオーバーする場合、切り詰めた上で格納するように変更しました。
v1.68.0以降、ALA、XALAでの認証を行えない状態になっていた問題を修正しました。
v1.68.0 にて認証処理の大幅な見直しを行いましたが、その際にALA、XALAでの認証を行えない状態になっておりました。
適切にALA、XALAでも認証できるように修正しました。
親、明細1、明細2にて、同一のオブジェクトを利用できるように変更しました。
項目選択画面で「保存」ボタンを押した際のチェック処理を修正しました。
従来は同一オブジェクトの同一項目を複数箇所で利用している場合にエラーとしていましたが、利用している場所に親、明細1、明細2の違いがある場合はエラーとしないように修正しました。
テンプレートに設定を反映する際に、オブジェクト名が重複している場合は、オブジェクト名の末尾に「(連番)」を付加した上で反映するように変更しました。
ボタンや出力定義にてエラー条件を指定する際に、値が空であるかを判定する事を可能にしました。
ボタンや出力定義の作成画面の「エラー条件」タブにて、「比較する値」を空欄にする事ができず、値が空であるかを判定する事が出来ませんでした。「比較」列で「一致しない」か「一致する」を選んでいる場合は、「比較する値」が空欄でもエラーとしないよう修正しました。
エラーメッセージの調整を行いました。
認証失敗時のエラーメッセージを変更しました。
変更前:CID/UID/UPWに誤りがあります。
変更後:認証が失敗しました。(詳細なメッセージ)
OPROARTS認証情報が未登録の状態で、エクスポートやインポートを行った際のエラーメッセージを変更しました。
変更前:... 無効なパラメータです。Salesforce関連のパラメータが不正です。 ...
変更後:OPROARTS認証情報が取得できませんでした。認証情報が登録されているか確認して下さい。: (詳細)
v1.58.0 にて大幅な変更が加えられています。v1.58.0 よりも過去のバージョンがインストールされている組織にて、v1.58.0以降のバージョンにアップデートする場合は、以下の変更点について問題が無いかご確認頂く必要があります。
項目の参照権限の有無チェックが厳しくなりました。(2024/05/09記載)
項目を参照する際に、当該項目に対してユーザーが参照権限を持つかを適切にチェックするように変更しました。
ユーザーが属するプロファイル等の項目レベルセキュリティにて適切に権限を付与して下さい。
既に運用している「設定」が存在する場合は、Sandbox組織にて事前に最新バージョンでの動作を確認する事を推奨します。
コミュニティユーザが Experience Cloud サイトを利用する場合の制限が追加されます。(2024/11/29記載)
v1.58.0 より過去のバージョンで作成したボタンについては、そのまま利用できます。ただし過去のバージョンで生成したボタンでの認証の方式は、Salesforce社が非推奨とする方式となりますのでご注意下さい。
v1.58.0 より以降のバージョンで作成したボタンについては、ボタンを実行する度に認証を求められてしまう問題が生じます。以下の対応を加えることで回避する事ができ、Salesforce社が推奨する方式で認証する事が可能になります。
生成したVisualforcePage内のJavaScript内を書き換えます。現在開いているページのURLのドメイン部分が「.my.site.com」で終わる場合はエクスペリエンスサイトでの実行であるとみなして、別の値に差し替えるという内容です。
将来のバージョンではボタン生成の時点で当コードを生成するように変更する見込みです。
以下のコードをDOCUTIZE.BRIDGE.action({
の前に挿入ます。
71 var instanceUrl;
2 if(/\.my\.site\.com$/.test(location.origin)){ // URLのオリジンの末尾が「.my.site.com」の場合、Salesforce Experience Cloud サイトと判断する。
3 var pathname = location.pathname.replace(/(^\/[^\/]+)\/.*/, '$1'); // URLのパス名を「/」で区切った場合の最初の文字列を獲得する。
4 instanceUrl = location.origin + (pathname === '/apex' ? '' : pathname); // デジタルエクスペリエンスのサイト作成時にURL欄に何も指定しない場合は「/apex」になる。その場合は末尾の付加は不要。
5 } else {
6 instanceUrl = '{!JSENCODE(OrgDomainURL)}';
7 }
instanceUrl:('{!JSENCODE(OrgDomainURL)}',
の記載箇所を、以下の2行に置き換えます。
21 // instanceUrl:'{!JSENCODE(OrgDomainURL)}',
2 instanceUrl:instanceUrl,
ログインページの種別を「デフォルトページ」に設定します。
設定>機能設定>デジタルエクスペリエンス>すべてのサイト>(該当のサイト)>ワークスペース
「管理」をクリック
「ログイン & 登録」をクリック
「ログインページ種別」を「デフォルトページ」にする。
「保存」をクリック
カスタム設定「document DX Static Setting」にて「SalesforceFilesに保存」のチェックを外します。
Experience Cloud サイトからドキュメント出力を実行する場合にSalesforceFilesに生成したファイルを保存できない問題があります。将来のバージョンでは保存可能にするように修正する見込みです。
設定>カスタムコード>カスタム設定>「document DX Static Setting」の「Manage」をクリック
「SalesforceFilesに保存」のチェックを解除
Salesforceを代理ログインして利用する場合の制限が追加されます。(2024/05/09記載)
以下の機能を利用する事が出来ません。これらはOAuthで認証するように変更しており、代理ログインを利用している場合はOAuthでの認証を利用できません。
エクスポート
インポート
D³Worker連携:出力確認画面、ボタンでの実行
ドキュメント生成:出力確認画面、ボタンでの実行
「帳票DXアクション」からであれば、従来通り実行可能です。
ただし、「帳票DXアクション」から行えるのは、D³Worker連携と、ドキュメント生成のみです。
v1.58.0 より過去のバージョンで作成したボタンについては、そのまま利用できます。
v1.58.0 より以降のバージョンで作成したボタンについては、生成したVisualforcePage内のJavaScriptを一部書き換える事によって、代理ログインの場合であっても実行可能になります。v1.58.0 より過去のバージョンと同等の認証方式に書き換える方法です。これはSalesforce社が非推奨とする手法となりますのでご注意下さい。
「callback:'/action'」の次の行に、以下の行を追加
xxxxxxxxxx
11, api:['{!JSENCODE($Organization.Id)}','{!JSENCODE($User.Id)}','{!JSENCODE($Api.Session_ID)}','{!JSENCODE($Api.Partner_Server_URL_550)}']
「.url('{!JSENCODE(DocutizebModeratorURL)}')」の記載箇所を、以下の2行に置き換え
xxxxxxxxxx
21//.url('{!JSENCODE(DocutizebModeratorURL)}')
2.url('{!JSENCODE($Setup.docutizexa__DocutizeStaticsSetting__c.docutizexa__OPROARTSDocutizebURL__c)}')
「出力確認」画面と、「URL(カスタムリンク)」形式のボタンで、「ダウンロード」や「ワーク実行」を実行した場合の動作が変わります。
従来は画面上にプログレスバーが表示され、ポップアップウィンドウを表示せずに処理していました。
今後は、ポップアップウィンドウが表示され、そこでドキュメントの生成をリクエストする動きに変わります。「Visualforce(Salesforce アクション)」形式のボタンでドキュメントを出力する場合と同様の動作です。
認証の方式を変更した関係で当変更を加えています。
ドキュメントの生成、D³Worker連携、インポート、エクスポートを行う際に、初回のみ、「アクセスを許可しますか?」の確認が表示されます。「許可」をクリックして下さい。
以後のドキュメントの生成、インポート、エクスポートの際には、自動的に許可されます。
ただし、同一の組織に関して、ブラウザ上に複数のログイン情報が記録されている場合、都度ログインを求められます。
それを避けるためには、ログイン画面の上部にある「○件の保存されたユーザ名」部分をクリックし、利用するユーザを1件のみ残して、他は除去して下さい。
以下の条件を満たす場合に、「スケジュール」を指定したD³Worker連携を行う事が出来なくなります。
以下全ての条件を満たす場合、「出力タイミング」欄の「スケジュール」が選択不能になります。認証の方式を変更した関係で当変更を加えています。
D³Worker連携
「出力確認」画面か、「URL(カスタムリンク)」形式のボタンを利用
「項目編集」画面にて「システム」内の「セッションID」を送信する項目として選択している
カスタム設定「D3Worker API URL」の読込み方法を修正しました。
階層カスタム設定によって、ユーザやプロファイル単位でカスタム設定を設けていて、かつ「D3Worker API URL」に組織の設定と異なる設定を行っていた場合の振る舞いが変わります。
従来は、組織の設定を優先して適用していました。
今後は、ユーザやプロファイル単位で設定された値を優先して適用します。
カスタム設定「Docutizeb Moderator URL」を追加しました。
インストール直後に自動的に値が設定されます。
v1.58.0 の場合は、https://docutize.oproarts.com/docutizeb/oauth
が設定されます。
v1.68.0 の場合は、「OPROARTS Docutizeb URL」の値に沿って、適切な値が自動的に設定されます。
個別ドメインをご利用の場合等、既存の「OPROARTS Docutizeb URL」に標準と異なる値を設定している場合は、値の末尾の「/action」を「/oauth」に書き換えた値を「Docutizeb Moderator URL」に設定して下さい。
例えば、「OPROARTS Docutizeb URL」に
https://[ドメイン名].oproarts.com/docutizeb/action
と設定している場合、「Docutizeb Moderator URL」には
https://[ドメイン名].oproarts.com/docutizeb/oauth
を設定してください。
ヘッダー明細型のD³Worker連携で、「Visualforce(Salesforce アクション)」形式のボタンを生成する際に、パラメーターとして「multiIdRequest」を含めたコードを生成するように変更しました。
multiIdRequest : false、あるいは無指定の場合、親オブジェクト1レコード毎にD³Workerへ連携します。従来の動作です。
multiIdRequest : true の場合、全レコードをまとめて1度でD³Workerに連携します。ボタンを新規生成する際に、今回のバージョンから当パラメーターに true が指定された形で生成されます。
「Visualforce(Salesforce アクション)」形式のボタンを生成する際に、対応するVisualforcePage内のJavaScriptに対して、パラメーターとして「successUrl」を指定するサンプルコードを含めるように変更しました。
successUrl にはURLを指定します。指定されている場合、ドキュメント生成処理やD³Worker連携が完了した後で、指定されたURLへ自動的に遷移します。
生成直後は該当する行がコメントアウトされています。冒頭の「//」を削除して利用して下さい。
当機能は以下の場合に利用できます。
ドキュメント生成系で、かつ「メモ&添付ファイル保存」の場合 (ダウンロード系の場合は利用できません)
D³Worker連携の場合
ボタン生成画面と出力定義作成画面に以下の設定項目を追加しました。
文中の「対応するJSパラメーター」は、「Visualforce(Salesforce アクション)」形式のボタンを生成する際に、対応するVisualforcePage内のJavaScriptに適用されるパラメーターを指します。出力定義を生成する際の「追加のパラメーター」にも同名属性で反映されます。
「添付ファイルの参照先 ID」欄
生成するドキュメントを、指定したオブジェクトIDのレコードに紐づけます。
対応するJSパラメーター:attachTo
「出力定義」に関連する「帳票DXアクション」のレコードを作成する際に「添付ファイルの参照先 ID」で指定する事も可能です。
項目の表示条件は以下の通りです。
D³Worker連携系の場合、当設定項目は表示されません。
ドキュメント出力系(PDF等)の場合
ボタン生成画面の場合
「出力方法」として以下のいずれかを指定した場合に指定可能になります。
メモ&添付ファイル保存
メモ&添付ファイル保存+ダウンロード
出力定義作成画面の場合
「出力方法」として以下のいずれかを指定した場合に指定可能になります。
帳票DXアクションか任意レコードに添付(個別に添付)
帳票DXアクションか任意レコードに添付(複数時zip圧縮)
「添付ファイルの所有者 ID」欄
生成するドキュメントに紐づく添付ファイルやSalesforce Filesのレコードの所有者を誰にするかをオブジェクトIDで指定できます。
対応するJSパラメーター:attachOwnerId
「出力定義」に関連する「帳票DXアクション」のレコードを作成する際に「添付ファイルの所有者 ID」で指定する事も可能です。
項目の表示条件は以下の通りです。
D³Worker連携系の場合、当設定項目は表示されません。
ドキュメント出力系(PDF等)の場合
ボタン生成画面の場合
「出力方法」として以下のいずれかを指定した場合に指定可能になります。
メモ&添付ファイル保存
メモ&添付ファイル保存+ダウンロード
出力定義作成画面の場合
常に表示します。
「ZIPファイル名」欄
zipファイルを生成する際のファイル名を指定する事ができます。
対応するJSパラメーター:zipFileName
拡張子は記載不要です。ドキュメント生成の際に、自動的に「.zip」が付加されます。
#\/:*?"<>|,;
は、ドキュメント生成時に _
に置換されます。
項目の表示条件は以下の通りです。
D³Worker連携系の場合、当設定項目は表示されません。
ドキュメント出力系(PDF等)の場合
ボタン生成画面の場合
「出力方法」として以下のいずれかを指定した場合に指定可能になります。
ダウンロード
メモ&添付ファイル保存+ダウンロード
詳細ページボタンか、リストボタンかは問いません。「出力パターン」タブにて複数の「設定」を組み合わせて出力するように指定した場合、詳細ページボタンであっても複数のドキュメントが生成され、zipファイルが作成されるためです。
出力定義作成画面の場合
「出力方法」として以下のいずれかを指定した場合に指定可能になります。
帳票DXアクションか任意レコードに添付(複数時zip圧縮)
Task(活動履歴)を作成する際に、件名と本文を任意に指定できるように変更しました。
画面上には設定項目を設けていません。生成されたJavaScriptを加工するか、帳票DXアクションにて条件を指定して下さい。
「Visualforce(Salesforce アクション)」形式のボタンを生成する際に、対応するVisualforcePage内のJavaScriptに対して、パラメーターとして以下を指定するサンプルコードを含めるように変更しました。
taskSubject:生成する活動履歴の件名。
taskComment:生成する活動履歴のコメント。
「出力定義」に関連する「帳票DXアクション」のレコードを作成する際に、以下を指定可能にしました。
活動履歴の件名:生成する活動履歴の件名。
活動履歴のコメント:生成する活動履歴のコメント。
ファイル名の字数上限を変更しました。
従来は、拡張子部分を除た最大の字数が、70 でした。
今後は、UTF-8 換算で 250byte以内 になります。
出力確認画面や「URL(カスタムリンク)」形式のボタンから、ヘッダー明細型のD³Worker連携を、複数レコードを選択して実行した場合に、先頭レコードしか処理されない問題を修正しました。全てのレコードを処理します。
「設定」の名前に「/」を含めるのを許容しないように変更しました。
「設定」の新規作成画面と、インポートの際に、名前に「/」が含まれているかをチェックします。
「連携履歴」内の「ログ取得」機能を修正しました。D³Workerの対象ジョブにエンベロープの履歴が1件も含まれない場合の処理を修正しました。
従来は「Attempt to de-reference a null object」のエラーが発生していました。
今後は「D³Workerの該当ジョブにてエンベロープが1件も処理されませんでした。」の内容で「連携履歴.エラーメッセージ」欄を更新します。
「連携履歴.ステータス」を「失敗」に更新するように変更しました。従来は更新していませんでした。
「連携履歴.エンベロープ数」を「0」で更新するよう変更しました。従来は更新していませんでした。
ボタン生成の際に自動生成するVisualforcePage内のJavaScriptについて、window.alert, window.confirm を利用しないように変更しました。
window.alert, window.confirm は、将来的にGoogle Chromeが表示を許容しないように変更される見込みです。
同様の振る舞いをする別の機構を用いるように変更しました。ダイアログの見た目が変化します。
当変更は、当バージョンを適用した後で生成したボタンのみに適用されます。過去のバージョンで生成したボタンの自動的な変更は行いません。過去に作成したボタンのコードについては、手動で変更する必要があります。
ボタン生成の際に、「ボタンを設置する場所」として「リストボタン」を選択して生成した場合、確認ダイアログを表示するコードを生成するよう変更しました。
処理を実行する前に「n件のレコードに対して実行します。」の確認ダイアログを表示します。
このダイアログが不要の場合は、該当するVisualforcePage内の以下の行をコメントアウトして下さい。
xxxxxxxxxx
51var confirmMessage = needCheck ? '{!JSENCODE($Label.docutizexa__ACTION_BUTTON_VF_RUN_CONFIRM)}' : '{!JSENCODE($Label.docutizexa__ACTION_BUTTON_VF_RUN_CONFIRM_MASTER_LIST)}';
2if(!(await OPROARTS.Dialog.confirm(confirmMessage.replace('{0}', ids.length)))){
3window.history.back();
4return;
5}
ボタン生成の際の「出力方法」欄について、一覧型の場合は「メモ&添付ファイル保存+ダウンロード」を選択できないように修正しました。
連携履歴画面の「ログ取得」機能を修正しました。
D³Workerの対象ジョブにエンベロープの履歴が1件も含まれない場合、
従来は「Attempt to de-reference a null object」のエラーが発生していました。
今後は「D³Workerの該当ジョブにてエンベロープが1件も処理されませんでした。」の内容で「連携履歴.エラーメッセージ」欄を更新します。
例外が発生した場合や、エンベロープの履歴が1件も含まれない場合の、連携履歴の更新処理を以下の通り変更しました
「連携履歴.ステータス」を「失敗」に更新するように変更しました。従来は更新していませんでした。
「連携履歴.エンベロープ数」を「0」で更新するよう変更しました。従来は更新していませんでした。
複数ドキュメントを一括して生成する際に、ファイル名が重複する場合は末尾に連番を自動的に付加する事で、重複を避けるように変更しました。
従来はファイル名の重複が生じた場合はエラーが生じていました。以後は出力可能になります。
ファイル名が重複したファイル群のうち、最初のファイルには連番を付加しません。
重複を判定する際に、ファイル名の大文字・小文字の違いは無視します。
重複を判定する際に、拡張子の違いは無視します。
「OPROARTS(帳票DX)」内の「OPROARTSユーザ(帳票DX)」の一覧画面について、件数が多い場合に表示されるページ遷移ボタンが適切に動作しない問題を修正しました。
「項目編集」画面の「項目一覧」に「システム」「組織」「出力ユーザー」を追加しました。
システム:D³Worker連携の場合にのみ表示します。
D³Worker連携にて、「 - セッション」が付いているSalesforce Filesサービスを利用する場合、Salesforceの「セッションID」「組織ID」「ユーザID」「インスタンスURL」の4つの情報が必要になります。従来はそれらを獲得するためのカスタム数式項目を出力対象オブジェクトに追加する必要がありましたが、今後は追加不要になります。
https://spc.opro.net/hc/ja/articles/900000316463
組織:組織に関する情報を獲得できます。
出力ユーザー:ドキュメントを出力するユーザに関する情報を獲得できます。
「帳票DXアクション」を利用してドキュメントを出力する場合、アウトバウンドメッセージの実行者が出力ユーザーとなるためご注意下さい。
OPROARTS Designerの場合は、「ユーザ情報」の配下に「Profile」「ロール」の欄がありましたが、帳票DX for Salesforceでは「出力ユーザー」の配下の「ロールID」「プロファイルID」の参照を辿る事で同等の値を得る事ができます。
「出力パターン」のタブを、「ボタン生成」画面と「出力定義作成」画面に追加しました。
「出力パターン」を指定する事で、特定の条件に該当する場合に、任意の「設定」を組合せてドキュメントを出力する事ができます。
パターンを複数定義する事ができます。「パターン追加」ボタンを押す事で、パターンを先頭に追加する事ができます。
末尾のパターン(パターン1)では条件を指定できません。他のパターンで指定した条件にマッチしない場合に適用されます。
「設定の組み合わせ」または「設定」の欄で、利用する設定を指定する事ができます。
D³Worker連携の場合は、D³Workerの「設定」のみが選択可能です。
D³Worker連携以外の場合は、D³Worker連携以外(PDF, Excel, Word, PowerPoint )の「設定」を任意の組み合わせで指定できます。
PDFの「設定」を連続して指定した場合、1つのPDFファイルとして統合して出力します。
Excel, Word, PowerPointの場合、1つの「設定」につき、1つのファイルを出力します。
「条件」で、パターンを適用する条件を指定する事ができます。
条件を2件以上指定する場合、以下の選択肢が表示されます。
「全ての条件を満たした場合に適用」:既定値。全ての条件を満たす場合にのみパターンに合致すると判断します。(全件AND)
「条件の組合せを式で指定」:式を指定する事で任意の判定を行う事ができます。OR条件を利用したい場合はこちらを選択して下さい。
「エラー条件」タブで指定した条件に該当した場合はエラーになります。「エラー条件」の判定が優先されます。
タブの並びが「エラー条件」「出力パターン」「出力後更新処理」の順になっていますが、この順で出力対象レコードを判断し、処理します。
「条件保存」ボタンを押すと、設定の状態が一時的に記録されます。
エラーがある場合は、エラーメッセージが表示されます。エラーがある場合であっても、設定状態は記憶されます。
設定状態は「設定」内の項目に記録されます。
「ボタン生成」あるいは「出力定義作成」ボタンを押すと、生成が実施されます。
生成されたVisualforceや出力定義レコード内に「pattern」の項目が設けられ、画面上で設定した内容が反映されます。
「メモ&添付ファイル保存+ダウンロード」を、「ボタン生成」画面の「出力方法」欄に追加しました。
生成したドキュメントをSalesforce上に保存すると同時に、そのファイルがブラウザにてダウンロードされる機能です。
二重にドキュメントを生成する事はありません。
ドキュメント生成機能を提供するglobalメソッドを追加しました。
Apex上に以下のようなコードを記述する事でドキュメントを同期的に出力する事ができます。
xxxxxxxxxx
11docutizexa.GenerateResult result = new docutizexa.DocumentGenerator().generate('利用する「出力定義」のID', new List<String>{'出力対象とするレコードのID'});
具体的な利用方法は こちら を参照して下さい。
「帳票DXアクション」の処理結果をApex上で解釈するglobalメソッドを追加しました。
Apex上に以下のようなコードを記述する事で、「帳票DXアクション」の「結果」欄に出力されたJSONをインスタンスとして解釈するする事ができます。「帳票DXアクション」が完了した後の処理を実装する際に役立ちます。
xxxxxxxxxx
51// ドキュメント生成を行った「帳票DXアクション」の結果を解釈する場合
2docutizexa.GenerateResult result = docutizexa.GenerateResult.parseFromAction('結果を調査したい帳票DXアクションのレコードのID');
3
4// D³Worker連携を行った「帳票DXアクション」の結果を解釈する場合
5docutizexa.D3WorkerActionResult result = docutizexa.D3WorkerActionResult.parseFromAction('結果を調査したい帳票DXアクションのレコードのID');
具体的な利用方法は こちら を参照して下さい。
D³Worker連携の際に「D3W」以外の認証情報を必要とする問題を修正しました。
画像のIDをURLに変換する処理を実施する際に「LA」の認証情報を要求していました。
「D3W」の認証情報で処理するように修正しました。
活動履歴の作成が失敗した場合のエラーメッセージを具体的なものに変更しました。以下のメッセージを表示します。
活動履歴の作成が失敗しました。オブジェクト[(オブジェクト名)]の「活動の追跡」が有効になっているか確認して下さい。あるいはカスタム設定「document DX Static Setting」の「活動登録ON」のチェックを解除して下さい。
「レイアウト」が未作成である事が分かりやすくなるようにするため、ボタンの配色を変更しました。 「設定」の詳細画面にて、「レイアウト」ボタンが一度もクリックされていない場合、「出力確認」「ボタン生成」「出力定義作成」のボタンを白色で表示するよう変更しました。
zipに圧縮してダウンロードする際のファイル名の命名方法を変更しました。
従来は、出力元として利用した「設定」の名前 + "_" + 出力日時(yyyyMMddHHmmss) + ".zip" でした。
「出力パターン」機能を追加した事によって、ボタンや出力定義の作成元となった「設定」と、実際に利用される「設定」とがマッチしない場合が生じる場合がある事から、以下のように変更しました。
パラメーター「zipFileName」が指定されている場合は、指定された値 + ".zip" をzipファイルの名前として適用します。
ボタンからの出力の場合は、ボタンに紐づくVisualforcePage内のJavaScript中に指定する事で反映されます。
帳票DXアクションからの出力の場合は、「出力定義」内の「追加のパラメーター」内のJSONに要素を足す事で反映されます。
今後のバージョンにて、画面上でzipファイル名を指定可能にする見込みです。
上記に該当しない場合、zipファイルの内容物のうち、最初に出力されたファイルの名前の拡張子を「zip」に変更したものを、zipファイルの名前として適用します。
添付先として任意のオブジェクトを指定可能にしました。
パラメーター「attachTo」にオブジェクトIDを指定する事で、任意のレコードに対して生成したドキュメントを添付するよう指定する事が可能です。
ボタンからの出力の場合は、ボタンに紐づくVisualforcePage内のJavaScript中に指定する事で反映されます。
帳票DXアクションからの出力の場合は、「出力定義」内の「追加のパラメーター」内のJSONに要素を足す事で反映されます。
今後のバージョンにて、画面上で添付先を指定可能にする見込みです。
「出力履歴」の「メッセージ」に対して、詳細な処理結果を出力するように変更しました。
D³Worker連携かつヘッダー明細型を利用し、完全に同一の式が複数存在する場合に、エラーが生じる問題を修正しました。
「ボタン生成」画面の一部表記を変更しました。
ボタンの種類 → コンテンツリソース(ボタンの種類)
アクション → Visualforce(Salesforce アクション)
リンク → URL(カスタムリンク)
アウトバウンドメッセージを用いて、自動的なドキュメント生成、D³Worker連携が実施可能になりました。
導入方法について
自動的な処理を行わせるユーザーを準備します。
アウトバウンドメッセージを利用する場合、画面上で操作するユーザーと、実際のドキュメント生成やD³Worker連携を行うユーザーは異なります。自動的な処理を行わせるユーザーを準備して下さい。
Salesforceの設定を開き、「権限セット」を検索します。
ユーザー>権限セット を開きます。
「document DX General User Permission Set」に、自動的な処理を行わせるユーザーを割り当てます。
アプリケーションランチャーにて「OPROARTS(帳票DX)」を開きます。
LA, XLA, D3W の配下に、自動的な処理を行わせるユーザーを追加します。
ALA、AXLA は自動処理用のユーザではご利用になれません。
LA はOffice出力を行う場合に指定します。
XLA はPDF出力を行う場合に指定します。
D3W はD³Worker連携を利用する場合に指定します。
Salesforceの設定を開き、「ワークフロー」を検索します。
プロセスの自動化>ワークフローアクション>アウトバウンドメッセージ を開きます。
「Action Message V3」を開き、「編集」ボタンを押します。
「送信ユーザー」の欄に、自動的な処理を実際に行わせるユーザを設定し、保存します。
プロセスの自動化>ワークフローアクション>ワークフロールール を開きます。
「UnprocessedActiveAction」を開き、「有効化」ボタンを押します。
アウトバウンドメッセージ送信の流れについて
「帳票DX」のアプリケーションに、「出力定義」のタブを追加しています。
「出力定義」オブジェクトの子オブジェクトとして「帳票DXアクション」オブジェクトを設けています。
処理の条件は「出力定義」に記述し、処理の発動や履歴は「帳票DXアクション」が担います。
「帳票DXアクション」オブジェクトのレコードが、「有効」がチェックされ、かつ「ステータス」が「未完了」の状態になった場合に、ワークフロールールの条件を満たし、アウトバウンドメッセージが送信されます。
アウトバウンドメッセージが送信され、各種処理が完了すると、「帳票DXアクション」オブジェクトのレコード内の「結果」フィールドに処理結果がJSON形式で格納されます。
「出力定義」の作成方法について
「出力定義」オブジェクトのレコードは、帳票DXの「設定」の詳細画面に追加した「出力定義作成」ボタンから作成する事ができます。
UIは概ね「ボタン生成」画面と同様ですが、以下の差異があります。アウトバウンドメッセージでの自動実行の場合、ローカルにダウンロードは出来ないため、ドキュメントを生成する場合は何らかのレコードに添付する動作になります。
「コンテンツリソース(ボタンの種類)」欄はありません。
「ボタンを設置する場所」欄はありません。
ドキュメント生成を行う「設定」の場合、「出力方法」の選択肢は以下になります。D³Worker連携の場合は、ボタンの場合と同様に、「出力方法」の欄がありません。
出力元レコードに添付
ドキュメントを出力元レコードに添付します。
ボタンで出力する場合に「メモ&添付ファイル保存」を選択する場合と同等の動作になります。
一覧型の「設定」の場合は選択できません。
帳票DXアクションに添付(個別に添付)
ワークフローの発動元となった「帳票DXアクション」のレコードに対して、生成したドキュメントを添付します。
複数のドキュメントの生成を行った場合、全てのドキュメントをzip圧縮せず個別に添付します。
一覧型の「設定」の場合は、当設定のみが利用可能です。
帳票DXアクションに添付(複数時zip圧縮)
ワークフローの発動元となった「帳票DXアクション」のレコードに対して、生成したドキュメントを添付します。
複数のドキュメントの生成を行った場合、全てのドキュメントをzipファイルに圧縮し、1ファイルで添付します。
生成されたドキュメントが1件のみの場合はzipに圧縮しません。
指定したレコード群の中に、エラー条件に該当する等して処理されなかったものが生じた場合は、zipファイル内に「failed.txt」が追加されます。当ファイル内に処理失敗したレコードの情報が記載されます。ボタンの場合に「処理種別」として「ダウンロード」を指定した場合と同様の動作です。
一覧型の「設定」の場合は選択できません。(一覧型の場合は常に1ファイルのみの生成となるため、zip圧縮が不要)
生成するドキュメントの作成先オブジェクトを「添付ファイル」にするか、あるいはSalesforceFiles(ContentDocument等)にするかは、ボタンで出力する場合と同様に、カスタム設定の「SalesforceFilesに保存」の指定に準じます。
処理の実行方法について
Salesforceの画面上で手動で処理を実行する場合は以下の手順で操作します。Salesforce Lightningを利用している前提で記載します。
「帳票DX」アプリケーションの「出力定義」タブを開きます。
任意のレコードを開きます。
「関連」タブ内の「帳票DXアクション」内の「新規」ボタンをクリックします。
レコードタイプの指定を求められた場合、「Document DX」(帳票DX)を選択します。
「レコードID」欄に、処理対象とするレコード群をカンマ区切りで指定します。
「有効」欄をチェックします。
「保存」を押します。
作成されたレコードをクリックして詳細を表示します。
正常に処理を受け付けた場合、「ステータス」が自動的に「実行中」になります。少し待ってリロードすると、「完了」になります。その際に「結果」欄に具体的な処理結果がJSONで反映されます。
Apexによってアウトバウンドメッセージを実行する例
Salesforceにて開発者コンソールを開き、Ctrl + E を押して、「Enter Apex Code」(実行匿名ウィンドウ)を開きます。
以下のコードを編集した上で貼り付けます。
xxxxxxxxxx
51docutizexa__Action__c action = new docutizexa__Action__c();
2action.docutizexa__IsActive__c = true; // 有効化。
3action.docutizexa__RecordIds__c = '0060w00000DDGe4AAH,0060w00000DDGe9AAH'; // 処理対象レコードをカンマ区切りで指定。
4action.docutizexa__OutputSetting__c = 'a0G0w000004Wc3CEAS'; // 「出力定義」のレコードのオブジェクトIDを指定。
5insert action;
「Execute」をクリックします。
「帳票DX」アプリケーションの「出力定義」タブを開き、該当する「出力定義」を開き、出力定義の子として新規の「帳票DXアクション」のレコードが作成されている事を確認します。「ステータス」が「完了」になる事を確認します。
処理の実行結果について
「設定」の種別や、「出力方法」によって「帳票DXアクション」の「結果」に出力されるJSONの構成が変化します。
以下にサンプルを示しますが、「//」以降は説明であり、実際には出力されません。
「設定」がドキュメント出力の場合
出力方法として「出力元レコードに添付」か、「帳票DXアクションに添付(個別に添付)」を指定した場合
xxxxxxxxxx
181{
2"failed": [ // 失敗した処理群を配列で示す。
3{
4"message": "Salesforce REST API エラー:\n指定されたエラー条件に該当したため出力をスキップします。\r\n(商談対象外,エラー条件No.1)「商談対象外」はエラー。", // エラーメッセージ
5"recordId": "0060w00000DETNnAAP" // 失敗したレコードのID
6}
7// 複数ある場合はカンマ区切りで列記する。
8],
9"success": [ // 成功した処理群を配列で示す。
10{
11"documentId": "0690w000002ABMLAA4", // 生成したドキュメントのID
12"outputHistoryId": "a0F0w000003fIhzEAE", // 作成した「出力履歴」のID
13"recordId": "0060w00000DDGe4AAH", // データの引用元としたレコードのID
14"taskId": "00T0w00000CcnhhEAB" // 作成した活動履歴のID
15}
16// 複数ある場合はカンマ区切りで列記する。
17]
18}
出力方法として「帳票DXアクションに添付(複数時zip圧縮)」を指定した場合
「出力元レコードに添付」の場合と比較して、「documentId」の出力箇所が違う点に注意が必要です。
xxxxxxxxxx
181{
2"documentId": "0680w000002A4QnAAK", // 生成したドキュメントのID
3"failed": [ // 失敗した処理群を配列で示す。
4{
5"message": "[error.salesforce.rest.fault(指定されたエラー条件に該当したため出力をスキップします。\r\n(商談対象外,エラー条件No.1)「商談対象外」はエラー。)]", // エラーメッセージ
6"recordId": "0060w00000DETNnAAP" // 失敗したレコードのID
7}
8// 複数ある場合はカンマ区切りで列記する。
9],
10"success": [ // 成功した処理群を配列で示す。
11{
12"outputHistoryId": "a0F0w000003fIj2EAE", // 作成した「出力履歴」のID
13"recordId": "0060w00000DDGe4AAH", // データの引用元としたレコードのID
14"taskId": "00T0w00000Ccnj9EAB" // 作成した活動履歴のID
15}
16// 複数ある場合はカンマ区切りで列記する。
17]
18}
「設定」がD³Worker連携の場合
出力方法の指定欄は無し。
xxxxxxxxxx
211{
2"apiUrl": "https://d3w.ap.oproarts.com/d3w/api/_opro_ts/", // リクエスト先のD³WorkerのURL
3"failed": [ // 失敗した処理群を配列で示す。
4{
5"message": "Salesforce REST API エラー:\n指定されたエラー条件に該当したため出力をスキップします。\r\n(商談対象外,エラー条件No.1)「商談対象外」は処理しません。", // エラーメッセージ
6"recordId": "0060w00000DETNnAAP" // 失敗したレコードのID
7}
8// 複数ある場合はカンマ区切りで列記する。
9],
10"success": [ // 成功した処理群を配列で示す。
11{
12"historyId": "a050w000004OeZxAAK", // 作成した「連携履歴」のID
13"processId": "PGeJhsxZuqC_3ZX", // D³Worker上に発行されたジョブのID
14"recordId": "0060w00000DDGe4AAH", // データの引用元としたレコードのID
15"status": "OK", // D³Workerが処理受付の際にレスポンスしたステータス
16"taskId": "00T0w00000Ccno9EAB" // 作成した活動履歴のID
17}
18// 複数ある場合はカンマ区切りで列記する。
19],
20"workName": "テストワーク" // D³Worker上で実行されたワークの名称
21}
選択された項目が多い「設定」にてドキュメントを出力する場合に「Apex CPU Time limit exceeded」が生じる場合がある問題について対策しました。
ドキュメント生成の際に「リクエストパラメータの内容に誤りがあります。」のエラーが生じた場合に、より具体的な情報を返却するように変更しました。
単票型のドキュメントを出力する場合に、該当するオブジェクトのレコードが多い場合に「Apex CPU Time limit exceeded」が生じる場合がある問題について対策しました。
権限セットの見直しを行いました。
権限セット「document DX Full Permission Set」は出力のみを行うユーザ向けの機能であるため、以下の変更を加えました。
「設定」タブを表示しないよう変更。
その他全般的に権限セットの定義の見直しを行いました。
「設定」の「ボタン生成」画面に「エラー条件」のタブを追加しました。
当タブにて条件を指定すると、ドキュメント出力やD³Worker連携の前に出力対象レコードの内容を検査し、処理対象から除外する事が可能になります。
当タブは、「ボタンの種類」として「アクション」を指定した場合のみ表示されます。
「単票型」や「ヘッダー明細型」の場合のみ、当機能を利用する事ができます。「一覧型」の場合は利用できません。
「種別」列について
以下の2種が存在します。
単一:1行で完結する条件、あるいは、「複合」条件で利用される条件。
複合:「単一」の条件を組み合わせた条件。「1 or 2」のような条件を指定する事が可能。
式作成画面と同様の演算子や関数を利用する事が可能ですが、基本的には括弧, NOT, OR, AND のみが利用される想定です。
「複合」条件の中で「複合」条件を指定する事はできません。
「エラーメッセージ」欄に文言を記載する事で条件が成立します。
「単一」を1行のみで条件として成立させる場合、「エラーメッセージ」欄に文言を記載して下さい。
「エラーメッセージ」欄を空欄にする場合、「複合」欄で引用して利用して下さい。
「複合」欄では必ず「エラーメッセージ」欄に文言を記載して下さい。
「比較」列について
「フィールド」列で指定した項目の型によって選択肢が変化します。
「比較する値」列について
「フィールド」列でDATE型、あるいはDATETIME型を選択した場合、相対日付を選択する事が可能です。
相対日付は、Salesforceの相対日付に準じて実装しています。処理を実行した時点での日時に基づいて、対象の日付が指定した範囲内に含まれるかを判断します。
週や、会計年度に関する相対日付を利用する場合は、SOQLの日付リテラルを活用して範囲に該当するかを判定しています。これを利用する場合、1条件毎にSOQLが実行されるためご注意下さい。
「条件保存」ボタンを追加しました。
このボタンは、「エラー条件」タブか「出力後更新」タブを選択している場合にだけ表示されます。
当ボタンを押すと、設定内容を一時保存する事ができます。
設定内容に問題が検出された場合であっても保存されます。
「ボタン生成」ボタンの変更について
「ボタン生成」ボタンをクリックした際に、「エラー条件」タブの設定内容に問題が無いかを検査します。 検査した結果エラーが検出された場合、ボタン生成は実施されず、ボタン生成画面内に留まります。
ドキュメント生成の際に、引用する画像の拡張子が「jpeg」の場合に処理できない問題を修正しました。
JPEG形式の画像には対応しておりましたが、拡張子が「jpg」の場合しか考慮されていない状態でした。
「設定」のインポートの際に項目数が多い場合にガバナ制限エラーが生じる場合がある問題について修正しました。
「設定」の「ボタン生成」画面の「出力後更新処理」タブにて、「値」の欄内で半角スペースが「+」に変化する問題を修正しました。
「単票」型の「設定」が作成可能になりました。
「単票」とは、1オブジェクトのみ使用し、1レコードにつき1ドキュメントを生成する形式です。
「設定」を新規作成する際に、「基本設定」画面にて「タイプ」として「単票・ヘッダー明細型」を選択し、「オブジェクト選択」画面にて、主オブジェクトのみを選択し、明細オブジェクトを選択しなければ、その「設定」は「単票」の扱いになります。
従来は明細を1件以上指定する必要がありましたが、その制限を廃止しました。
基本設定画面の「出力方法」欄について、新規作成時の初期指定欄を「単票・ヘッダー明細型」に変更しました。
ワンクリックでドキュメントを出力できるボタンを生成できる機能を追加しました。
「設定」の「ボタン生成」画面を変更しました。
「ボタンの種類」の表記を「ボタンを設置する場所」に変更しました。
新規の選択項目として「ボタンの種類」を追加しました。以下の選択肢があります。
アクション:ワンクリックでドキュメントを生成できるボタンを生成します。画面の初期表示時点ではこちらが選択されています。
リンク:従来通りのボタンを生成します。ボタンをクリックすると、ドキュメント出力用画面に遷移します。
ボタン生成が完了した後で「ボタン配置設定画面へ移動」のボタンを表示するように変更しました。
当ボタンをクリックすると、オブジェクトマネージャ内の、指定した親オブジェクトの設定画面が表示されます。
「詳細ページボタン」を選択した場合、「ページレイアウト」が開きます。レイアウト内にボタンを追加して下さい。
「リストボタン」を選択した場合、「リストビューボタンレイアウト」が開きます。ボタンを表示対象に追加して下さい。
「設定」の「ボタン生成」画面に「出力方法」の欄を追加しました。
当選択欄は、「ボタンの種類」として「アクション」を指定した場合のみ表示されます。
ボタンを押した際に、ダウンロードするか、あるいはファイルとして保存するかを指定します。
保存先を「添付ファイル」とするか、SalesforceFilesとするかは、後述のカスタム設定によって指定します。
「設定」の「ボタン生成」画面に「活動履歴作成」の欄を追加しました。
当選択欄は、「ボタンの種類」として「アクション」を指定した場合のみ表示されます。
「作成する」を選択した場合、ドキュメントを生成した後で、出力元レコードに対して活動履歴を作成します。
「作成しない」を選択した場合は何も行いません。
カスタム設定に「活動登録ON」のチェックボックスが存在しますが、この設定よりも、当画面での設定が優先されます。
「設定」の「ボタン生成」画面に「出力後更新処理」のタブを追加しました。
当タブにて条件を指定すると、ドキュメント出力やD³Worker連携の後で、出力元レコードを指定した条件で更新する事ができます。
当タブは、「ボタンの種類」として「アクション」を指定した場合のみ表示されます。
「単票型」や「ヘッダー明細型」の場合のみ、当機能を利用する事ができます。「一覧型」の場合は利用できません。
更新処理の有無について
ドキュメント生成の場合
ドキュメント生成が成功した場合のみ、出力元レコードを更新します。
D³Worker連携の場合
D³Workerへリクエストする際に「連携履歴」を作成しますが、連携履歴の作成が成功した場合に、出力元レコードを更新します。
D³Worker側での最終的な処理の成否は更新処理の有無に影響しません。最終的に配信が失敗した場合であっても、出力元レコードを指定の条件で更新するためご注意下さい。
更新の種別について
固定値:任意の文字列を指定した項目に反映します。
出力した日:更新処理を実施する時点での日を指定した項目に反映します。時刻情報を持ちません。
出力した日時:更新処理を実施する時点での日時を指定した項目に反映します。時刻情報を持ちます。
出力したユーザのID:ドキュメントの出力を行ったユーザのIDを指定した項目に反映します。
更新対象項目の型が文字列か、ユーザの参照型項目である場合に指定可能です。
出力したユーザの名前:ドキュメントの出力を行ったユーザの名前を指定した項目に反映します。
D³Worker連携履歴ID:D³Worker連携の場合だけ選択可能です。D³Worker連携の際に作成される「連携履歴」のIDを指定した項目に反映します。更新対象項目の型が文字列か、「連携履歴」オブジェクトの参照型項目である場合に指定可能です。
以下の項目は更新対象として指定する事ができません。候補にも表示されません。
Id, IsDeleted, LastModifiedDate, LastModifiedById, LastActivityDate, LastViewedDate, LastReferencedDate, SystemModstamp, CreatedDate
諸々の条件は、ボタン生成の際に自動的に生成されるVisualforcePage内に反映されます。
ボタンを生成した後で設定を変更する場合は、直接VisualforcePage内のJavaScriptを編集して下さい。
「ヘッダー明細型」の「設定」の「項目選択」画面にて、明細オブジェクトに対して式を追加する際に、左欄の項目一覧に明細オブジェクトのフィールドが表示されない問題を修正しました。
カスタム設定に「SalesforceFilesに保存」を追加しました。
これをチェックすると、従来の「添付ファイル」(00P系)ではなく、SalesforceFiles(069,068系)にドキュメントを保存します。
「設定」の「ボタン生成」画面にて、「アクション」か「リンク」かを選択可能ですが、どちらを選択した場合であっても当設定が適用されます。「出力確認」を行う場合のドキュメントの生成先も、当設定が適用されます。
項目選択画面で「保存」ボタンを押した際のチェック処理を修正しました。
式ではない項目で、引用元オブジェクトと引用元API参照名が完全に同一の項目が複数存在する場合、 「同一の項目が複数登録されています。(重複項目名)」のエラーメッセージをトーストで表示するように変更しました。
選択されているオブジェクトのうち、項目の選択が行われていないオブジェクトが存在する場合に「項目を選択してください。」のエラーメッセージを表示していましたが、そのチェックを行わないように変更しました。当チェックは式を保存する際にも作動していましたが、その際にもチェックされなくなります。
「保存」ボタンをクリックした際に何らかのエラーが生じた場合、「ファイル名設定」「式追加」ボタンが消えてしまう問題がありました。消えないように修正しました。
「設定」の詳細表示画面と、出力確認画面にて、「ワーク」の設定値を表示する欄を追加しました。
D³Workerのヘッダー明細型の場合に、適切にデータ連携を行う事ができない各種問題を修正しました。
SalesforceFilesや添付ファイルのIDを画像ダウンロードURLに置換する処理が動作するように修正しました。
日付型項目の書式が「yyyy-MM-dd HH:mm:ss」になっていましたが、「yyyy-MM-dd」で出力するように修正しました。
式を利用すると、ワーク実行後に連携履歴にて、式解釈が失敗した旨のエラーが生じる問題を修正しました。
「メモ、添付ファイル、Googleドキュメントおよびファイル」等を明細オブジェクトとして指定すると、ワークを実行した際にエラーになる問題を修正しました。
「設定」がD³Worker連携の場合、項目編集画面にワーク選択欄が表示されまずが、候補を任意の文言でフィルタして探す事が可能になりました。
D³Worker連携の場合にも、連携を実施した際に活動履歴を作成するように変更しました。
従来通り画面から出力する場合は、カスタム設定の「活動履歴ON」の設定状態に基づいて、活動履歴の作成の有無を判断します。
「ボタン生成」画面で「ボタンの種類」として「アクション」を選択してボタンを作成し、そのボタンから実行した場合、「活動履歴作成」の設定欄の指定に基づいて、活動履歴の作成の有無を判断します。
活動履歴は、D³Workerへの連携を実施した時点で作成されます。最終的にD³Worker側での処理が失敗したとしても活動履歴は作成されるためご注意下さい。また、D³Worker側での最終的な処理結果が獲得された後で自動的に活動履歴が更新される事はありませんのでご了承下さい。
ドキュメント出力時の認証用の「OPROARTS キー」として「ALA」と「AXLA」を利用する事が可能になりました。
「ALA」は、Salesforceユーザ全員に、Office形式の帳票の出力権限を付与できます。
カスタム設定の「OPROARTS Connector Type LA」に「LA」を指定している場合のみ、「ALA」が有効になります。
「AXLA」は、Salesforceユーザ全員に、XAデザイナで作成した帳票の出力権限を付与できます。
カスタム設定の「XA Connector Type (Output)」に「XLA」を指定している場合のみ、「AXLA」が有効になります。
具体的な設定方法等はこちらをご確認下さい。
ドキュメント出力をD³Worker連携を行う事ができるApexRESTを追加しました。詳細はこちらを参照して下さい。
D³Worker連携の「設定」を削除する際に「LAD」での認証を行わないように修正しました。
D³Worker連携の「設定」をエクスポートする際には「LAD」での認証を行わないように修正しました。
D³Workerにリクエストする場合に、CSVの列の順序が乱れる場合がある問題を修正しました。
D³Worker連携かつ、ヘッダー明細型を指定している場合に問題が生じる場合がありました。
エクスポートする際に「項目」の並び順が一定になるよう修正しました。
以下の処理にてSalesforceのAPIの「22.0」を利用していました。「55.0」を利用するように変更しました。
OPROARTS認証情報を獲得する処理
D³Workerにワークの実行をリクエストする処理
「項目」の「項目API参照名」のサイズを変更しました。60→255に拡張しました。 項目編集画面にて、参照を辿って深い階層の項目を追加した際に「データ値が大きすぎる」のエラーが生じる問題への対策です。
OPROARTS認証情報入力画面にて、デフォルトでUPWにマスクがかかるよう変更しました。
リストビューからドキュメントを出力する際のレコード件数制限を廃止し、無制限にしました。従来は20件までの制限がありました。
「設定」の一覧画面に、エクスポートボタンと、インポートボタンを追加しました。
インポートする際には、同名の設定を上書きする事が可能です。
ただし、出力形式が異なるファイルで上書きする事は出来ません。
出力形式がOfficeのものに限り、
docutize でエクスポートしたものをインポートする事や、
帳票DX でエクスポートしたものを docutize でインポートする事も可能です。
インポートの際に、組織内に存在しないオブジェクトを参照するように指定されたファイルを取り込む事はできません。
「設定」が組織別に区別されるよう変更しました。
従来は同一のCIDが登録された組織が複数存在する場合に、各々に同名の設定が存在する場合は、同一のレイアウトを参照するように振る舞っていました。2023/04/17 以降は、組織単位で「設定」が区別されます。
2023/04/17 以降に作成した「設定」のみ区別します。既存の「設定」に関しては従来通りの動作になります。
出力形式がOfficeの場合のレイアウト名の命名が不要になりました。
従来は「設定」を作成した後で「レイアウト」ボタンを押した際に、初回はレイアウトの名称を指定する必要がありましたが、不要になりました。
「設定」の「主オブジェクトAPI参照名」に実在しないAPI参照名が記載されたレコードが存在する場合に「設定」一覧画面を開くことができない問題を修正しました。
D³Workerのリクエスト先が存在しない場合のエラーメッセージを具体的なものに変更しました。
主オブジェクトとして選択可能なオブジェクトとして、WorkOrder(作業指示) を追加しました。
現状、主オブジェクトとして選択可能なオブジェクトは以下になります。
Account(取引先)
Asset(納入商品)
Campaign(キャンペーン)
Case(ケース)
Contact(取引先責任者)
Contract(契約)
Idea(アイデア)
Lead(リード)
Opportunity(商談)
Order(注文)
Product2(商品)
Solution(ソリューション)
User(ユーザ)
WorkOrder (作業指示) v1.11.0 で追加
以下条件を満たすカスタムオブジェクト
カスタム設定ではない
ログインユーザが参照可能
出力形式が「PDF」かつ引用元項目が日付型の場合に、適切に値が出力されない問題を修正しました。
日付型項目を引用してドキュメントを出力する際は、テキストデータを生成する際に、
「yyyy-MM-dd」の書式にする事を想定していましたが、予期せず
「yyyy-MM-dd'T'HH:mm:ssXXX」の書式で生成していました。
「yyyy-MM-dd」を正として修正しました。
テンプレートのデザイン画面で「データセット設定」画面を開き、該当する項目の「フィールド型」「入力フォーマット」を、以下の表の「v1.5.0以前で受け付ける形式」のように設定している場合は、「v1.6.0以降で受け付ける形式」の設定に書き換えていただけますようお願い致します。
列名 | フィールド型 | 入力フォーマット |
---|---|---|
v1.5.0以前で受け付ける形式 | 日付と時刻 | yyyy-MM-dd'T'HH:mm:ssXXX |
v1.6.0以降で受け付ける形式 | 日付 | yyyy-MM-dd |