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.

Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ

Salesforce World Tour Tokyo 2018

  • Login to see the comments

Swtt2018 sfdgr2 Developer Group ルーキー会が教える!次の一歩のための開発ノウハウ

  1. 1. [Salesforce World Tour Tokyo] Developer Group ルーキー会運営が教える! 次の一歩のための開発ノウハウ Salesforce Developer Group ルーキー会 2018年12月5日 1
  2. 2. 2 Salesforce Developer Group Rookies ぷれぜんつ!
  3. 3. アジェンダ&スピーカー 3 1 自動化プロセスの選び方と勘所 株式会社フレクト 小林 亮理(@ryosuke921186) Apexの神 2 開発者のナレッジ収集術 株式会社フレクト 齋藤 俊 Testの鬼 3 開発環境について 株式会社テラスカイ 須山 洋輔(@suyaman_jp) Service Cloud に愛されたい男
  4. 4. 4 自動化プロセスの選び方と勘所 開発者のナレッジ収集術 開発環境について こばやし
  5. 5. 自己紹介 名前:小林 亮理(リョウスケ) 所属:株式会社フレクト :@ryosuke921186 SF歴:7年くらい(最近は開発がメイン) 趣味:運動(ソフトテニス、ゴルフ、ジムで筋トレ)、寝る 5
  6. 6. 自動化プロセスとは 6 反復するビジネスプロセスを 自動化するためのツール
  7. 7. 開発機能 標準機能(ノンプログラミング) Salesforce上の自動化プロセスツール 7 Apexトリガ プロセス ビルダー ワークフロー Lightning フロー 承認プロセス 今日のターゲット
  8. 8. 正しく構築するために 8 それぞれの機能を知る そのうえで何を意識し選択するか
  9. 9. ワークフローでできること 9 1. Todo作成 2. 項目自動更新(自身と、主従の場合のみ親レコードが対象) 3. メール送信(メールアラート) 4. アウトバウンドメッセージ送信
  10. 10. プロセスビルダーでできること 10 1. レコード作成(Todoに限定されない) 2. レコード更新(自身、親、子レコードが対象) 3. メール送信(メールアラート) 4. クイックアクションの起動 5. Chatter投稿 6. フローの起動 7. 他プロセスビルダーの起動 8. Apexコール
  11. 11. Lightning フローでできること 11 1. レコード作成(Todoに限定されない) 2. レコード更新(なんでも) 3. レコード削除 4. メール送信 5. クイックアクションの起動 6. Chatter投稿 7. フローの起動 8. 他プロセスビルダーの起動 9. Apexコール 10. セッションベースの権限セットの利用
  12. 12. Apexトリガでできること 12 大体のことはできる
  13. 13. 起動タイミング 13 レコード 作成・更新時 ユーザ アクション スケジューリン グ起動 レコード 削除時 ワークフロー 〇 × △ × プロセス ビルダー 〇 × △ × Lightning フロー 〇 〇 × × Apexトリガ 〇 〇 〇 〇 https://developer.salesforce.com/docs/atlas.en-us.salesforce_vpm_guide.meta/salesforce_vpm_guide/process_which_tool.htm参考:
  14. 14. 起動タイミング 14 レコード 作成・更新時 ユーザ アクション スケジューリン グ起動 レコード 削除時 ワークフロー 〇 × △ × プロセス ビルダー 〇 × △ × Lightning フロー 〇 〇 × × Apexトリガ 〇 〇 〇 〇 https://developer.salesforce.com/docs/atlas.en-us.salesforce_vpm_guide.meta/salesforce_vpm_guide/process_which_tool.htm参考: レコードの日付項目を基準日にするため、任意の 時間ではスケジューリング起動できない
  15. 15. 15 全部Apexトリガで いいじゃん! Apexトリガ神
  16. 16. 16 全部Apexトリガで いいじゃん! Apexトリガ神 とはなりません
  17. 17. 17 基本的には標準機能を利用しましょう
  18. 18. 18 とはいえ、 標準か開発かを選択する場面は絶対に来ます
  19. 19. 正しく構築するために 19 それぞれの機能を知る そのうえで何を意識し選択するか
  20. 20. 使う機能を選択するうえで意識すること 20 保守性・拡張性 トランザクション処理順
  21. 21. 保守性・拡張性 • 統一感をもって実装をする – 類似機能はなるべくまとめる。 – 一部はプロセスビルダー、一部はトリガなどは避ける • 作成するシステムの今後も意識する 21
  22. 22. トランザクション処理順 1. 古いレコードをデータベースからロード(または、新しい挿入の初期化) 2. 新しいレコードの値で古い値を上書き 3. システムの入力規則 4. すべての before トリガを実行(EE / UE のみ) 5. カスタム入力規則 6. レコードをデータベースに保存(しかし、コミットされていない) 7. レコードをデータベースから再ロード 8. すべての afterトリガを実行 9. 割り当てルール 10. 自動応答ルール 11. ワークフロー ルール(一度だけ、afterトリガを実施) 12. プロセス 13. エスカレーション ルール 14. 積み上げ集計数式の値の更新(存在する場合) 15. データベースのコミット 16. コミット後のロジック(メールの送信) 22 https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_triggers_order_of_execution.htm参考:
  23. 23. まとめ 23 絶対的な正解はありません。 判断・選択するための知識(標準・開発双方) を持つことが重要です。
  24. 24. 24 自動化プロセスの選び方と勘所 開発者のナレッジ収集術 開発環境について さいとう
  25. 25. 開発者ナレッジ活用術 25
  26. 26. 自己紹介 株式会社フレクト クラウドインテグレーション事業部 マネージャー 齋藤 俊 • 普段は提案したりコード書いたり • SF歴5年目、SF-AWS連携が得意 • Salesforce認定資格7つ保有 • AWS 認定ソリューションアーキテクト – プロフェッショナル 26
  27. 27. Salesforceの開発ナレッジ5選 27 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  28. 28. Salesforceの開発ナレッジ5選 28 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  29. 29. 1. developer.salesforce.com 29 ドキュメント、ツール、コミュニティ など開発者に必要な情報・パスが網羅
  30. 30. 1. developer.salesforce.com 30 プロダクト Platform • Platform 概要 • AppExchange • Lightning Platform • Heroku • Mobile Salesforce Apps • Einstein Analytics • Community Cloud • Marketing Cloud • Pardot • Quip Build Faster, Smarter & Together • Lightning • Einstein • Salesforce DX リソース 学ぶ • 入門 • ドキュメント • Trailhead • Sample Gallery • Webセミナー • トレーニング & 認定資格 ツール • Salesforce extensions for VS Code • Salesforce CLI • Lightning Design System • セキュリティツール • その他のツール • コンポーネントライブラリ トピック別 • アプリケーションの配布 • アプリケーションロジック • アーキテクト • データベース • Lightning • モバイル • インテグレーション • セキュリティ • ユーザーインターフェース • ウェブサイト 充実した目次
  31. 31. 1. developer.salesforce.com 31 コミュニティ • Trailblazer Community • 開発者Chatterグループ • イベントカレンダー • コミュニティ主催イベント • Salesforce MVP • 日本の開発者グループ • 世界の開発者グループ • 開発者サクセスストーリー ブログ • Trailhead -トレイル - モジュール - プロジェクト - Superbadges - Trailblazers • ヘルプ • コミュニティに参加 始めよう • Salesforce Platform • Lightning Platform • Heroku • MuleSoft クイックスタートガイド Salesforce 開発センター • Lightning Developer Center • Mobile Developer Center • Heroku 開発センター • Desk.com </developers> • Pardot 開発者サイト • MuleSoft 開発者サイト 開発者リソース • モバイルサービス • Lightning Platform ドキュメント • Lightning Platform ダウンロード • Heroku ダウンロード • Learn Salesforce with Trailhead 詳細はこちら • Salesforce AppExchange • Salesforce Administrator • Salesforce.com ヘルプポータル
  32. 32. 1. developer.salesforce.com 32 ナレッジの場所を探したい時に 例 MC+ServiceCloud連携をしたいけど必 要になりそう情報をまとめて探したい 具体的な情報はここから各リンクへ飛べばOK
  33. 33. Salesforceの開発ナレッジ5選 33 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  34. 34. 2. SOAP API開発者ガイド 34 Salesforce との外部連携にまつわる ナレッジ/リファレンスのサイト https://developer.salesforce.com/docs/atlas.ja-jp.api.meta/api/sforce_api_quickstart_intro.htm
  35. 35. 2. SOAP API開発者ガイド 35 主要な標準オブジェクトのデータモデル
  36. 36. 2. SOAP API開発者ガイド 36 標準オブジェクトの項目情報
  37. 37. 2. SOAP API開発者ガイド 37 項目のAPI名や型などを参照して、開発者コンソールの クエリエディタで表示・レコード作成・編集したり
  38. 38. 2. SOAP API開発者ガイド 38 標準オブジェクトで開発するときは必須! 例 ・FieldServiceLightningなど多数の リレーションがある製品を使う ・取引開始後にリードの情報を参照したい
  39. 39. 2. SOAP API開発者ガイド 39 動作検証なら 開発者コンソールの代わりに API Explorer も便利 https://developer.salesforce.com/docs/api-explorer/sobject このサイト上から Trailhead環境などに REST APIを試せる
  40. 40. Salesforceの開発ナレッジ5選 40 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  41. 41. 3. Developer Documentation 41 製品、API、SDKなどの実装上の リファレンスが掲載されている https://developer.salesforce.com/docs/?filter_text=&service=All%20Services&select_type=&version=44.0&lang=ja-jp&sort=title
  42. 42. 3. Developer Documentation 42 Analytics REST API 開発者ガイド Analytics SAQL リファレンス Analytics ダッシュボード JSON リファレンス Analytics バインド開発者ガイド Analytics 外部データ API 開発者ガイド Analytics 外部データ形式リファレンス Analytics 拡張メタデータ (XMD) リファレンス Ant 移行ツールガイド Apex 開発者ガイド Bulk API 2.0 Bulk API 開発者ガイド Canvas 開発者ガイド Chatter REST API 開発者ガイド Financial Services Cloud アップグレードガイド Financial Services Cloud インストールガイド Financial Services Cloud クイックスタート Financial Services Cloud システム管理者ガイド Financial Services Cloud 開発者ガイド Identity 実装ガイド Industries REST API ISVforce ガイド Java 開発者環境の設定 Lightning コンポーネント開発者ガイド Live Agent REST API 開発者ガイド Live Agent 開発者ガイド Mobile SDK 開発ガイド Open CTI 開発者ガイド Platform Events Developer Guide (プラットフォームイベント開発者ガイド) REST API 開発者ガイド Salesforce Developer の制限および割り当てクイックリファレンス Salesforce DX 設定ガイド Salesforce DX 開発者ガイド Salesforce および Lightning プラットフォームのオブジェクトリファレンス Salesforce アプリケーション管理ガイド Salesforce アプリケーション開発者ガイド Salesforce コンソール開発者ガイド Salesforce セキュリティガイド Salesforce ナレッジ開発者ガイド SOAP API 開発者ガイド SOQL および SOSL リファレンス Visualforce のパフォーマンスのベストプラクティス Visualforce 開発者ガイド インテグレーションのパターンと実践 キャンペーン管理実装ガイド シングルサインオン実装ガイド ストリーミング API 開発者ガイド データローダガイド パブリッシャーおよびクイックアクション開発者ガイド メタデータ API 開発者ガイド レコードアクセス権に関連して Salesforce 内部で実行される処理 企業の規模に応じたレコードアクセス権の作成 共有モデルの仕組み 大量のデータを使用するリリースのベストプラクティス 掲載ドキュメントは 50以上・・・
  43. 43. 3. Developer Documentation 43 特定の調べ物が決まっていて、 ざっと概要を追いかけたいとき 例 ・AppEx化したい、SSOを実装したい
  44. 44. Salesforceの開発ナレッジ5選 44 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  45. 45. 4. ヘルプ 45 https://help.salesforce.com/articleView?id=salesforce_help_map.htm&type=5 詳細な仕様や制約、バージョンUPで の変更内容を追いかけるときに
  46. 46. 4. ヘルプ 46 https://help.salesforce.com/articleView?id=salesforce_help_map.htm&type=5 新しいヘルプホームページでは大項目 別に分類。PDF版も探しやすくなった
  47. 47. Salesforceの開発ナレッジ5選 47 1. developer.salesforce.com 2. SOAP API 開発者ガイド 3. Developer Documentation 4. ヘルプ 5. Trailhead
  48. 48. 5. Trailhead 48 https://trailhead.salesforce.com/ja/home 公式謹製の自学自習サイト 数百以上のコンテンツを収録
  49. 49. 5. Trailhead 49 時間を見つけて知識を増やしたいときや、 チームの知識レベルを揃えたいときに 例 ・来年受ける資格試験の自習用 ・プロジェクト用の Trailmix を作ってキックオフ時に展開
  50. 50. まとめ 50 1.developer.sales force.com ・情報収集の最初の入り口 ・「どこにその情報があるか」を探したいときに 2. SOAP API 開発 者ガイド ・標準オブジェクト開発時の検証用 ・開発者コンソールやAPI Explorer と一緒に使う 3. Developer Documentation ・特定製品やソリューションについて追いかける用 4. ヘルプ ・製品の仕様や制約を細かくみたいとき用 5. Trailhead ・普段の学習やチーム開発のオンボーディングに 他にもあるかもしれないけど、ここを押さえておけばOK
  51. 51. まとめ 51 ナレッジにたどり着ける時間を短縮すること が上達の近道!全部使いこなしましょう!
  52. 52. 52 自動化プロセスの選び方と勘所 開発者のナレッジ収集術 開発環境について すやま
  53. 53. 開発環境について 53
  54. 54. 自己紹介 54 【経歴】 2013/05 にテラスカイへ入社。 主に金融系や通信サービス系のコンタクトセン ターシステム構築を担当 ➢ SFDGルーキー会:運営メンバー ➢ Service Cloud Trailblazers:リーダー 株式会社テラスカイ クラウドインテグレーション本部 須山 洋輔 Service Cloud に愛されたい男
  55. 55. 開発環境は何を使ってますか? 55
  56. 56. 開発者コンソール? 56
  57. 57. 開発者コンソールで「できる」こと 57 DB操作 テスト実行 デバッグ アプリ開発 ログ生成 Salesforce 組織のアプリケーションの作成、デバッグ、およびテスト などに使用できる一連のツールを備えた統合開発環境 開発者コンソール
  58. 58. 開発者コンソールでは「できない」こと 58 バージョンの管理 競合解決 開発者コンソールには、バージョン管理や競合解決機能が存在しない
  59. 59. 次の一歩として 59 開発者コンソール + α な開発環境を構築し、次の一歩を踏み出す!! 開発者コンソール
  60. 60. メジャーな Salesforce 開発ツール 60 • 動作が軽い • 見た目がイケてる • MMの開発が終了 • 一昔前の主流 • 慢性的に動作が重い Sublime Text + MavensMate Eclipse + Force.com IDE Visual Studio Code + ForceCode 注:一部、個人的な主観を含みます • トレンド • すべての組織で利用可能 • 今後の機能拡張
  61. 61. 61 5分
  62. 62. 62 Visual Studio Code の 開発環境構築にかかる時間
  63. 63. Visual Studio Code の環境構築 ① Visual Studio Code をインストールする(約2分) ② 拡張機能「ForceCode」をインストールする(約3分) 63 Visual Studio Code と機能拡張「ForceCode」の導入は2ステップ はい。たったの2ステップで完了です。 詳しくはWEBで検索してください。
  64. 64. さらに次の一歩として 64 Visual Studio Code に拡張機能をさらに追加し、さらに次の一歩を! Visual Studio Code + ForceCode
  65. 65. Salesforce CLI 機能を追加する • 前提条件 ✓ Salesforce CLI がインストールされていること ✓ Java 8 JDK がインストールされていること • 拡張機能 – Salesforce CLI Integration – Apex – Visualforce – Lighting Component Framework – Apex Interactive Debugger 65 拡張機能「Salesforce Extension Pack」をインストールし、任意の組 織に接続し、Visual Studio Code からソースを取得して操作可能にする。 詳しくはWEBで 検索してください。
  66. 66. 開発ツールの性能評価 66 総合的に「Visual Studio Code」の評価が高いが、現状「開発者コン ソール」上でのみ実行可能な機能も存在しているため、開発ツールの 併用が必要。(クエリ関連の機能など) 開発ツール 機能性 操作性 拡張性 将来性 開発者コンソール ○ △ × ○ Eclipse + Force.com IDE △ × △ △ Sublime Text + MavensMate △ ○ ○ × Visual Studio Code ○ ○ ○ ○
  67. 67. まとめ 67 各開発ツールの機能を正しく理解し、使い分 けることにより、開発効率が向上!!
  68. 68. DGルーキー会に参加しよう 68
  69. 69. 次回ルーキー会 テーマ:SOQL基礎 + 応用 日時:12月20日(木) 場所:株式会社テラスカイ 69 https://sfdgr.connpass.com/event/111667/
  70. 70. この後の見どころ 13:45-14:45 ワークショップエリア 作ってみよう!今日から使えるVisualforce検索画面! 15:40-16:10 コミュニティブース 質問コーナー 70
  71. 71. お知らせ https://connpass.com/event/109851/ 日本のSalesforce コミュニティによる 合同イベント 2019年1月26日(土) 13:00~ ウィングアーク1st 本社(六本木)
  72. 72. Thank You! 72

×