Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
#salesforcedevjp
カスタムメタデータを受託の案件に
使ってみた話
@yonet77
TAOドライブ株式会社
#salesforcedevjp
⾃⼰紹介
2016/02/23	2
#salesforcedevjp
アジェンダ
2016/02/23	3	
1.  カスタムメタデータとは?	
2.  カスタムメタデータを使った	
データ移⾏プログラムについて	
3.  カスタムメタデータを使ったメリットとは?	
4.  最後に
#salesforcedevjp
1.  カスタムメタデータとは?
2016/02/23	4
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	5	
カスタムメタデータは	
•  カスタマイズ可能	
•  リリース可能	
•  パッケージ化可能	
•  アップグレード可能	
なアプリケーションメタデ...
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	6	
これまで...
ü  データの型(カスタムオブジェクトやカスタムフィールドなど)は
パッケージに含めることはできる
ü  ただし、定義した型に合わせた...
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	7	
カスタムメタデータによって...
ü  データの型(オブジェクトやカスタムフィールドなど)と、そのデータ(レコー
ド)をまとめてパッケージ(or 変更...
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	8	
(サンプル)カスタムメタデータ型の定義
※カスタム
オブジェクト
と
割と似ている
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	9	
(サンプル)カスタムメタデータ
#salesforcedevjp
1. カスタムメタデータとは?
2016/02/23	10	
(サンプル)変更セットへのカスタムメタデータの追加
#salesforcedevjp
2.  カスタムメタデータを使った
データ移⾏プログラムについて
2016/02/23	11
#salesforcedevjp
2. カスタムメタデータを使った移⾏プログラム(1)
2016/02/23	12	
旧システム
Salesforce
Log
データ
本番
データ
1.  旧システムのデータをCSVデータとして抽出する
2. ...
#salesforcedevjp
2. カスタムメタデータを使った移⾏プログラム(2)
2016/02/23	13	
Log
データ 本番
データ
カスタム
メタデータ
From To
aaa__c 1aaa__c
bbb__c 2bbb__c...
#salesforcedevjp
3.  カスタムメタデータを使ったメリットとは?
2016/02/23	14
#salesforcedevjp
3. カスタムメタデータを使ったメリットとは?
2016/02/23	15	
n  Logデータ -> 本番データ のマッピングを宣⾔的に定義できる
ü  マッピング定義と、それを処理する部分を分離できる
ü ...
#salesforcedevjp
4.  最後に
2016/02/23	16
#salesforcedevjp
4. 最後に
2016/02/23	17	
n  アプリケーションの「設定」と「コード」を分離する、という点で
カスタムメタデータは有⽤
ü  リスト型のカスタム設定でも似たようなことはできるが、変更セットに追...
#salesforcedevjp
END
2016/02/23	18
Upcoming SlideShare
Loading in …5
×

カスタムメタデータを受託の案件で使ってみた話

1,137 views

Published on

Tokyo Salesforce DG Meetup #11 LT

Published in: Technology
  • Be the first to comment

カスタムメタデータを受託の案件で使ってみた話

  1. 1. #salesforcedevjp カスタムメタデータを受託の案件に 使ってみた話 @yonet77 TAOドライブ株式会社
  2. 2. #salesforcedevjp ⾃⼰紹介 2016/02/23 2
  3. 3. #salesforcedevjp アジェンダ 2016/02/23 3 1.  カスタムメタデータとは? 2.  カスタムメタデータを使った データ移⾏プログラムについて 3.  カスタムメタデータを使ったメリットとは? 4.  最後に
  4. 4. #salesforcedevjp 1.  カスタムメタデータとは? 2016/02/23 4
  5. 5. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 5 カスタムメタデータは •  カスタマイズ可能 •  リリース可能 •  パッケージ化可能 •  アップグレード可能 なアプリケーションメタデータです 〜ヘルプより抜粋〜
  6. 6. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 6 これまで... ü  データの型(カスタムオブジェクトやカスタムフィールドなど)は パッケージに含めることはできる ü  ただし、定義した型に合わせたデータ(レコード)はパッケージ化できない
  7. 7. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 7 カスタムメタデータによって... ü  データの型(オブジェクトやカスタムフィールドなど)と、そのデータ(レコー ド)をまとめてパッケージ(or 変更セット)に含めて配布できる
  8. 8. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 8 (サンプル)カスタムメタデータ型の定義 ※カスタム オブジェクト と 割と似ている
  9. 9. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 9 (サンプル)カスタムメタデータ
  10. 10. #salesforcedevjp 1. カスタムメタデータとは? 2016/02/23 10 (サンプル)変更セットへのカスタムメタデータの追加
  11. 11. #salesforcedevjp 2.  カスタムメタデータを使った データ移⾏プログラムについて 2016/02/23 11
  12. 12. #salesforcedevjp 2. カスタムメタデータを使った移⾏プログラム(1) 2016/02/23 12 旧システム Salesforce Log データ 本番 データ 1.  旧システムのデータをCSVデータとして抽出する 2.  CSVデータをSalesforce側に⽤意したLogデータオブジェクトに格納する 3.  Logデータを本番データ⽤オブジェクトにデータを変換する Apex ※エラーが あれば戻す ① ② ③
  13. 13. #salesforcedevjp 2. カスタムメタデータを使った移⾏プログラム(2) 2016/02/23 13 Log データ 本番 データ カスタム メタデータ From To aaa__c 1aaa__c bbb__c 2bbb__c ccc__c 3ccc__c •  カスタムメタデータにLogデータ側の フィールドAPIと、本番データ側の フィールドAPIのマッピングを定義する Logデータ側の フィールドAPI 本番データ側の フィールドAPI aaa__c bbb__c ccc__c …… XXX YYY ZZZ …… 1aaa__c 3ccc__c 2bbb__c …… XXX ZZZ YYY …… Log データ 本番 データ Apex •  Logデータと、カスタムメタデータから 本番データを⽣成する
  14. 14. #salesforcedevjp 3.  カスタムメタデータを使ったメリットとは? 2016/02/23 14
  15. 15. #salesforcedevjp 3. カスタムメタデータを使ったメリットとは? 2016/02/23 15 n  Logデータ -> 本番データ のマッピングを宣⾔的に定義できる ü  マッピング定義と、それを処理する部分を分離できる ü  マッピング定義は⾮エンジニアに任せることで分業する n  Sandbox -> 運⽤環境 に変更セットで送信できる ü  ⼿で運⽤環境にコピーするのは⾮効率かつトラブルの温床となる ü  ⾮エンジニアでも運⽤環境に反映できるようにする n  クエリしてもガバナ制限のリミットにカウントされない ü  ⼼理的に安⼼する
  16. 16. #salesforcedevjp 4.  最後に 2016/02/23 16
  17. 17. #salesforcedevjp 4. 最後に 2016/02/23 17 n  アプリケーションの「設定」と「コード」を分離する、という点で カスタムメタデータは有⽤ ü  リスト型のカスタム設定でも似たようなことはできるが、変更セットに追加 してデプロイ可能という点ではカスタムメタデータの⽅が有利と考える。 n  今回は受託案件での事例ではあるが、パッケージ開発でも⾮常に有⽤(きっと) ü  アプリケーション設定に関するデータをカスタム設定やカスタムオブジェク トに格納している場合には、カスタムメタデータに置き換えてパッケージで 配布すると、アプリケーションの配布にかかる⼿間を軽減できる。 n  Herokuが提唱している「The Twelve-Factor App」の 「Ⅲ.設定(設定を環境変数に格納する)」も併せて参考に 参考URL: http://12factor.net/config
  18. 18. #salesforcedevjp END 2016/02/23 18

×