Requirements:
Client’s business runs on Salesforce Community cloud. To manage documents uploaded by various community users, guest site users and internal organization users, file storage of Salesforce is a big challenge. We recommended using Amazon S3 Drive file storage system to store documents and suggested integration for easy access and downloading for back office users and the Stakeholders.
Challenges:
- We need to provide a single click upload functionality for community users so that they can upload a file from their system.
- File size can vary upto 100MB.
- Various apex limits like 6-million characters limit for blobs.
- Sobjects like Attachments are not enough to use as a fly to save files in S3 Drive.
- Providing the download link of a file in a field on Salesforce sobject record.
- Auto renaming of file while uploading file to S3 Drive and maintaining uniqueness across S3 Drive to prevent replacement of files.
- Saving Notes during file upload in Salesforce.
- Multi Selection of file and upload in one go to S3 Drive and providing downloadable link in a single field of Salesforce.
Solution:
- We created a button that is exposed on community pages and public sites which provides functionality for users to upload the file.
- Implemented Javascript code that is used to avoid apex limitations and various storage limitations of objects in Salesforce.
- Modification of CORS policy in S3 drive to maintain security and access from Salesforce instance.
- Ability for system admin to allow file formats as per the business needs using custom labels.
- Adding date-time stamp along with record id to maintain uniqueness at the time of uploading to S3 drive
- Backoffice users can download the file by simply clicking on hyperlinks at records and can see notes uploaded during file upload.
- Rich text area field on record to store downloadable links for multi file upload.
For more details, feel free to contact at ngabrani@astreait.com or support@astreait.com