This document provides an overview and instructions for implementing and customizing Pivotal CRM for the iPad application. It discusses the features and architecture of the app, server-side requirements, customization options like forms, navigation, and security permissions. It also addresses troubleshooting, known issues, and a Q&A section.
4. Pivotal CRM for iPad Overview
• Is a new mobile option from Pivotal
– Allows users to access Pivotal data from anywhere
• Has a client and server component
– Pivotal CRM for iPad App
– Pivotal Device Server
4
5. Pivotal CRM for iPad Features
• Mobile access to CRM information
– Create and manage CRM information from anywhere
– Search capabilities
– Read-only offline support
• iPad Dashboard: charts, URLs, and SRLs
• Integration with other Apps - Skype
• Use of native features (GPS, camera, signature
capture)
• Customizable using Pivotal Toolkit
– Flexible navigation and form layout
7. Sever Component Deployment Requirement
• Server Machine
– Windows Server 2008 Service Pack 2 / R2 / R2 SP1
– Microsoft Internet Information Services 7.0 or above
– .NET 4.0
• Pivotal CRM System
– SP10
• Pivotal Business Server 6.0.10 Hot Fix 1
• Pivotal Toolkit 6.0.10 Hot Fix 2
– Any Pivotal CRM application (CMS, FS or PCM)
8. Client Component Deployment Requirement
• iPad
– iOS 5.0.1 and above
– iPad 2 or 3 is recommended for better performance
• App download from the on App Store
• A one time download
10. Three-tier Architecture
• Data Layer - Includes the databases
– The Business Module contains the metadata for the iPad
application
• Active Forms
• SRLs
• Business Objects / Navigation
• Security permissions
• Business Logic Layer
– Pivotal Device Server
– Pivotal Business Server
• Presentation Layer
– Device Client - based on Appcelerator’s Titanium Framework
14. Installing The Device Server
• Provide:
– Pivotal Business Server URL
– Pivotal system name
15. Editing the Web.config File
• Location:
– Drive:Program FilesCDC SoftwarePivotal
CRMDeviceServer
• Settings:
– ServerUrl: Pivotal Business Server URL
– CRMSystemName: Pivotal CRM system name
– UserDomain: used when the user logs on without providing a
domain name
– File value: log file location
– Level value: logging level
16. Editing the Web.config File cont’d
• MaxSearchRecordCount:
– recommended <= 500 (note: currently is set to
2000, set to 500)
• CacheObjectExpiration:
– expiration time of the meta data used by the server
– Should be equal to Idle Time-out application pool
setting for consistent object cache expiration
– Minimum is 15 min
• maxRequestLength
17. Supporting Multiple Pivotal Systems
• Create a new folder for the second Pivotal Device
Server
• Copy all the contents - including sub-directories
• Grant Network Service Id (read, write) permission to
the App_Data folder
18. Supporting Multiple Pivotal Systems cont’d
• Create a new application pool
– Verify that the .Net Framework version is 4.0.30319
19. Supporting Multiple Pivotal Systems cont’d
• Add a new application on the Default Web Site
– provide the alias for the new Pivotal Device Server
• used in Device Client to connect to this application
http://<server IP address>/<deviceserver2>
– set the physical path to the new Device Server folder
– create a COM+ partition for the Pivotal system
– set the ServerURL and CRMSystemName parameters
in the web.config file
21. Troubleshooting the Pivotal Device Server
• Verify that the IIS server is functional and reachable
• Verify that the following URL is reachable and
displays a
22. Troubleshooting the Pivotal Device Server cont’d
• Error Code 500: verify that
– the Pivotal Device Server can reach the Pivotal Business
Server
– Pivotal Business Server is running
24. Customizable Objects
• Forms: Using the Active From Designer
• Navigation bar: Business Objects
• Dashboard: Portal categories and Portal Items
(queries, Graphs and URLs)
• Server Tasks (App Sever Rules): can be associated
with an Active Form
• Setting security permissions
26. Viewing Customization Changes on the iPad
• Stop the Pivotal Business Server
• Recycle the Device Server IIS application pool
• Do one of the following to get the latest meta data:
– ACC
– UFO
– Disable Caching of Business Module:
• Logout of App and log back in
27. Creating Active Forms
• Active Forms are design to include
– Tabs
• One Anchored Tab: appears as a header regardless of scrolling
• contain Segments
– Segments
• Primary: fields from the base table
• Secondary: references a linked by a Foreign Key to the form phase
table
• Segments can include:
– Fields
– Static text
– Disconnected fields
– Icons for a secondary
28. Creating iPad Navigation Elements
• Business Objects are used as navigation elements
• Appear as a button in the application tab group
menu
• Clicking a Business Object from the iPad displays
an associated Active Form
• One Business Object per table
– Needed only for forms accessible from the application
tab group menu
• An Icon must be specified
29. iPad Business Objects
• The selected Business Object appears
in the upper-left corner of the Active
Form title
– Reveals a Search Results List
31. Setting Searches for a Business Object
• Controlled by security
permissions
• Open parameter queries
are not supported
– Only available for Foreign
Key filters on forms
32. Search Results Lists
• The first two visible non-binary
columns are shown in the iPad
search panel
• The first field with data type
DeviceIcon displays an image
• All other non-binary columns are
not visible, but content is used
when filtering
• Any tables referenced in the
SRL, including formulas, must have
at least Read access.
34. Customizing the Dashboard
• One Portal Category defines all the
URLs, Queries, and Graphs
– Controlled by security on Portal Items
• Graphs and URLs are displayed in the top half of the
dashboard
• Queries are displayed in the bottom half
• Unpredictable which Dashboard is shown when more
than one is available to a user.
36. Creating a Portal Item - Graph
The token in the description determines the item location on
the Dashboard
37. Setting Security Permissions
• The Device Client connection type provided in
Pivotal Toolkit 6.0.10 is used to set all application
permissions except:
– View filters - LAN connection type
– Server Task - Client connection type
Note: Reports and Letter Express are currently not
supported.
38. Setting Security Permissions cont’d
• At least Read permission on the Tables
• Visible permissions for the Business Object
• Grant Visible, Default, and Scriptable permissions
for the SRL
• Grant Default and Scriptable permissions for the
Active Form
• If no read access assigned to the table, then the
Active Form & Business Object will not be displayed
in the application
– Check the Device Server log for an error
39. Setting Security Permissions cont’d
• Visible and Scriptable for queries
– Default: the query executed when a Business Object is clicked
41. Knows Issues
• DE28219: When a new record is added or an existing
record is edited, the changes are not reflected
immediately in the searches
• DE28321 The Icon token does not get applied for
Foreign Key and Attachment fields
• DE28344 The iPad application sometimes crashes
when an incorrect URL is specified in a Webview or
URL field.
• DE28345 The iPad client displays the hidden fields.
Workaround: Add the hidden field to a hidden segment
instead.
Notas del editor
Possible SP1 the option of disabling caching.Too much downloaded data crashes iPad.
Mobile Access to CRM Information Using the Pivotal CRM for iPad, users can access CRM data such as Contact, Company, and Opportunity information whenever required. The iPad’s large screen real-estate, ease of use, and portability makes it the ideal device for mobile business users. iPad Dashboard The iPad dashboard provides users with charts, URLs, and Search Result Lists to display relevant and summarized data. The dashboard displays information to the users that is most important to them. The dashboard is fully customizable and can be tailored by security group. End users also have the ability to configure the look and feel of their dashboard. Native iPad Capabilities Pivotal CRM for iPad takes advantage of the various features provided by the iPad such as the built-in camera and the GPS functionality. It also integrates with popular applications and websites which are accessible from the device. Mobility Development Platform Pivotal CRM for iPad is an extension of the Pivotal platform. It provides customers the flexibility to customize the iPad applications that meet the unique requirements of their business. The customizations are done using the Pivotal Toolkit.
Windows Server 2008 Service Pack 2 (Standard or Enterprise Edition, x86 or x64) Windows Server 2008 R2 (Standard or Enterprise Edition) Windows Server 2008 R2 Service Pack 1 (Standard or Enterprise Edition)
iOS 5.0.1 and above on any iPad. Note: It is recommended that you use 2nd or 3rd generation iPad as the memory is limited on the 1st generation iPad. Apple iTunes version 10.6 or above Note: This software from Apple Inc. is optional for downloading the Pivotal CRM for iPad application. You can also download the application directly from the iPad.
Pivotal CRM 6.0 for iPadAdministration Guide1-3Figure 1-1 Basic architecture for Pivotal CRM for iPadPivotal CRM for iPad has a three-tier architecture:• Data Layer - Includes the databases. The Business Modulecontains the metadata for the iPad application.• Business Logic Layer - Includes the Pivotal Device Server andthe Pivotal Business Server.• Presentation Layer - This includes the Device Client which isbased on Appcelerator’s Titanium Framework.
HTTP by default using port 80HTTPS by default using port 443Make sure this port is opened in Windows Firewall and Virus Protection Program Firewall Make sure PBS server can be reached by Device Server in DMZ environmentThe Pivotal Device Server listens to a request from the Device Client,processes it, and delegates it to the PBS. It then waits for theresponse from the PBS, packages the response and posts it to theDevice Client. Once the response is received by the Device Client, itdisplays the data on the iPad dynamically.The Pivotal Device Server can be installed in a DMZ so that it isdirectly accessible over the internet from the iPad, or it can beinstalled in the corporate LAN and accessed once the iPad is connectedto the corporate VPN.I spoke about this diagram in the iPad Overview video but here is a quick summary here so you know what we are installing.- The Device Server is required to run Pivotal CRM for iPad. We have called it Device because in the future we may want to support other devices like Android tablet or iPhone.- The Device Server listens to a request from the iPad, processes it and delegates it to the PBS. The Device Server waits for the response from the PBS, packages the response, and sends it to the iPad. The iPad displays the data dynamicallyWhat we will cover today is how to install the Device Server. How to troubleshoot: Possible issues: Problems connecting to the Device Server and Problems with connecting to PBS, Missing security settings and how to get the App on the iPad App
To work with the Pivotal CRM for iPad application, you need to firstinstall the Pivotal Device Server. The Pivotal Device Server is used forcommunication between the iPad client (Device Client) and the PBS.The word “device” is a generic term used to describe Smart Phone andTablet technologies. Currently, the Pivotal Device Server only supportsthe iPad client. In the future, other tablets such as iPhone and Andriodmay be supported.
ServerUrl Type the Pivotal Business Server URL details.CRMSystemName Type the Pivotal system name.UserDomain The default Windows domain used to authenticatea user to the PBS. This is used when the user logsinto the application with the Windows usernamewhile omitting the Windows domain.File value Here you can specify the log file location andname. By default, it is set to.\\App_Data\\Logs\\DeviceClientCRM.log. Thelog file contains useful status and troubleshootingInforlevel value Enter a value to set the logging levels. You havethe following logging levels:• All• Fatal• Error• Warn• Info• Debugmation, governed by the logging level.
MaxSearchRecordCount This value determines the maximum number ofrecords returned when you run a search forrecords within the application.Note: It is recommended that you do not set avalue higher than 500 for this parameter as it mayslow down the performance of the application.CacheObjectExpiration Specify the expiration time of the meta data usedby the server. The expiration time is applicableafter the last user activity.In IIS, right-click on the Pivotal Device ServerApplication pool and select Advanced Settings toview the Idle Time-out setting in minutes. Thecached system proxy expires in 20 minutes afterthe IIS goes into idle state.Note: The minimum expiration time is 15minutes. The Process Model Idle Time-out andCacheObjectExpiration should have the samevalue to ensure that cache object expiresconsistently.level value Enter a value to set the logging levels. You havethe following logging levels:• All• Fatal• Error• Warn• Info• DebugBy default,If you have skipped the settings on the Pivotal CRM Server Settingspage during installation, edit the Web.config file to provide the detailsrequired after the installation.Note: You can skip this page and provide the server details later by modifying theWeb.config file. Click Next to move to the next screen.Note: Always run the command prompt as administrator in a locked downenvironment. If not, the installation fails and the message “Product: PivotalDevice Server 6.0 -- Error 27501. This setup requires Administrator privilegesfor configuring IIS Virtual Roots” is displayed in the Event Viewer > Applicationsand Service Logs.How do I Install/Deploy Pivotal CRM for iPad?Pivotal CRM 6.0 for iPadAdministration Guide3-4You need to first set up the Server URL and CRM System Name. IISASP.Net applications by default have a maximum response size of4MB. Since attachments can be larger than this size, the productinstallation sets the maximum response size to 100MB by default. Thisis the maxRequestLengthoption in the Web.config file.If a response size is greater than this value, then an error is returnedto the application as follows: Server Communication Problem: Failed tointerpret the response text. See log for more information.
Hung:#1 – is that a bug in our installer? 500 should be the default limit I think.#4 – I can't remember the latest on this. Whatever is the answer, we should put into the admin guide! Manal:#2 – I think the issue is we think a value of 60 minutes makes more sense, but we cannot also alter the IIS setting automatically. Humg please confirm.#3 – Everything you look at on he iPad is cached on the iPad. That is how the offline mode works. In SP1 there will be a Web.Config setting that turns off Offline mode for all iPads. This is for customers who are concerned about data remaining on the iPad. I want to add that customers who are concerned about sensitive data on their iPad should focus on the security features Apple provide for the iPad:http://images.apple.com/ipad/business/pdf/iPad_Security_Overview.pdf. In particular the locking and remote wiping functions. Thanks,Martin From: Manal Samaan <msamaan@cdcsoftware.com>To: Martin Stiby <mstiby@cdcsoftware.com>Cc: Nathalie Thibault <nthibault@cdcsoftware.com>Subject: RE: iPad Thank you Martin. I have more questions:#1 Question: the Admin guide suggests that the MaxSearchRecordCount should be no more than 500, but the default is 2000 when I installed it? <add key="MaxSearchRecordCount" value="2000" /> #2 Question: the CacheObjectExpiration we recommend in the guide that it is equal to the Process Model Idle timeout which is by default 20, but we set it to 60? Any idea what the optimum is? #3 Question: is there a setting for caching on the iPad? #4 Question: Does a UFO shutdown the Device Server? Thank you, ManalFrom: Martin Stiby Sent: Thursday, May 10, 2012 3:43 PMTo: Manal SamaanCc: Nathalie ThibaultSubject: Re: iPad I should add that customers can add their own icons to such app urls, so they can look like the Facebook links we have in the out-the-box application. Martin StibyT: +1 604-699-8039 | C: +1 604-363-6932 | E: mstiby@cdcsoftware.com CDC Software: The Customer-Driven Company™ From: Martin Stiby <mstiby@cdcsoftware.com>To: Manal Samaan <msamaan@cdcsoftware.com>Cc: Nathalie Thibault <nthibault@cdcsoftware.com>Subject: Re: iPad Hi Manal, Out of the box, you can dial contacts through Skype and jump to their Facebook pages from our app. But you can also launch any app that has its own URL schema, and pass it our app data. A reasonable list of apps that allow integration this way is here: http://wiki.akosma.com/IPhone_URL_SchemesWe intend to have our own schema too, so other apps (and web urls) can launch the Pivotal/Saratogo app, much like shortcuts.Cheers,Martin Martin StibyT: +1 604-699-8039 | C: +1 604-363-6932 | E: mstiby@cdcsoftware.com CDC Software: The Customer-Driven Company™ From: Manal Samaan <msamaan@cdcsoftware.com>To: Martin Stiby <mstiby@cdcsoftware.com>Subject: iPad Hi Martin, Can you think of an example of how our iPad app integrates with other apps, it is in the key features…. Thank you, Mananl
To Troubleshoot the Pivotal Device Server1 Firstly, ensure that the IIS is functional. To check this, open anyweb browser and enter the URL http://system123. You should seeNote: Ensure that the newly created application pool is using .Net Framework version4.0.30319 or above. Also, the Managed pipeline mode should be set toIntegrated and the check box for Start application pool immediately shouldbe selected.Note: The alias is used in Device Client to connect to this application. For example,http://<server IP address>/deviceserver2.How do I Install/Deploy Pivotal CRM for iPad?an IIS 7 welcome page. If not, you need to resolve the IISproblem.2 If you do see the IIS 7 welcome page, then in the web browserenter the URL http://system123/PivotalDeviceServer/App/. If thePivotal Device Server is set up correctly, then you should see awelcome message. If you do not see the welcome message, then itcould be a .NET framework issue and a corresponding errormessage is displayed.3 If all the above steps are working fine, then check the PivotalDevice Server log for any error messages. The DeviceServer loglocation is C:\\Program Files\\CDC Software\\PivotalCRM\\DeviceServer\\App_Data.4 If you see Error Code 500, usually it means the Pivotal DeviceServer is having problems connecting to the PBS or PBS failed torun. Ensure that the PBS has started and ePower is up and you areable to connect to it. Also, you may look into the Windows eventlog for more information.5 For the PivotalDeviceServer App pool advanced settings in the IIS,the Process Model Identity should be set to NetworkService. If youdecide to change to some other account, ensure that theDeviceServerApp_Data folder present in C:\\Program Files\\CDCSoftware\\Pivotal CRM\\DeviceServer\\ is read/write enabled by theProcess Model Identity.
Anchored Tab Using the Anchored Tab lets you displayinformation that is always visible in anon-scrollable header on the form.Tabs Most fields on a form should go into thescrollable region below the header. Createa non-anchored tab to define the segmentsin the scrollable region. If multiple tabs aredefined in the Active Form Designer, thefields are merged into one scrollable region,starting with the fields in the first tab in leftto right order.See AddingTabs on page4-6.Segments Depending on the table referenced, formsegments are any of the following:• PrimaryThe form segment references the sametable as the form itself.• SecondaryThe form segment references a differenttable, linked by a Foreign Key drop-downlist.Note: You can add the following elementswithin a segment:• Fields• Static text• Disconnected fields• Icons to a secondarySee AddingSegments onpage 4-10.Fields Used to provide a display and data entrymechanism for table fields from the primaryor secondary table associated with theForm.
A Business Object icon is mandatory. The drop-down list of icons is a legacy list hard-coded into Toolkit and can be ignored and if selected it does not display because it does not exits. Specify the name of an image you want to use or type in any string from the P6 icons.. If either of these does not match an image, then a default icon is used. Not all Active Forms have to have a Business Object. You only need to create a Business Object, if you want to access the form directly from the application tab group menu or if you want to get to the record from a search dashboard item.