Architecture
TODO: Topics to work outResources for when using Filenize in flows.
Invocable (https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_annotation_InvocableMethod.htm )
Queueables (https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_queueing_jobs.htm )
Logging
Flow
Filenize’s implementation
Considerations
...
When adding Filenize actions to your flow
...
, it's important to remember that the flow isn't finalized until you include the Filenize commit action at the end. This step is crucial to
...
construct a queueable chain of actions
...
, ensuring that each action runs only after the previous one has finished. Since Filenize actions operate asynchronously, this explicit commitment is necessary to maintain a well-ordered sequence.
By implementing the Filenize commit action, the chain will automatically skip any consecutive actions if an error
...
is encountered. This is particularly useful in scenarios where, for example, a subfolder needs to be created
...
but the parent folder
...
TODO: All actions in the flow are executed First In First Out. But when using the Diagnose Flow utility that comes with Filenize, there might be some differences.
When running a flow for one specific record, you just see the actions related to the record in the UI. Pending and actions in the pastWhen running a flow where multiple records are in one DML call, each action is executedntimes per record before continuing to the next actionThis is standard Salesforce flow and bulkily behaviourWe stop all consecutive actions after an error occurred which are linked to the same record. The other actions still continue
When running a flow where multiple records are saved, but each in their own DML call, all the actions are
Pro
Easy to setup for admins and developers
Includes in-depth diagnose tooling for spotting incorrect behaviour
Also includes rerunning certain actions for trial-and-error testing
Provides out-of-the-box user feedback about it’s progress in the Filenize component
Con
...
doesn't exist due to an error. The commit action helps prevent such situations and allows you to design a robust and error-resilient flow.
So, don't forget to include the Filenize commit action at the end of your flow to ensure smooth and reliable execution of your Filenize actions.
Pro
Filenize offers several advantages for admins and developers, making it easy to set up and manage:
Easy Setup: Administrators and developers can quickly set up Filenize without extensive configuration, reducing implementation time and complexity.
Diagnose Tooling: Filenize includes in-depth diagnostic tools, allowing users to identify and address any incorrect behavior or issues effectively. This aids in troubleshooting and resolving potential problems swiftly.
Rerun Actions: Filenize allows rerunning certain actions, which is valuable for trial-and-error testing during development. It facilitates testing and refining processes until the desired outcomes are achieved.
User Feedback: The Filenize component provides real-time feedback to end-users about the progress of their actions. This transparency enhances the user experience and ensures that users are informed about the status of their tasks.
With these features, Filenize streamlines SharePoint integration and enhances usability, making it a valuable tool for administrators and developers looking to optimize their Salesforce and SharePoint workflows.
Con
While Filenize offers several advantages, there are some considerations to keep in mind:
Queueable Design: Each Filenize action is designed as a Queueable, which can be slower compared to running APIs directly in Apex. This design choice is to prevent hitting DML/Callout limitations and ensure the process runs smoothly. Especially needed with bigger folder hierarchies.
Delayed Execution: Executing a Queueable
...
doesn't start the process
...
immediately. Instead, it waits until Salesforce has the necessary resources
...
available for execution. This can lead to some delay in processing actions.
...
Queueables are slower on sandboxes than on production orgs. This is Salesforce’s way to limit resources used.
Slower Performance in Sandboxes: Queueables may perform slower in sandboxes/Developer editions/Scratch Orgs compared to production orgs. Salesforce uses this approach to limit resource usage in these environments.
Asynchronous Processes: Since each action initiates an asynchronous process
...
, the result of that process is not immediately usable in the next consecutive process.
...
While Filenize provides a direct output for folder creation actions
...
, allowing access to the new relative URL before execution, other actions may have a slight delay in obtaining results.
Despite these considerations, Filenize remains a powerful tool for integrating Salesforce with SharePoint, providing effective management of files and documents between the two platforms. Administrators and developers can leverage Filenize's capabilities while being mindful of its asynchronous nature and potential performance implications.
Enter Flows
With Flows it’s now possible to automatically create and pin , you can now automate the process of creating and pinning folders in Salesforce, and more. i.e. creating among other tasks. For example, you can automatically create an account folder on for each new account or creating create a contact , folder under the corresponding account folder. The automation tools provided also makes it possible to by Filenize also enable you to automatically pin the folders automatically, meaning . This means that when the you open a specific account record is opened, the correct folder opens with it. The corresponding folder will open alongside it, providing a seamless and efficient user experience.
To leverage Filenize's automation features, the SharePoint instance name is needed to use any automation that comes with Filenizerequired. This allows Filenize to connect with the correct SharePoint site, subsite, or document library, ensuring that the automation processes are applied accurately and efficiently. By using Flows and Filenize together, you can streamline your Salesforce workflows and optimize your file management processes.
Info |
---|
That's right! "Pinning" is the Filenize term for pinning a handy feature in Filenize that allows you to link a SharePoint folder directly to a Salesforce record. Everytime Whenever you open the Filenize component, it will automaticly find the right smartly identifies the appropriate folder for you based on the current Salesforce record |
[IMG]
...
you're viewing. This seamless integration ensures quick access to the relevant documents and files related to your records, making your workflow more efficient and user-friendly. By "pinning" folders to your Salesforce records, you can effortlessly manage your files and documents, eliminating the need to manually search for the right folder each time. Filenize simplifies this process, allowing you to focus on your tasks without the hassle of navigating through SharePoint separately. It's just one of the many ways Filenize enhances your Salesforce experience and streamlines your document management processes. |
To create and pin a SharePoint folder using Filenize in a Flow, follow these steps:
Create or open an existing Flow in Salesforce.
Select a new Action element within the
...
Flow.
Search for "SharePoint" to find all the actions that
...
come with
...
Filenize.
Choose "Create and Pin a SharePoint
...
Folder" from the available actions.
Customize the action properties to match your business needs. In
...
this example, we'll create a folder
...
for each new account in Salesforce
...
, and the following values
...
apply (
...
your values may differ
...
based on your solution):
Folder Name: Field Reference =>
...
{!$Record.Name}
Record Id: Field Reference =>
...
{!$Record.Id}
SharePoint Instance Id: String => Your SharePoint Instance Name
...
Reset Sharing on Folder (Optionally): Usually set to true for root folders with custom sharing
Server Relative URL: String =>
...
A fixed path or a reference to a previous folder action
Save and activate the
...
Flow.
By following these steps, you ensure that a new account folder is automatically created and automatically pinned to the respective account record.
[IMG]
1.1 Invocable
The Managed Package includes a set of invocable actions to allow admins to automate certain SharePoint actions with Process Builder or Flows. Do note that invocable are useful for simple tasks as creating folders. For complex tasks it’s best to work with Apex directly. The current list is:
Create and pin a SharePoint folder (as also shown in the example above)
Create a SharePoint Folder
Pin a SharePoint folder
Share a SharePoint folder
Update metadata of a folder/file
Upload a file by referencing an Attachment/Content Document/Content Version
Committing all actions
1.2 Folder Hierarchy
Creating a folder hierarchy is possible when using Flows in combination of the Managed Package invocable actions. Using the “Create a SharePoint folder” invocable action returns the folder’s path directly, allowing you to use that information to make subfolders. Each invocable is asynchronous and is executed as a queue with the “Commit” action, making sure all the folders are created in the right order.
[IMG]. Feel free to customize the action properties based on your unique business requirements and workflows.
...
Next Steps
The "Create and Pin a SharePoint Folder" action is just the beginning of the powerful features Filenize offers. You have a whole array of actions at your disposal to customize your folder hierarchy according to your business needs.
To explore all the possibilities Filenize has to offer, make sure to visit the Actions page. There, you'll find a comprehensive list of actions with detailed explanations of how each one can be used to optimize your file management processes.
If you're looking for practical examples and step-by-step guides, head over to the Examples page. It's filled with real-life scenarios where Filenize actions are applied, providing valuable insights to inspire and guide you in customizing Filenize for your organization.
With Filenize, you can take your Salesforce and SharePoint integration to a whole new level, streamlining your workflows and enhancing collaboration. So don't wait! Check out the Actions and Examples pages to unlock the full potential of Filenize and tailor it to suit your unique business requirements. Happy exploring!