Douglas C. Ayers

My journey with Salesforce and Technology

Adopting Files and Enhanced Notes in Lightning Experience

Hello! On this page you’ll learn the benefits of adopting Files and Enhanced Notes, how to enable these features for your users, and understand migration options for Classic Notes & Attachments.

Why make the switch?
The ship is sailing…

In Winter ’16 the new Enhanced Notes tool became generally available, and with it introduced a new “Notes” related list separate from the classic “Notes & Attachments” related list.

In Spring ’17 Salesforce announced that after Winter ’18 the “Notes & Attachments” related list will no longer have an upload or attach button and recommends customers to adopt the separate “Files” related list.

astro-roi.png

Lightning Files and Enhanced Notes include these awesome features:

  • ​Larger File Sizes 25MB vs. 2GB (80x larger!)
  • Previews View most files without downloading
  • Versioning Track one file, multiple revisions
  • Rich-Text Use styles, bullets, and inline images
  • Sharing Share to users, groups, and records
  • Public Links Share to anyone, no password required
  • Customize Page Layouts Detail page for Files
  • Custom Fields Add custom fields to ContentVersion object

Dreamforce Sessions

I’m presenting about this topic twice this year at Dreamforce 2017!
Make sure to bookmark the below sessions:

 

Ideas Addressed by Lightning Files & Enhanced Notes

astrohardhat

  1. Sorting the Notes and Attachments Related List – and create custom fields
  2. Ability to Add Custom Fields to the Attachments Object
  3. Custom Pick-list field to determine the type of the attachment.
  4. Customized Security Settings for Notes/Attachments
  5. Add custom fields to notes object
  6. Allow attachments to be public/private like case comments
  7. Increase the Characters allowed in the Notes & Attachments – Notes Body
  8. Drag and Drop into Notes and Attachments
  9. Transfer Notes & Attachments to another object
  10. Attach notes and attachments to multiple records

Converting Your Data

Unless you are a brand new Salesforce customer then you likely have lots of existing Notes & Attachments in your org. If you are adopting Files and Enhanced Notes then your users will appreciate you bringing that data along so they can take advantage of all these great new features.

I’ve developed two free apps listed below to help you automate the conversions. But as Levar Burton always said, you don’t have to take my word for it =)

This slideshow requires JavaScript.

Convert Attachments to Files

Astro+with+badge

Resources to help you convert your attachments to files:

Convert Notes to Enhanced Notes

Astro-on-chair

Resources to help you convert your notes to enhanced notes:

Preserve Files After Merging Records

When two Accounts, Contacts, or Leads are merged together then the related records of the merged (deleted) record get re-parented to the surviving (master) record. This is great as we don’t lose sight of the related records and all the data carries over to the master record.

However, Salesforce Files behave differently and are not automatically shared from the merged (deleted) record to the surviving (master) record — the files become orphaned!

But don’t be dismayed, I’ve developed a free app you can install in your org that solves this problem!

Preserve Files After Lead Conversion

For those of you who have tried Files prior the Summer ’17 release may have noticed that converting a lead would cause the Files shared to the lead to become orphaned — they were not automatically shared to the converted Account, Contact, or Opportunity!

Although I had developed a free app to solve this problem, please be comforted that Salesforce finally fixed this issue in Summer ’17 release. No extra magic needed =)

files-preserved-lead-conversion.png

Fun Things to do with Files

Check out these fun, free apps to get more productivity out of Salesforce Files!

Notify Followers of Updates

Chatter is Salesforce’s Enterprise Social and Collaboration tool. You can share knowledge, files, and data across your organization. You can follow users or records and see updates about them in your Chatter Feed or Email Digests, and you can follow files. Nifty!

But what if your team needs more frequent notifications that a file has been updated than a Daily Email Digest? Or what if as an #AwesomeAdmin you wanted to launch Process Builder or Flow whenever a file was created or updated?

Out of the box you can’t do it easily without writing Apex code so that’s why Zach Boyd and I developed the free app Chatter Bot for Files: How to Notify Followers When File Updated so you can do just that! Install the app then use Process Builder to take action when Files are created or updated.

Share Files to Multiple Records via List View Action

Inspired by Christine Miller I developed this free app to allow you to select one or more records on a list view then share to those selected records one or more Files that you either upload or that already exist in Salesforce.

mass-add-files-via-list-view

View Salesforce Files of Related Records

As you may have noticed, there are many differences between the Notes & Attachments related list, Notes related list, and Files related list.

When viewing the Classic Notes & Attachments related list on an account, for example, attachments belonging to the account and its related contacts, cases, opportunities, tasks, etc. are displayed in one combined list.

When viewing the Lightning Files related list on the same account, for example, only the files explicitly shared to the account are displayed. The files shared to its related contacts, cases, opportunities, tasks, etc. are not displayed in the same combined list.

Inspired by Keri-An Richards I developed this free Lightning Component you can add to your Lightning Record Pages that brings this “rollup” behavior to Files and Notes related lists.

related-files-example[1]

15 thoughts on “Adopting Files and Enhanced Notes in Lightning Experience

  1. This question is about using and sharing Files in/to a Partner Community. We’d like for Partner Users to be able to view all Files that are related to records that they have access to. What I’m finding is that Partner Users can not see Files that have been uploaded by Internal Users or even Internal Users logged into the External Community. Partner Users can see Files related to records they have access to uploaded by themselves or other Partner Users. Also, is there a way to put Files in the Navigation Menu in a Community using Napili?

    Liked by 1 person

    1. Hi Jeff,

      When your internal users upload or share files to a record the only way via the UI to make the file available to Community users is share the file via a Chatter post, add file to the post, and ensure the Chatter post is set to audience “All with Access”.

      Doing that ensures the ContentDocumentLink.Visibility field is set to “AllUsers” and not “InternalUsers”.

      When community users upload files via the related list or Chatter then the Visibility field value is always “AllUsers”.

      I’m not aware of any way in UI to change that field value aside from making Chatter post. Note, the Chatter post trick only can widen access to the file, it will never change Visibility from “AllUsers” to “InternalUsers”.

      You can use Apex or Data Loader to modify the field value of existing records if necessary, or introduce a trigger on ContentDocumentLink to set Visibility field to desired value.

      Like

      1. Hi Doug,
        Thanks for your replies. I’m not sure how to “ensure the Chatter post is set to audience “All with Access”.” Is there a setting that allows users to have that option with Chatter Posts? Does this have something to do with the To field or the @Mention on a post? Thanks!

        Liked by 1 person

    2. Hi Jeff,

      To your other question, “Is there a way to put Files in the Navigation Menu in a Community using Napili?”, I did not see a menu item to achieve this.

      You can customize the Search page in the community such that community users can search by file name and find it that way if the file is accessible to them.

      Doug

      Like

  2. Hi Doug, the progress you’ve made here since you first helped me is incredible! I, for one, have tried to ignore the fact that this is ‘the way of the future’ since learning about it!!!
    Can I ask about how Sharing Settings affect what you’re talking about here above – visibility to Community Users? We wouldn’t want the files they upload to be visible to all other Community Users. We let them see Contracts created against Accounts by internal Users using Sharing Settings. Could this help them see Files shared with these same Accounts?
    Thanks!

    Liked by 1 person

    1. Hi Libby,

      Thank you so much for the kind feedback!

      Regarding file sharing, Community Users will only have access to files that are shared to them — either explicitly shared to their user, shared to a Chatter group they belong to, or shared to a record they have access to.

      But even though a file has been shared to a record the community user has access to or Chatter Group the community user belongs to, they only see the file if at the record level in the database the ContentDocumentLink.Visibility field equals “AllUsers”. The visibility of the shared file allows internal users to add files to records without necessarily exposing them to external users.

      But even if an internal user shares a file to a record (e.g. account or contact), to expose it to community users they need to share the file via Chatter post and select audience to be “All with access”. This doesn’t expose the file to ALL community users, it just exposes it to the community users who have access to that record that the file was shared to. In that respect, the notion of “AllUsers” is a bit of a misnomer.

      In my dev org, when I had account external sharing settings set to Public Read/Write then all community users could search in the community to find the files shared via “all with access”. Once I changed the external account sharing settings to Private then only community users who had access to the records the file had been shared to could find it — this mirrors the behavior you’d expect even within your internal community.

      Hope that helps clarify things!

      Doug

      Like

  3. Hi Doug –

    Great write-up! Best I’ve seen and hugely helpful.

    Curious if in Classic you’ve seen an app that allows users to upload a file and populate the custom fields on a Lightning File. Specifically Lightning Files related to another object (i.e. Opportunity).

    Feels like many of the building blocks are here and I have a suspicion it would be doable in LEX, but Classic is still stumping me due to the Apex heap limits I would encounter if I built a VF page.

    Figured if anyone would know the answer, you might based on all your other work.

    Thanks for any tips!
    Andrew

    Liked by 1 person

    1. Thanks, Andrew, really appreciate the kind feedback!

      I think this would need to be custom code and my idea to make it work would need Visualforce but could be exposed in Classic or Lightning.

      In similar fashion to how I wrote JavaScript to let users upload and share files to records per Add Files to Records List View Button project, we would need the form to collect your input fields and then when the user clicked “upload” button the JavaScript code would upload the file to Salesforce via REST API passing the file data plus the form fields.

      That’s probably a pretty geeky answer but I don’t see any reason why it wouldn’t work. That would make for a fun weekend project after Dreamforce =)

      Like

      1. It would be a great app. Good to know. I hadn’t seen your other project.

        Does the JS approach scale well for larger files or have you found any issues with it? Needing support for larger files has led me to a few dead ends.

        Enjoy Dreamforce!

        Liked by 1 person

        1. Yes it should scale to up to (or nearly) 2GB in size. You use the REST API to post the ContentVersion record and bypass Apex Heap Limits altogether.

          I’ve got examples using forcetk library and jsforce library, just gotta hunt them down.

          Like

  4. Hi Doug, thanks so much for posting this! I am a relatively new admin and my org is new to Salesforce (in fact we are still in the roll-out process). My question is, do you have any tips on the best way to have email attachments automatically show in the Files related list
    on the case detail page when using email-to-case?

    For example, if we have someone attach a word doc via email-to-case, how can we get that attachment to show in Files instead of attachments? I hope this makes sense and I look forward to hearing your ideas. Enjoy Dreamforce!

    Liked by 1 person

    1. Hi Tate,

      You’re very welcome! And welcome to the Salesforce ohana!

      Salesforce supports viewing the attachments of emails received by email-to-case at the Case level in Lightning Experience only. When using Classic then you must navigate down to the email record itself to view its attachments.

      This feature was introduced in the Summer ’17 release.

      Good luck with your rollout,

      Doug

      Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: