FlexiPage
A Flexible Page is the home page for an app that appears as a menu item in the Salesforce1 navigation menu. FlexiPage represents the metadata associated with a Flexible Page.The FlexiPage component is only supported in Salesforce1. FlexiPage components have the suffix .flexipage and are stored in the flexipages folder.FlexiPage components are available in API version 29.0 and later.
Like Pagelayout, We can add Custom components in Flexipage however Flexipage will be visible only in Salesforce1 application in sidebar. We can use Flexipage to make custom Homepage for some product which will be accessed directly from Salesforce1.Till date Flexipage can be defined in XML file and then deploying it using Eclipse, Ant Migration tool, workbench or any other migration tool. There is no way to define Flexipage directly in Salesforce using point and click functionality.XML file for Flexipage must needs to have “flexipage” extension and should be saved in “flexipages” folder.
Organizing data in Salesforce1 with FlexiPages:-
On a flexipage, you can add a total of 25 components (mix of listview and recent item components).You can mix and match objects from different types here.The fields shown in your listviews are the first 6 columns of your listview.On a flexipage, you can basically add 2 types of components. You have a “listview” component and a “recent items” component.
More control over your navigation:-
This will basically give you the set of “recently-searched objects”. Meaning that your menu will be changing continuously as your users work more with (for example) campaigns or more with opportunities.
You can already choose which items appear on top by “pinning” objects in the search results page. But still, you can’t control which objects show up or not.In the mobile navigation, you then just remove the “Smart Search Items” and add your Flexible Page Tabs. Now you have full control over which objects appear in the menu, in which order, with the list views you want to give to your users!
But there's no Flexipage entry in the menu!
Ok, so it’s true, there is no graphical page-builder, as you would have with the regular page layout editor. However, you don’t need any real developer tools or skills and most of the work you can just copy-paste from the Salesforce documentation.
Just create a folder on your drive with the name you want to give to your flexipage. In that folder, create another folder called “flexipages”. Then, in the flexipages folder, create a file called <your_flexipage_name_here>.flexipage . (make sure the extension of the file is “.flexipage”) In your main folder, now also create a file called “package.xml”.
IMPLEMENTATION (Sample: copied from a code available on internet):-
Step1 : Defining XML file for Flexipage containing detail of components
Filename – “AccountFlexi.flexipage”
<?xml version="1.0" encoding="UTF-8"?>
<FlexiPage xmlns="http://soap.sforce.com/2006/04/metadata">
<flexiPageRegions>
<componentInstances>
<componentInstanceProperties>
<name>entityName</name>
<value>Account</value>
</componentInstanceProperties>
<componentInstanceProperties>
<name>filterName</name>
<value>AllAccounts</value>
</componentInstanceProperties>
<componentName>flexipage:filterListCard</componentName>
</componentInstances>
<name>main</name>
</flexiPageRegions>
<quickActionList>
<quickActionListItems>
<quickActionName>NewAccount</quickActionName>
</quickActionListItems>
</quickActionList>
<masterLabel>My new App</masterLabel>
</FlexiPage>
XML file for Flexipage must needs to have “flexipage” extension and should be saved in “flexipages” folder.
Supported components in Flexipage
- ListView identified by “flexipage:filterListCard”
- Recent Items identified by “flexipage:recentItems”
- Chatter Action identified by “quickActionListItems”
Note :
- For List View Supported objects include standard objects (Account, Campaign, Case, CollaborationGroup, Contact, Contract, Lead, LiveChatTranscript, Opportunity), custom objects.
- Recent Items are available only for Custom Objects.
Step 2 : Create package.xml
<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>AccountFlexi</members>
<name>FlexiPage</name>
</types>
<version>29.0</version>
</Package>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
<types>
<members>AccountFlexi</members>
<name>FlexiPage</name>
</types>
<version>29.0</version>
</Package>
Step3 : Deploying Flexipage
Create Zip file containing above both XML files.We need to deploy this zip file into Salesforce and for that, I am going to use Workbench. In Workbench, navigate to deploy, select your zip file and select “Single package”. Once you have successfully deployed above zip file, you will see below page conforming Success message.
Step4 : Creating Tab for Flexipage
Once deployment is done, we can create a new Tab for flexipage. Navigate to create new Tab and at bottom of page you will see option to select new tab for flexipage as shown in below image.
Step 5 : Configuring Navigation menu in Salesforce1
After creating flexipage tab, We have to tell Salesforce1 engine to display this tab in navigation menu of salesforce 1.
Navigate to “Setup | Administration Setup | Mobile Administration | Mobile Navigation” and add Flexipage to navigation.
Step 6 : Testing Flexipage / Flexipage in Action
Now login to Salesforce application from your mobile phone by launching Salesforce1 app or you can also launch it from your browser by navigating to this address “https://YOURINSTANCE.salesforce.com/one/one.app”.
Access Salesforce1 from Browser
Flexipage in Action
Flexipage Components in Salesforce1
Summer 14 changes :-
New FlexiPage Object
Represents a Flexible Page. A Flexible Page is the home page for an app that appears as a menu item in the Salesforce1 navigation menu. Includes access to the associated FlexiPage object in the Salesforce Metadata API.
The following field has been added:
- Description
The optional description text of the Flexible Page.
The following field has been updated:
- ComponentName
This field is now required
Flexible Pages
The flexipage:recentItems component now supports these objects, based on the specified properties.
• All custom objects
• All standard objects for which both of these conditions are true:
◊ A compact layout is defined for the object.
◊ The object is tracked in the most recently used objects list.
If an object is tracked in the most recently used objects list, either one or both of the LastViewedDate or LastReferencedDate fields is present.
The flexipage:filterListCard component now supports all list views that are associated with standard and custom objects except:
- Activity
- ContentVersion
- Task
- User
- UserProfile
*Reference : Content & Images from google.
No comments:
Post a Comment