Deploying Salesforce Globally

14,326 views

Published on

Considering going global with Salesforce or expanding your existing implementation to a broader set? This session will help you understand the tools that are available to help! Come learn from Salesforce professionals who've helped some of our largest customers roll out Salesforce to their global sales teams. We'll focus on the technical and administrative aspects like managing languages and translations, currency and foreign exchange considerations, localization, custom coding, and portals. Need more? We'll even preview some of the coming features for globalization.

Published in: Business, Technology
2 Comments
8 Likes
Statistics
Notes
No Downloads
Views
Total views
14,326
On SlideShare
0
From Embeds
0
Number of Embeds
106
Actions
Shares
0
Downloads
726
Comments
2
Likes
8
Embeds 0
No embeds

No notes for slide

Deploying Salesforce Globally

  1. 1. Deploying Salesforce Globally<br />Developers<br />Lori Sarsfield: salesforce.com<br />AnandBashyamNarasimhan: salesforce.com<br />Shawna Wolverton: salesforce.com<br />J.C. Whitfield:salesforce.com<br />
  2. 2. Game Plan<br />J.C. Whitfield, salesforce.com<br />Translation basics<br />Lori Sarsfield, salesforce.com<br />Everything you wanted to know about currencies<br />Anand Bashyam Narasimhan, salesforce.com<br />The developer’s point of view<br />Shawna Wolverton, salesforce.com<br />Preview of coming attractions<br />
  3. 3. Key Take Aways<br />An introduction to some of the key areas to consider when going global<br />Provide guidance around some key “gotchas”<br />Focus more on the technical issues, not the business ones<br />Point you in the right direction for more detailed information<br />
  4. 4. A Few Questions???<br />
  5. 5. Where are you in the process of global deployment?<br />My company is considering it.<br />My company is in the planning stages now.<br />My company has begun to rollout Salesfore globally.<br />My company has gone global<br />I’m completely lost and that’s why I’m here.<br />
  6. 6. What is your role in the global deployment?<br />Technical IT Lead<br />Business stakeholder<br />Salesforce Administrator<br />Developer<br />Project Manager/Owner<br />
  7. 7. More Questions<br />How many of you are considering multiple languages?<br />How many languages?<br />How many of you are considering multiple currencies?<br />Got suggestions? We’re always listening, especially at the end of this session!<br />
  8. 8. Translation Basics<br />J.C. Whitfield<br />Engagement Manager, Strategic Services<br />
  9. 9. Language and Locale Settings<br />What is the difference between these two?<br />Language controls the labels and translations which will be presented to the user<br />Locale controls things like date formats, time, and name display<br />12/7/2010 vs 7/12/2010<br />1:15pm vs 13:15<br />JC Whitfield vs Whitfield JC<br />Currency setting controls the display of currencies and number separators (, .)<br />
  10. 10. Translation Workbench<br />Access the workbench via Admin Setup<br />Activate Languages and Designate Translators via Translation Settings<br />Translators allow non system administrators the ability to change only translations<br />
  11. 11. Translation Workbench<br />The majority of your translation needs are now centralized…custom labels, custom objects and tab labels are still exceptions<br />Editing of labels can now be done in-line<br />
  12. 12. Translation Workbench<br />Override gives you the capability of being able to change labels in custom managed packages which you may have installed<br />
  13. 13. Formulas<br />Avoid Formula Fields that return text strings<br />IF, ISPICKVAL(Custom Field Name, “Yes")), “Your deal qualifies for special pricing“<br />BLANKVALUE, NULLVALUE, CASE, INCLUDE,TEXT and HYPERLINK<br />Expressions returning True or False are okay<br />Avoid formula functions where “expression” or “literal expression” are part of the makeup of the function.<br />Avoid LEFT, LEN and RIGHT since text strings could be different lengths in different languages<br />
  14. 14. Picklists<br />Utilize picklists instead of returning literal values for formulas<br />Picklists change according to the current user’s selected language<br />Utilize picklists for fields that executives want to be able to see in their local language<br />IE – Don’t allow users to fill in a text field with their language<br />
  15. 15. Translations<br />Easier to say what doesn’t get translated<br />List Views<br />Home Page Components<br />Dashboard Components<br />Folder Names<br />Public Calendars<br />
  16. 16. Lessons Learned with Translations<br />Double check your translations, whether done in-house or professionally<br />Have some internal translators “on-call”<br />Establish a process to change a translation – especially across same languages (Spanish, French, English, etc)<br />Utilize local language fields for entry specific to regions<br />Example: Local Company Name<br />If you expose multiple languages only in portals, review each and every language in the portal<br />
  17. 17. All About Currencies<br />Lori Sarsfield<br />Principal Consultant, Strategic Services<br />
  18. 18. What is the Multi-Currency Feature<br />It does:<br />Allow admins to set up available currencies for use & maintain conversion rates per currency<br />Allow users to enter and view amount fields in different currencies<br />It does not:<br />Allow for reporting and tracking on gains and losses based on currency fluctuations<br />
  19. 19. Key Currency Types<br />Personal Currency<br />Default currency set on a user profile that drive user’s default currency for quotas, forecasts, and reports, and any other fields that they enter currency into<br />Record Currency<br />Every record has a Currency field that determines the currency type for amounts in that record<br />Corporate Currency<br />Currency on which all conversions are based<br />
  20. 20. Multi-Currency In Action<br />When enabled, amount fields in the app appear in the record’s currency and the user’s personal currency<br />
  21. 21. Multi-Currency In Action<br />Reports will have a “Display Currencies Using” option<br />Reports also contain a “Converted” field for all amount fields that will display the amount in the currency selected<br />
  22. 22. Pre-Deployment Planning<br />Which currencies are needed for activation?<br />What countries does your company do business in?<br />What will be your corporate currency?<br />Typically reflects the currency in which your corporate headquarters reports revenue<br />How often will conversion rates be updated and who will perform updates?<br />Monthly, quarterly, annually?<br />Customize application required to update FX rates<br />
  23. 23. Multi-Currency Considerations<br />Report & Dashboard Administration<br />Reports may need to be created per Region for display of specific currencies<br />Build time into your plan for the creation of region based reports, folders, and dashboards. <br />Establish regional reporting leads (1-2 per region) to take the burden off administrators<br />
  24. 24. Multi-Currency Considerations<br />Report, List View, Workflow/Approval Criteria<br />Amount criteria runs in a user’s personal currency unless Currency ISO Code is specified in the filter criteria<br />Example: Executives want to see a report of all opportunities over 1 Million USD. <br />Currency ISO Code specified in criteria<br />
  25. 25. Other Multi-Currency Considerations<br />
  26. 26. Advanced Currency Management<br />1 USD = 0.89 EUR<br />Begin Time<br />End Time<br />1 USD = 0.89 EUR<br />1 USD = 0.93 EUR<br />Begin Time<br />End Time<br />9/1/2010<br />Allows for management of dated exchange rates within opportunities <br /><ul><li> Map an exchange rate to a specified date range
  27. 27. Opportunities closed within specified date range for rate maintain that rate in perpetuity</li></ul>1. Feature is activated<br />When a feature is activated, non dated rates for each currency automatically <br />become your first set of dated rates and are valid for ALL dates.<br />2. New rate is created<br />Whew a new rate is created, it is valid from its start date to the end of time if there is no new rate in place for a later date. The end date of the prior date range is automatically set to 1 day prior to the new date’s start date.<br />
  28. 28. ACM Behavior - Reporting<br /><ul><li>All reports related to opportunity, opportunity product, opportunity product scheduled use date exchange rates to convert currency field values</li></ul>Report shows USD in different amounts for GBP 1,000 opportunities <br />based on dated currency rates <br />
  29. 29. ACM Considerations<br />Only effects Opportunities, Opportunity Products & Schedules, Campaigns, and Reports related to these objects and fields<br />Forecasts, currency fields on other objects use static exchange rates<br />.<br />Close Date, Opportunity Product Date and/or Schedule Dates determine the exchange rate that will be used<br /><ul><li>IMPORTANT!!! Roll up summary fields can only be created from two ACM enabled objects OR two non-ACM objects</li></li></ul><li>ACM & Roll Up Summary Fields<br /><ul><li>Roll up summary fields can only be created between two ACM enabled objects:
  30. 30. YES: Opportunity Products to Opportunities
  31. 31. NO: Opportunities to Accounts</li></ul>The org on the left hand side has ACM enabled, while the org on the right has not enabled ACM. The “Amount” field only appears as an option for a RSF for the org without ACM.<br />
  32. 32. ACM Deployment Planning<br /><ul><li>Utilize the API to update and delete exchange rates
  33. 33. Initial creation is manual
  34. 34. Consider AppExchangepartners who provide free FX integration services
  35. 35. Maintain dated exchange rates for each currency on a monthly or quarterly basis
  36. 36. Consider capping past rates to a certain historic date for ease of management
  37. 37. 3 months or beginning of the FY
  38. 38. Evaluate roll up summary fields that might be effected by enabling and consider alternative solutions (ie, Apex triggers)</li></li></ul><li>AppExchangeCurrency Apps<br /><ul><li>Currencies on Demand
  39. 39. [insert more details] http://sites.force.com/appexchange/listingDetail?listingId=a0N30000001f7MHEAY
  40. 40. Global Currency Updater
  41. 41. [insert more details] http://sites.force.com/appexchange/listingDetail?listingId=a0N30000001sJJbEAM
  42. 42. S4G’s Automated Currency Updater
  43. 43. http://sites.force.com/appexchange/listingDetail?listingId=a0N300000025GWyEAM</li></li></ul><li>Developer’s Viewpoint<br />Anand Bashyam Narasimhan<br />Principal Consultant, Strategic Services<br />
  44. 44. “Custom Code” considerations<br />Multi-currency<br />Language<br />Locale<br />Encoding<br />Mass Migrating translations<br />Email Templates<br />Standard Email Templates & Languages<br />Visualforce Email Templates<br />
  45. 45. Multi-Currency <br />“convertCurrency” in SOQL<br />Will leverage date currency rates in case you have ACM enabled<br />Use “toLabel” to get localized values. Applicable to<br />currency code <br />Single select and multi-select pick lists<br />Division<br />
  46. 46. {!$Label.CustomLabel} is your best friend<br />Always use custom labels when coding Visualforce pages<br />Try to identify your labels before you start development. <br />Making changes after the fact is more cumbersome<br />Include “language” attribute in your Visualforce page definitions during testing<br />Helps with being able to view pages in multiple languages by appending a URL parameter<br />Use “System.Label” within Apex to make your error messages “translation” friendly<br />Use “{!$ObjectType.[object].fields.name.label}” to display labels for standard and custom fields in an Object<br />Use the “Category” in your labels<br />Helps with creating list views for specific application areas<br />Easier for translators to know where a specific label is used<br />Tip<br />Tip<br />
  47. 47. Locale aware Visualforce components<br />Logged in User’s locale preference impacts:<br />Number formatting <br />Date and time formatting<br />Currency field display<br />Use Visualforce components that are locale aware<br />Use <apex:outputField> v/s <apex:outputXXX><br />Visualforce also provides “formatting” options<br />Formats will need to be coded into the VF page<br />Not a alternative for making your pages “locale aware”<br />Tip<br />
  48. 48. How do you migrate translations<br />Force.com IDE<br />Requires developer like resource<br />Familiarity with Meta data API<br />Force.com migration tool (based on Apache Ant )<br />….there a better way…more on that later…<br />
  49. 49. Demo<br />
  50. 50. Email Templates<br />Considerations<br />Email Encoding: Set the encoding at the Template level <br />For user specific encoding use the EmailEncoding at the user level to override<br />How do I provide Email Templates in multiple languages<br />Using Standard Email Templates<br />Using Visualforce Email Templates<br />Tip<br />
  51. 51. Visualforce email templates<br />Exposed to end users like any other template<br />Content of the email template is a like a Visualforce page<br />Can leverage Visualforce tags to iterate over related objects<br />Reduces the need to have multiple copies of the same template in multiple languages<br />Requires basic VF experience to edit the templates<br />Does not provide a Rich text HTML editor for formatted email content<br />Does not provide a “copy from HTML” function to create the text version of the template<br />Tip<br />
  52. 52. Demo<br />
  53. 53. One Language / Many Translations: Avon<br />One single application / Deployed to over 15 countries<br />Use the same set of Visualforce pages / Apex code<br />All Countries if on 1 Salesforce org will see same translation (e.g. English)<br />Custom Labels are customized only by “language”<br />
  54. 54. Avon Philippines & Avon UK<br />
  55. 55. What did we do?<br />Deploy countries that use the primary language into multiple orgs<br />Potential risk of having too many orgs<br />User license management<br />Avon today has 3 production orgs<br />Org strategy has helped with managing deployments and data volumes <br />
  56. 56. But, that was Sep-2009, in Sep-2010…<br />
  57. 57. Salesforce.com Globalization Roadmap<br />Shawna Wolverton<br />Director, Product Management<br />
  58. 58. What have you done for us recently?<br />Platform languages<br />Languages available to customers building custom applications on our platform. No default translations are provided.<br />
  59. 59. What else?<br />Right to Left languages debuted this year<br />Hebrew in Summer ‘10<br />Arabic in Winter ‘11<br />New End User Language Support<br />UK English<br />Arabic<br />
  60. 60. What’s next?<br />Import and Export from the translation workbench<br />Simple text files to do your translation outside of the app<br />
  61. 61. What else?<br />Multi-currency and Advanced Currency Management improvements<br />End User and Platform language additions<br />Norwegian as an end user language<br />Moldovan, Macedonian, Bosnian, Croatian and Slovene as platform languages<br />Translation Workbench Gaps<br />Reports/Dashboards, Home Page Components, List Views<br />
  62. 62. We’re Listening…<br />http://ideas.salesforce.com<br />
  63. 63. State and Country as a Picklist<br />What will we get?<br />State and Country dependencies out-of-the-box for the United States and Canada<br />Country dependent address formatting for all countries<br />Support standard address fields on standard objects<br />A new custom field type: Address<br />Data and Metadata conversion support<br />
  64. 64. Questions & Answers<br />
  65. 65. Contact Information<br />J.C. Whitfield, Engagement Manager<br />jcwhitfield@salesforce.com<br />Lori Sarsfield, Principal Consultant<br />lsarsfield@salesforce.com<br />Anand Bashyam Narasimhan, Engagement Manager<br />anarasimhan@salesforce.com<br />Shawna Wolverton, Product Manager<br />swolverton@salesforce.com<br />
  66. 66. More Information<br />Salesforce Community<br />http://sites.force.com/blogs/<br />http://sites.force.com/usergroups/<br />http://www.salesforce.com/customer-resources/learning-center/<br />
  67. 67. Appendix / Screenshots<br />
  68. 68. Multi-currency : Example<br />
  69. 69. Custom Labels : Examples<br />instead of<br />use<br />
  70. 70. Custom Labels : Examples<br />instead of<br />use<br />
  71. 71. Locale aware Visualforce: Example<br />
  72. 72. Visualforce Email Template: Example<br />
  73. 73. Email Templates: Standard v/s Visualforce<br />Standard Email Templates<br />Visualforce Templates<br /><ul><li>Non-developer user can create their own templates
  74. 74. Easy to use template Editor
  75. 75. Can only merge data from Single object
  76. 76. Increases duplication templates for multi-language
  77. 77. Reduced administration for multi-languages
  78. 78. Translation friendly with Custom Labels
  79. 79. Can use VF techniques to iterate over related objects
  80. 80. Requires some basic VF experience
  81. 81. No “Rich Text Editor” support</li></li></ul><li>Deploying Salesforce Globally<br />
  82. 82. Visit the Developer Training and Support Booth in Force.com Zone<br />D I S C O V E R<br />Developer training, certification and support resources <br />that help you achieve<br />S U C C E S S<br />Find us in the Partner Demo Area of <br />Force.com Zone 2nd Floor Moscone West<br />Learn about Developer Certifications<br />Discover Developer Learning Paths<br />
  83. 83. Remember. . .<br /><ul><li>Check Chatter for additional session information
  84. 84. Get your developer Workbooks and Cheat Sheets in the Force.com Zone
  85. 85. Visit for more information related to this topic</li></ul>Don’t forget the survey!<br />
  86. 86. How Could Dreamforce Be Better? Tell Us!<br />Log in to the Dreamforce app to submit<br />surveys for the sessions you attended<br />Use the Dreamforce Mobile app to submit surveys<br />OR<br />Every session survey you submit is a chance to win an iPod nano!<br />

×