# Salesforce設定概要 ## 新規登録の流れ --- ### デバイス管理等のオペレーション - デバイスの生産が完了した時点で機器マスタに予め登録 - 機器ロケーションは各機器の移動情報を記録する - `デバイスの生産が完了→在庫センターにて管理` を機器ロケーションにて登録 - 新規契約が締結されホテルへの出荷が決まった時点で機器ロケーションの移動履歴レコードを作成する - 移動開始・終了期間は主契約と同じ ### 契約・営業等のオペレーション - リードから通常商談までレコード作成する段階で「取引先・取引先責任者・事業者マスタ」を適宜作成しておく必要あり ## 各オブジェクトの項目概要 --- ### 取引先 Account(s) - 企業単位で登録 - グループ企業の場合は、親企業名を登録する - 所有者には取引先責任者 - e.g. ヤンマーHD ### 取引先責任者 Contact(s) - 取引先の責任者 - 商談や契約等における最高責任者を登録する ### 事業者マスタ VendorMaster__c - 取引先の現地ホテル先 - e.g. 西急リゾート(取引先)の西急リゾートグアムホテル(事業者マスタ) - ホテル名の様なイメージ - 所有者には取引先責任者 --- - 項目追加(2019/9) - 「事業者種別」 項目を追加 - 内部事業者 - ヤンマー本社ないしグループ企業 - 一般事業者 - Wheeeboを導入されているお客様もといビジネス相手企業 - 代理店事業者 - *将来的な代理店業務に備えた事業者種別(現フェーズでは未使用)* --- ### 商談 Opportunity(s) - 商談には2つの使い方が存在する   1. 通常商談として 1. 請求明細としての使い方 - 契約済みの事業者と、当該事業者の利用実績をまとめた請求明細としての使い方 - ***今回のWheeeboプロジェクトでは後者の商談を実装*** ### 契約 Contract(s) - 取引先・事業者・価格表を参照し生成 - 請求情報の元となるマスタ情報を記入 - 契約名 - 契約の有効期日範囲 - e.g. 2019/04/01 -- 2020/03/30 - 基本料金 - 月額リース金額の基礎料金 --- - 名称変更&削除対応(2019/9) - ***従量課金金額(本体稼働/時間)*** - ミニマム時間を超過した場合の1時間あたりの課金金額 - ~~従量課金金額(バッテリー/台数)~~ - 削除(2019/9) --- - ミニマム契約時間 - Wheeebo台数 ### 請求 BillMaster__c - 請求先情報を記述   - 請求締め日等 - ***現段階では事業者ごとの請求締め日を記録(2019/9)*** ### 機器マスタ DeviceMaster__c - ハードウェア1台1台の機体情報をマスタ登録 - ***Name*** - *機器固有のMac番号を登録* - ***機器No*** - 自動採番されるSFDC内部でのユニーク番号 - バッテリー機器に関しては最大充電回数と最大充電時間をとる - 商品コードを必ず参照する必要 ### 商品 Product2(s) - 機器マスタで登録された機器がどの商品タイプになるのかを紐付ける --- - 名称変更&追加(2019/9) - ***機器マスタと紐付けたり、稀に商談商品としても使用*** - wb-body: 本体 - wb-battery: バッテリー - wb-charger: チャージャー - wb-controller: リモコン - wb-gateway: ゲートウェイ - ***商談商品としての利用のみ*** - wb-addtional-charge: 従量課金分 - wb-basic-price: Wheeebo基本料 - discount-mistake: オペレーションミスによる割引 - 名称に関しては相談 - discount-campaign: キャンペーン割引 - 初回キャンペーン等の割引項目を商談商品として表示 - discount-large-customer: 大量購入割引 --- ### 機器ロケーション DeviceLocation__c - 機器マスタで登録されたデバイスの移動情報をレコードとして登録する - 移動開始・終了期間は主となる契約と同じ - 基本的に全ての出荷元となるのは在庫管理場所となるヤンマーメンテナンスセンター - 所有者には取引先責任者を設定 --- - 名称変更&追加(2019/9) - ***Validationを設定*** - 目的 - Batch処理にて人為エラーを防ぐため - そもそも誤ったマスタデータ生成をさせない - 今回のバリデーション実装内容 - 新規登録時 - 機器IDが既存機器ロケーションに登録済みの場合は登録拒否 - 更新登録時 - 以前の所属事業者を参照し、内部事業者、もしくは代理店以外であれば登録拒否 - 共通 - 有効な契約が存在しなければ登録拒否 - ***今後運用マニュアルが固まり次第適宜追加予定*** --- ### 契約機器マスタ - 現行の有効な契約で事業者に紐づけられた機器の累計台数をカウントする ### 価格表 Pricebook2 - 商品の値段をリストとして登録し顧客別の利用単価を決める ### 商談商品 OpportunityLineItem - 商品と価格表の参照から商談に紐づける商品として登録する - ここで登録された商品の累計が商談オブジェクトの項目:金額に反映される ### 正常ログ NormalLog__c - 現地ゲートウェイよりAWS IoTを介してSFDCに登録 --- - 項目変更(2019/9) - レコード名 - ~~Wheeebo本体: `MacAddress` + `_2019062311212304`~~ - Wheeebo本体: `機器名` + `_2019062311212304` - Battery関連: `機器名` + `_n(n桁)` - `n`には数字→累積充電総量が入る見込み - 無効フラグがfalseのもののみ格納 - バッチ処理を通過したものは処理フラグがtrueとなる - 機器名を先ず受け入れ、トリガー処理によって機器IDを特定し参照紐付けを実施 - 正常ログのふりをしたが、マスタ参照等によりエラー判定をされたものはエラーログにコピーされる - 正常ログのエラー判定されたものは削除せずにエラーフラグ、処理フラグををtrueにして残す - ***エラー項目*** - MAE0001 - デバイスが登録されていません - MAE0002 - 無効な契約 - MAE0004 - 契約有効期間切れ - 運用マニュアルが固まり次第適宜拡大 --- ### エラーログ ErrorLog__c - 無効フラグがtrueのもののみ格納 --- - 項目変更(2019/9) - レコード名 - Wheeebo本体: `機器名` + `_2019062311212304` - Battery: `機器名` + `_2019062311212304` - Charger: `機器名` + `_2019062311212304` - 無効フラグがfalseのもののみ格納 --- ### 利用集計ログ UsageTimeLog__c - 正常ログから実際の利用時間と参照される契約・事業者を紐づける - Wheeebo本体かつ正常ログのものが集計対象 ### 月次利用実績 MonthlyUsageResult__c - 契約の子オブジェクト - 日次利用実績の主側オブジェクト、日次は従側 ### 日次利用実績 DailyUsageResult__c - 利用集計ログの角利用時間を集計 ### 機器サポート履歴 DeviceSupportHistory__c - 機器側のトラブルがあった場合に修理対応・ケース等の情報を記録する ## バッチ・トリガー処理概要 --- ### 正常ログから利用集計ログを生成 - 1日1回 AM 2:00にバッチ起動 ### 利用集計ログから対応する日次利用実績へ利用時間を累積集計 - 1日1回 AM 3:00にバッチ起動 ### 契約から月次利用実績・日次利用実績を生成 - 契約が登録された際にトリガー起動 - 契約期間の範疇で月次利用実績を生成 - 月次利用実績の月初〜月末までの日和で日次利用実績を生成 # コミュニティ概要 - ホーム - ケース作成フォーム - 取引先が一致する月次利用実績のみ閲覧可能 - 日次利用実績は関連リストに表示しない - 契約デバイス - 所有者がログインユーザと一致する機器ロケーション - 企業情報 - 所有者がログインユーザと一致する取引先 - 事業所 - 所有者がログインユーザと一致する事業者マスタ