[toc]
概要
本記事では、ViewFramerの新機能「CSVアップロード機能」を使い、SalesforceのデータとアップロードしたCSVデータを組み合わせたレポートを作成する手順を解説します。
前提条件
- ViewFramerの基本的な使用方法を理解している。
- Salesforceのカスタムオブジェクトと項目を作成できる権限がある。
- ExcelなどでCSVファイルを準備できる。
同じウェブブラウザーで複数のビューやマッピングを参照・編集すると、データが上書きされてしまいます。
必ず1つのタブで操作してください。別のビューを参考にしたい場合は、別のブラウザーで開いてください。(参照のみ)
CSVアップロード機能
機能概要
Salesforceのボタンをクリックすると、CSVデータのアップロード画面が立ち上がります。
CSVファイルをアップロードすることで、SalesforceのデータとCSVデータが組み合わさった帳票を生成できます。
利用イメージは以下の動画を参照ください。
活用例:予実表(実績×計画)の作成
上記の動画では、Salesforceで管理している実績データと、Excelで用意した計画データ(CSV)を組み合わせて、予実表を1つのExcelとして出力する例を紹介しています。
以降では、この活用例を実現するためのデータ構成と設定手順を記載します。
1. 動画で紹介した予実表データの構成
以下は、動画で作成した売り上げ状況の表です。
ここでは、この表を構成している各データに関する説明を記載します。
実績データ(Salesforceから集計)
Salesforceの請求明細レコードを請求月別・商品カテゴリ別に集計した金額です。
以下の集計結果を予実表の実績欄に表示します。
- 対象レコード:「請求明細」カスタムオブジェクト
- 請求月:「請求明細」の「請求締日」項目を使用して集計します。
- 商品カテゴリ:「商品」オブジェクトの「商品ファミリ」を使用します。商品ファミリは、請求明細に紐づく商品明細に自動登録されています。
計画データ(アップロードしたCSVから集計)
CSVアップロード機能でアップロードしたCSVデータの金額です。以下の集計結果を予実表の予定欄に表示します。
- 請求月:CSVファイルの2要素目を使用して集計します。 実行時点を基準に、「今月」「先月」「去年の今月」「去年の先月」を対象に自動で集計します。
- 商品カテゴリ:CSVファイルの3要素目を使用します。
アップロードするCSVファイルのイメージは以下を参照ください。
動画のExcelには、FY17(年度)の12月と1月、FY16の12月と1月が出力されています。
CSVデータの元となるものは、Excel、GoogleスプレッドシートやCSVデータをエクスポート可能な他システムなどが考えられます。
2. ViewFramerの設定
ここでは、ViewFramerの実際の設定内容を記載します。
1. CSVオブジェクトを作成する
CSVオブジェクトで、アップロードするCSVファイルの定義を作成します。
-
ViewFramerの「CSVオブジェクト」タブをクリックします。
-
「新規」ボタンをクリックします。
-
アップロードするCSVオブジェクト名、CSVデータのフィールド名、フィールド型、フォーマットを指定します。
項目 説明 フィールド名 CSVファイルの列名を指定します。 フィールド型 テキスト、数値、日付など、該当する型を選択します。 フォーマット フィールド型に応じた形式を指定します。 CSVオブジェクト名 任意の名前を指定します。「ビュー」での表示に利用されます。 今回は以下のように設定しました。
- CSVオブジェクト名:
yojitsu_keikaku -
CSVフィールド
フィールド名 フィールド型 フォーマット カテゴリ String なし 月 Date yyyyMMdd計画 Number なし
- CSVオブジェクト名:
- 「保存」をクリックします。
CSVオブジェクトは、Salesforceのオブジェクトと同じようにビューで使用できます。
2. ビューを作成する
今回は一覧型のテンプレートのため、一つのビューを作成します。
2-1. リレーション設定
- 主オブジェクトに「請求明細」を指定します。
- 実績の出力に必要な以下のオブジェクトを、「関連オブジェクト」に設定します。
- 商品明細:「商品ファミリ」(商品のカテゴリ)を取得するために使用します。
- 請求:「請求日」を取得するために使用します。
- 計画の出力に必要なCSVオブジェクト(
yojitsu_keikaku)を、「関連オブジェクト」に設定します。 オブジェクト名横の欄(別名欄)には任意の値を入力します。 -
CSVオブジェクトとSalesforceの既存オブジェクトを結合する条件を指定します。
ここでは、以下の値が一致するレコードのみを取得するように条件を指定しています。
- CSVオブジェクトの「カテゴリ」= 商品明細の「商品ファミリ」
- CSVオブジェクトの「月」= 請求の「請求締日」
💡補足CSVオブジェクトをSalesforceオブジェクトと同じように扱うことができます。
2-2. 出力項目設定
Excelに表示する項目を設定します。ここでは、設定時のポイントを紹介します。
-
グループ
グループ化が必要な項目については、「グループ」に数値を入力します。 グループを指定することで、複数のレコードを1レコードにまとめることができます。 図の例では、出力項目名「カテゴリ」の「グループ」に「1」を入力することで、カテゴリごとにグルーピングしています。
-
集計式
「今月実績」と「前月実績」は、以下のような数式を入力しています。
例)今月実績
SUMIF(seikyumeisai.金額 + seikyumeisai.税額,FORMAT_DATE(seikyu.請求締日,'yyyy/MM') = FORMAT_DATE(TODAY(),'yyyy/MM'))例)前月実績
SUMIF(seikyumeisai.金額 + seikyumeisai.税額,FORMAT_DATE(seikyu.請求締日,'yyyy/MM') = FORMAT_DATE(ADDMONTH(TODAY(),-1),'yyyy/MM'))「昨年の今月実績」と「昨年の前月実績」も同様に指定しています。
2-3. 出力条件設定
ボタンを配置するオブジェクトに対して、出力条件を設定します。 ここでは例として、「請求」オブジェクトのボタンで選択したレコードを対象にする条件を指定しています。
条件が不要な場合は、設定をスキップしてください。
3. マッピングを作成する
作成したビューを使用してマッピングを行います。 基本的な流れは通常のViewFramerと同様のため、ここではCSVアップロードを用いた「出力情報確認」の手順のみを記載します。
- 「出力情報確認」画面を開きます。
- 「添付CSVファイル」セクションの「参照」ボタンをクリックし、アップロードするCSVファイルを指定します。 「リクエストパラメータ名」には、リレーション設定でCSVオブジェクトの「別名」に入力した値を指定します。
- ビューの「出力条件設定」でパラメータを使用した条件を指定している場合は、「パラメータ」欄に条件値を入力します。
- 「データ表示」をクリックすると、アップロードしたCSVファイルとパラメータに一致するレコードをもとにデータ取得が行われます。
- 表示されたデータに問題がないことを確認します。
- 「保存」または「配備」をクリックします。
4. ボタンを作成する
-
配備したマッピングの「APIサンプル」欄にある「APIサンプル」ボタンをクリックします。
-
以下の設定を指定します。
項目 設定内容 サービス 「Documentizer」を選択します。 出力形式 「Excel(アドインでマッピング)」を選択します。 CSVオブジェクト使用 「CSVオブジェクトを使用している」にチェックを入れます。
- 「Visualforceページ」または「OnClick JavaScript」ボタンをクリックして、コードをダウンロードします。
-
出力条件設定に合わせてコードを編集します。
⚠️注意OPROARTS Connectorのバージョンが2.0以降の場合、以下の行の「
/*」と「*/」を削除してコメントを有効にしてください。/* nsPrefix:'oproarts1', */ - 編集したソースコードを使用して、ボタンを作成します。
5. ボタンをページレイアウトに配置する
編集したソースコードを使用して、帳票出力を行うオブジェクトのリストビューにボタンを作成します。
Visualforceページを利用したボタンの作成手順については、下記を参照ください。
設定が完了すると、ボタンをクリックした際にCSVアップロード画面が表示されます。
CSVアップロード画面は自動生成されるため、作成いただく必要はありません。