FULL ENJOY - 9999218229 Call Girls in {Mahipalpur}| Delhi NCR
Point, Click, Enhance Salesforce1 Mobile App
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 doesn’t 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 wife’s birthday – May be you need a flower shop
Urgently!!
3.
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
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
Make sure this is going to be an example app of s1
Play music itself
Move order for flexipages -aaps
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 can’t be deleted
Etc.
= new Task( Description = taskDescription,
Priority = taskPriority, Status = taskStatus, Subject = taskSubject,
IsReminderSet = true, ReminderDateTime = System.now(),ownerId = owner);