際際滷

際際滷Share a Scribd company logo
Point, Click, Enhance the
Salesforce1 Mobile App
Principal Developer, Product Innovation at FinancialForce.com
Force.com MVP
@CarolEnLaNube
Imagine
What would you need if?
 You are travelling  May be you need a Hotel
 You are new in town and the door doesnt close  May be you need a locksmith
 You are hungry  May be you need a restaurant or would like to order food
How many apps would you need?
 You forgot that today is your wifes birthday  May be you need a flower shop
Urgently!!
PCE-Salesforce1MobileApp
Custom
Objects
How ? Lets build it
We will use: Custom Objects:
 ServiceProvider__c
 Main object
 QuoteRequest__c
 Master-Detail relationship to
ServiceProvicer__c
 Quote__c
 Lookup relationship with
ServiceProvider__c
 Order__c
 Lookup relationship to Quote__c
 Lookup relationship with
ServiceProvider__c
 Review__c
 Master-Detail relationship with
ServiceProvider__c
Custom
Objects
How ? Lets build itd
We will use: Flexipage:
Flexipages
What is a Flexipage?
 Lets say by the moment that it is a
handy container 
Why are we using a Flexipage?
 We would like to have within the
same UI all the different Items
related to Services or Restaurants
or
 Have all the related objects -
records together in one UI
Custom
Objects
How ? Lets build it
We will use: Flexipage:
Flexipages
 Where can we find them? Setup->Create->Tabs
 What could we have in a Flexipage?
 Filtered List views
 Recent Items
 Global Chatter Publisher Actions
 Flexipages will be only
for mobile
 then what is a Flexipage? Metadata
.flexipage
Custom
Objects
How ? Lets build it
We will use:
Flexipages
Custom
Objects
How ? Lets build it
We will use:
Flexipages
Quick
Actions
Chatter Publisher Actions:
Groups:
 Global
 Object Specific
Standard Publisher Actions
 Create Action - like create Service Provider
 Log a Call Action - allows the user to log customer interactions
 Update Actions - like update Order
Custom Publisher Actions - Programmatic - think how implement in mobile!!
DF 13 session:
Practical Induction to Chatter Publisher Actions by @stephenwillcock
Actions that you can Execute here and
Now!
Custom
Objects
How ? Lets build it
We will use:
Flexipages
Quick
Actions
Chatter Publisher Actions:
They are linked to Chatter, therefore in order to
use them we need to enable them
Mobile
Desktop
I love them!!
Custom
Objects
How ? Lets build it
We will use:
Flexipages
Quick
Actions
Mobile
Cards
Mobile cards:
What are Mobile Cards?
Basically it is a new section that will be
render only in mobile
What will this section contain?
 Extended Lookups
 Components
 Visualforce pages: they will display
only if if Available for for Salesforce
mobile apps checkbox is selected
Custom
Objects
How ? Lets build it
We will use:
Flexipages
Quick
Actions
Mobile
Cards
Some Code
=
Enhance 
Enhance:
1. - Some specific validations
2. - Send Notifications and Mentions to different users:
 ConnectApi.MentionSegmentInput
3.  Create Tasks when Service provider has finish the work in order to made the
payment and review the service.
 Task newTask
4.- Possibility to create your own UIs using VF + JS / JQuery / Sencha Touch/ Angular
JS
and now
How could I allow the people to use it?
Using Communities!!!
 Self registration page to be able to join the community
 You can check the best reviews and search for what you need
Imagine: S1 + Communities
Salesforce
1
Demo!!
&& Video Demo!
Links
 Salesforce1 for Visualforce Developers by @bob_buzzard
 Practical Induction to Chatter Publisher Actions by @stephenwillcock
 Visualforce in Salesforce1: Optimizing your User Interface for Mobile by @dcarroll and
@metadaddy
 Salesforce1 Developer Guide
 Style Guide
 OneStarter by @joshbirk
 Schema package
 Community Example App: http://www.slideshare.net/CarolEnLaNube/point-clickenhance-
thesalesforce1mobileapp
Salesforce
1
Q&A  as I always say Easy questions please 
@CarolEnLaNube

More Related Content

PCE-Salesforce1MobileApp

  • 1. Point, Click, Enhance the Salesforce1 Mobile App Principal Developer, Product Innovation at FinancialForce.com Force.com MVP @CarolEnLaNube
  • 2. Imagine What would you need if? You are travelling May be you need a Hotel You are new in town and the door doesnt close May be you need a locksmith You are hungry May be you need a restaurant or would like to order food How many apps would you need? You forgot that today is your wifes birthday May be you need a flower shop Urgently!!
  • 4. Custom Objects How ? Lets build it We will use: Custom Objects: ServiceProvider__c Main object QuoteRequest__c Master-Detail relationship to ServiceProvicer__c Quote__c Lookup relationship with ServiceProvider__c Order__c Lookup relationship to Quote__c Lookup relationship with ServiceProvider__c Review__c Master-Detail relationship with ServiceProvider__c
  • 5. Custom Objects How ? Lets build itd We will use: Flexipage: Flexipages What is a Flexipage? Lets say by the moment that it is a handy container Why are we using a Flexipage? We would like to have within the same UI all the different Items related to Services or Restaurants or Have all the related objects - records together in one UI
  • 6. Custom Objects How ? Lets build it We will use: Flexipage: Flexipages Where can we find them? Setup->Create->Tabs What could we have in a Flexipage? Filtered List views Recent Items Global Chatter Publisher Actions Flexipages will be only for mobile then what is a Flexipage? Metadata .flexipage
  • 7. Custom Objects How ? Lets build it We will use: Flexipages
  • 8. Custom Objects How ? Lets build it We will use: Flexipages Quick Actions Chatter Publisher Actions: Groups: Global Object Specific Standard Publisher Actions Create Action - like create Service Provider Log a Call Action - allows the user to log customer interactions Update Actions - like update Order Custom Publisher Actions - Programmatic - think how implement in mobile!! DF 13 session: Practical Induction to Chatter Publisher Actions by @stephenwillcock Actions that you can Execute here and Now!
  • 9. Custom Objects How ? Lets build it We will use: Flexipages Quick Actions Chatter Publisher Actions: They are linked to Chatter, therefore in order to use them we need to enable them Mobile Desktop I love them!!
  • 10. Custom Objects How ? Lets build it We will use: Flexipages Quick Actions Mobile Cards Mobile cards: What are Mobile Cards? Basically it is a new section that will be render only in mobile What will this section contain? Extended Lookups Components Visualforce pages: they will display only if if Available for for Salesforce mobile apps checkbox is selected
  • 11. Custom Objects How ? Lets build it We will use: Flexipages Quick Actions Mobile Cards Some Code = Enhance Enhance: 1. - Some specific validations 2. - Send Notifications and Mentions to different users: ConnectApi.MentionSegmentInput 3. Create Tasks when Service provider has finish the work in order to made the payment and review the service. Task newTask 4.- Possibility to create your own UIs using VF + JS / JQuery / Sencha Touch/ Angular JS
  • 12. and now How could I allow the people to use it? Using Communities!!! Self registration page to be able to join the community You can check the best reviews and search for what you need Imagine: S1 + Communities
  • 14. Links Salesforce1 for Visualforce Developers by @bob_buzzard Practical Induction to Chatter Publisher Actions by @stephenwillcock Visualforce in Salesforce1: Optimizing your User Interface for Mobile by @dcarroll and @metadaddy Salesforce1 Developer Guide Style Guide OneStarter by @joshbirk Schema package Community Example App: http://www.slideshare.net/CarolEnLaNube/point-clickenhance- thesalesforce1mobileapp
  • 15. Salesforce 1 Q&A as I always say Easy questions please @CarolEnLaNube

Editor's Notes

  • #2: Make sure this is going to be an example app of s1
  • #3: Play music itself
  • #7: Move order for flexipages -aaps
  • #12: The user that gets the quote is not allowed to change the price received The order record is only updatable by the Service owner If the service provider has orders cant be deleted Etc. = new Task( Description = taskDescription, Priority = taskPriority, Status = taskStatus, Subject = taskSubject, IsReminderSet = true, ReminderDateTime = System.now(),ownerId = owner);