SlideShare a Scribd company logo
Visualforceをつかってみよう
Developer Forceをフォローください
@developerforcej/ #forcedotcomjp
Developer Force Japan
+Developer Force Japan
Developer Force Japan
Developer Force Group
スピーカー
岡本 充洋
ディベロッパープログラムマネージャ
@mitsuhiro
Safe Harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of
the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking
statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service
availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future
operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use
of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our
service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth,
interruptions or delays in our Web hosting, breach of our security measures, the outcome of intellectual property and other litigation, risks associated with
possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and
motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-
salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial
results of salesforce.com, inc. is included in our annual report on Form 10-Q for the most recent fiscal quarter ended July 31, 2012. This documents and
others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be
delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available.
Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
Visualforceを使ってみよう – アジェンダ
§  Visualforceとは
§  Visualforceを使ってみる
§  更に活用するには
Visualforceを使ってみよう – アジェンダ
§  Visualforceとは
§  Visualforceを使ってみる
§  更に活用するには
Visualforceとは?
§  カスタム画面をつくるための機能
§  Force.com 上に全て保存される
§  一体感のあるUX(ユーザエクスペリエンス)
§  社内 & 社外向けの画面に利用可能
§  モバイルなど新たなデバイス用のカスタマイズ
§  Web技術を活用
Model View Controller (MVC) パターン
モデル コントローラ
ビュー
Model View Controller (MVC) パターン
業務データ 処理内容
画面
Model View Controller (MVC) パターン
標準もしくは
カスタムオブジェクト
標準コントロー
ラ及びApex
Visualforce
#forcewebinar
MVC例
で実際
Visualforceは何が
できるの?
リッチなユーザ・インタフェース
Webアプリケーション
マッシュアップ
モバイル・アプリ
例 : DeveloperForce, AppExchange
Visualforceで何ができるのか?
カスタム
ページ
ダッシュボード
コンポーネント
カスタム
タブ
チャート
ページ
への埋め込み
カスタム
ロジック
Email
テンプレート
Visualforceを使ってみよう – アジェンダ
§  Visualforceとは
§  Visualforceを使ってみる
§  更に活用するには
Visualforce マークアップとは
§  Visualforce タグ
–  100種類以上の標準コンポーネント
–  カスタムコンポーネント
§  以下の標準的なWebテクノロジを利用可能:
–  CSS
–  JavaScript
–  HTML
–  Flash
–  その他のWebベースのテクノロジ
Visualforceを開発するには
§  4つの方法
–  設定画面、開発モード
•  初心者向け
–  開発者コンソール
•  熟練者向け
–  Force.com IDE
•  エンジニア向け
https://ap.salesforce.com/apex/vfpage
Viusalforce
ページ名
apexディレクトリ
Visualforceへのアクセス
<apex:page >
最もシンプルVisualforceの書き方
</apex:page>
・・・(ここに表示したい画面を作る)
apex: もしくは chatter:
プレフィックス
コンポーネント名
(例: tables, repeats,
forms, など)
コンポーネントに
定義された属性
フィールドの参照
(“.”ドットを使う)
オブジェクト及び変数に
データバインディング
属性を定義するための
フィールド
(場合によっては
文字リテラルも可能)
<apex:outputField value=“{!Restaurant__c.Address__c}”>
標準コンポーネントの基本的な書き方とは?
Visualforceコントローラ
§  データへのアクセスを提供する
§  画面とデータのヒモ付を行う
§  標準コントローラ
–  通常のページと同じ機能を持つ
•  Save, delete, 項目へのアクセスなど
§  カスタムコントローラ
–  Apexで記述
–  標準の挙動を上書き
–  コントローラ拡張
<apex:page standardConroller=“Restaurant__c” >
標準コントローラの使い方は?
extensions=“ext1, ext2”
ページの
トップに
標準のCRUD操作用の
コントローラ
もしカスタムのコントローラ
を使用したい場合
controller=“controllerName”
標準、もしくはカス
タムオブジェクト
カスタムのロジックを
標準コントローラに
追加する場合
オプション
<apex:page standardConroller=“Restaurant__c”>
最もシンプルなコントローラの利用方法
</apex:page>
・・・(ここに表示したい画面を作る)
どこにVisualforceは埋め込めるか
§  Force.com上の様々な場所へ埋め込める
–  カスタムページ
–  サイドバー
–  カスタムボタン、リンク
–  ページレイアウト
–  ダッシュボード
–  パブリッシャアクション
–  などなど
サイドバーへの埋め込み
§  お知らせメニュー
Visualforceページ
ホームタブの
左側にVisualforce
ページ
を表⽰示させる
Visualforceページ作成	
1	
3	
2
カスタムコンポーネント作成	
1	
3	
2	
4	
<iframe height="50" src="/apex/home_tab_left" width="100%"></iframe>	
home_̲tab_̲leftは先ほど作成した
Visualforce名
ページレイアウト編集	
1	
3	
2	
4	
先ほど作成したコンポーネント名は左
側ですので、こちらにチェック
1	
商談一括更新リストビュー
<apex:page standardController="Opportunity" recordSetVar="opportunities" tabStyle="Opportunity" sidebar="false">
<apex:form >
<apex:pageBlock >
<apex:pageMessages />
<apex:pageBlockButtons >
<apex:commandButton value="保存" action="{!save}"/>
</apex:pageBlockButtons>
<apex:pageBlockTable value="{!selected}" var="opp">
<apex:column value="{!opp.name}"/>
<apex:column headerValue="フェーズ">
<apex:inputField value="{!opp.stageName}"/>
</apex:column>
<apex:column headerValue="完了予定日">
<apex:inputField value="{!opp.closeDate}"/>
</apex:column>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:form>
</apex:page>
Visualforceページ作成	
1	
3	
2	
ソースコード
https://gist.github.com/10338253
カスタムボタン作成	
1	
3	
2
検索レイアウト編集	
1	
3	
2
<apex:inputField value =“{!opp.stagename}” >
データへのアクセス
{!  ここにフィールドを記述  }
の形式でアクセスする
Visualforce
ダッシュボードへの埋め込み
Visualforceページ	
1	
3	
2	
<apex:page standardController="Case" recordSetvar="cases">
<apex:pageBlock >
<apex:form id="theForm">
<apex:panelGrid columns="2">
<apex:outputLabel value="View:"/>
<apex:selectList value="{!filterId}" size="1">
<apex:actionSupport event="onchange" rerender="list"/>
<apex:selectOptions value="{!listviewoptions}"/>
</apex:selectList>
</apex:panelGrid>
<apex:pageBlockSection columns="1">
<apex:dataList var="c" value="{!cases}" id="list">
{!c.subject}
</apex:dataList>
</apex:pageBlockSection>
</apex:form>
</apex:pageBlock>
</apex:page>	
ソースコード
https://gist.github.com/10338397
ダッシュボード	
1	
2	
ドラッグ&ドロップ
4	
3
ダッシュボード	
1	
2
Visualforceを使ってみよう – アジェンダ
§  Visualforceとは
§  Visualforceを使ってみる
§  更に活用するには
更に活用するには?
§  既にある高度なソースコードをコピーして利用
–  自身の業務にフィットさせたい部分だけをカスタマイズ
–  コードと違うオブジェクトで使いたい場合にカスタマイズ
Google Mapの埋め込み
§  GoogleMap
Visualforce
Google Mapの埋め込み
§  表示したいオブジェクトに変える
https://gist.github.com/10338691
まとめ
§  VisualforceでForce.comの画面をカスタマイズする
–  サイドバー
–  カスタムボタン
–  ページレイアウト
–  ダッシュボード
–  etc.
§  全て理解できなくても、コピー + 少し変更でも活用可能
Q & A
岡本 充洋
ディベロッパープログラムマネージャ
@mitsuhiro
セミナー開催日から3ヶ月
トレーニングコース
どれでも
5%OFF!割引適用方法
各コースのWebページにあるお申込みフォームのプロモーションコード欄に右記の
コードを必ず入力してお申し込みください
Ø プロモーションコードのご記入がない場合は割引を適用致しかねます
Ø セミナー開催日から3ヶ月以内の定期集合研修のお申込みに限ります
Ø 他の割引との併用はできません
JP-10314861D  
+
セミナー開催月日
	
エデュケーションサービス部  
TEL  :  03-‐‑‒4222-‐‑‒0710
URL  :  www.salesforce.com/jp/training
  Email  :  jtraining@salesforce.com                              
例例)4⽉月1⽇日のセミナーの場合
「JP-‐‑‒10314861D0401」
Platformセミナーご参加特典!
Developer Forceをフォローください
@developerforcej/ #forcedotcomjp
Developer Force Japan
+Developer Force Japan
Developer Force Japan
Developer Force Group
Visualforceを使ってみよう

More Related Content

PDF
Salesforceの開発についてちょっと詳しくなる
PPTX
Salesforceの標準オブジェクトについて復習してみた
PPTX
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
PDF
はじめようLightningコンポーネント
PPTX
SPAセキュリティ入門~PHP Conference Japan 2021
PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
PDF
マルチテナント化で知っておきたいデータベースのこと
PPTX
Lightning Knowledgeをちょっとだけ触ってみた
Salesforceの開発についてちょっと詳しくなる
Salesforceの標準オブジェクトについて復習してみた
SalesforceにおけるCDC(変更データキャプチャ)の実装・活用法について
はじめようLightningコンポーネント
SPAセキュリティ入門~PHP Conference Japan 2021
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
マルチテナント化で知っておきたいデータベースのこと
Lightning Knowledgeをちょっとだけ触ってみた

What's hot (20)

PDF
データローダについてちょっと詳しくなる
PPTX
基本設計+詳細設計の書き方 社内勉強会0304
PDF
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
PPTX
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
PPTX
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
PDF
テスト文字列に「うんこ」と入れるな
PDF
3分でわかるAzureでのService Principal
PDF
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
PDF
Laravel の paginate は一体何をやっているのか
PDF
シリコンバレーの「何が」凄いのか
PDF
組織にテストを書く文化を根付かせる戦略と戦術
PPTX
[社内勉強会]ELBとALBと数万スパイク負荷テスト
PDF
認定テクニカルアーキテクト取ろうぜ
PDF
Keycloak拡張入門
PDF
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
PDF
What's new in Spring Batch 5
PDF
認定 Integration Architecture デザイナー試験を復習してみた
PPTX
Salesforce開発で気を付けたいポイント
PPTX
さくっと理解するSpring bootの仕組み
データローダについてちょっと詳しくなる
基本設計+詳細設計の書き方 社内勉強会0304
LogbackからLog4j 2への移行によるアプリケーションのスループット改善 ( JJUG CCC 2021 Fall )
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
テスト文字列に「うんこ」と入れるな
3分でわかるAzureでのService Principal
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
インフラエンジニアの綺麗で優しい手順書の書き方
Laravel の paginate は一体何をやっているのか
シリコンバレーの「何が」凄いのか
組織にテストを書く文化を根付かせる戦略と戦術
[社内勉強会]ELBとALBと数万スパイク負荷テスト
認定テクニカルアーキテクト取ろうぜ
Keycloak拡張入門
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
What's new in Spring Batch 5
認定 Integration Architecture デザイナー試験を復習してみた
Salesforce開発で気を付けたいポイント
さくっと理解するSpring bootの仕組み
Ad

Viewers also liked (13)

PDF
超初心者向けForce.com入門
DOCX
Visualforceとは
PDF
Salesforce1 Platform 入門 2014 〜改めて基本から理解するforce.com〜
PDF
7 Habits of Highly Efficient Visualforce Pages
PDF
ウランバ
PDF
Salesforce1入門
PDF
Jp visualforce in salesforce1
PDF
Force.com canvas入門ガイド
KEY
第3回Twitter API勉強会 - ストリーミングAPI #twtr_hack
PDF
ReactとSeleniumの幸せな関係
PPTX
0からわかるAlfresco
PDF
3 Things Every Sales Team Needs to Be Thinking About in 2017
PDF
How to Become a Thought Leader in Your Niche
超初心者向けForce.com入門
Visualforceとは
Salesforce1 Platform 入門 2014 〜改めて基本から理解するforce.com〜
7 Habits of Highly Efficient Visualforce Pages
ウランバ
Salesforce1入門
Jp visualforce in salesforce1
Force.com canvas入門ガイド
第3回Twitter API勉強会 - ストリーミングAPI #twtr_hack
ReactとSeleniumの幸せな関係
0からわかるAlfresco
3 Things Every Sales Team Needs to Be Thinking About in 2017
How to Become a Thought Leader in Your Niche
Ad

Similar to Visualforceを使ってみよう (20)

PDF
JavascriptとVisualforceの統合Webinar
PDF
Salesforce Agile 事例
PDF
Salesforce 開発入門
PDF
Lightning Experience 時代のフロー開発
PPTX
Salesforce1開発(s1 tour)
PDF
さあ、はじめよう。Application Partner
PDF
活躍中のアプリケーションから紐解くForcecom
PDF
食わず嫌いの為のSalesforce1 Platform入門
PDF
Spring '15 開発者向け新機能Webinar
PDF
Spring '14リリース開発者向け新機能
PDF
Go Faster with Lightning : Salesforce Lightning 概要Webinar
PDF
Dreamforce15 報告など
PDF
Salesforce1モバイルアプリケーション開発概要
PDF
Salesforce1 PlatformアーキテクチャWebinar
PDF
実践!カスタマー エクスペリエンス 向上のためのアプリ開発 後編
PDF
Salesforce Identityによる企業のアイデンティティ管理
PDF
Spring16 リリース開発者向け新機能Webセミナー
PDF
Jp trgger and_custom_button_forsuperbeginner
PDF
ビジネスアイデアを最速で形にできるApp exchange
PDF
初めてのHeroku Webinar
JavascriptとVisualforceの統合Webinar
Salesforce Agile 事例
Salesforce 開発入門
Lightning Experience 時代のフロー開発
Salesforce1開発(s1 tour)
さあ、はじめよう。Application Partner
活躍中のアプリケーションから紐解くForcecom
食わず嫌いの為のSalesforce1 Platform入門
Spring '15 開発者向け新機能Webinar
Spring '14リリース開発者向け新機能
Go Faster with Lightning : Salesforce Lightning 概要Webinar
Dreamforce15 報告など
Salesforce1モバイルアプリケーション開発概要
Salesforce1 PlatformアーキテクチャWebinar
実践!カスタマー エクスペリエンス 向上のためのアプリ開発 後編
Salesforce Identityによる企業のアイデンティティ管理
Spring16 リリース開発者向け新機能Webセミナー
Jp trgger and_custom_button_forsuperbeginner
ビジネスアイデアを最速で形にできるApp exchange
初めてのHeroku Webinar

More from Salesforce Developers Japan (20)

PDF
Salesforce DX の始め方とパートナー様成功事例
PDF
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
PDF
Einstein Analyticsでのデータ取り込みと加工
PDF
GMOペパボのエンジニアが語るHeroku活用ノウハウ
PDF
Salesforce Big Object 最前線
PDF
Salesforce 開発者向け最新情報 Web セミナー 〜 TrailheaDX での新発表 & Summer '19 リリース新機能 〜
PDF
Einstein Next Best Action を試してみよう
PDF
Salesforce DXとLightning Web ComponentsでモダンSalesforceアプリ開発
PDF
Lightning時代のService Cloud概要とカスタマイズ
PDF
Spring '19リリース開発者向け新機能セミナー
PDF
業務課題の解決に、データ分析・予測結果の活用を - Einstein Discovery / Einstein 予測ビルダーのご紹介 -
PDF
Einstein analyticsdashboardwebinar
PDF
MuleSoft Anypoint Platformのコンセプトとサービス
PDF
IoTで成功を収めるための製品と戦略 〜 Salesforce IoT 〜
PDF
Heroku seminar winter19
PDF
Dreamforce18 update platform
PDF
Winter '19 開発者向け新機能
PDF
Lightning時代のレポート ダッシュボード & Flow 最前線
PDF
Summer18 開発者向け新機能Webセミナー
PDF
使ってみよう、Salesforce Big Object!
Salesforce DX の始め方とパートナー様成功事例
データ連携の新しいカタチ - 変更データキャプチャ/プラットフォームイベントを MuleSoft Anypoint Platform と組み合わせて試してみよう
Einstein Analyticsでのデータ取り込みと加工
GMOペパボのエンジニアが語るHeroku活用ノウハウ
Salesforce Big Object 最前線
Salesforce 開発者向け最新情報 Web セミナー 〜 TrailheaDX での新発表 & Summer '19 リリース新機能 〜
Einstein Next Best Action を試してみよう
Salesforce DXとLightning Web ComponentsでモダンSalesforceアプリ開発
Lightning時代のService Cloud概要とカスタマイズ
Spring '19リリース開発者向け新機能セミナー
業務課題の解決に、データ分析・予測結果の活用を - Einstein Discovery / Einstein 予測ビルダーのご紹介 -
Einstein analyticsdashboardwebinar
MuleSoft Anypoint Platformのコンセプトとサービス
IoTで成功を収めるための製品と戦略 〜 Salesforce IoT 〜
Heroku seminar winter19
Dreamforce18 update platform
Winter '19 開発者向け新機能
Lightning時代のレポート ダッシュボード & Flow 最前線
Summer18 開発者向け新機能Webセミナー
使ってみよう、Salesforce Big Object!

Visualforceを使ってみよう