File Upload

A data component, the File Upload component allows users to upload and associate files as fields within a record, or remove uploaded files. In some cases, files can be listed in a table, allowing users to click and preview the file; or, a File Upload component can allow users to add an image, such as for a user profile.

Using the File Upload Component

After dragging and dropping a File Upload Component onto the page, set the File Properties. Users can upload files by clicking the Upload button and browsing for the file, or files can be dragged and dropped into the upload area.

The File Upload component can be adapted to many uses. The key to its versatility: how you set the Parent Model and File Storage Locations. For example:

Note

The File Upload component has specific properties and options when used with a model on a Salesforce data source type.

Let users add images with File Upload (Salesforce only) [[]]

While the Image component is an obvious choice when adding images to a page, it doesn’t allow users to add or edit the image at runtime. The Salesforce data source type provides File Upload properties that allow users add/edit/remove an image on a page—for example, add a profile photo on a user detail page.

Set the File Storage Location to In Field on Record, and Display As to File Preview/Image. Then, select a reference field where the uploaded image will be stored (depending upon the object, you may want to create a new field in Salesforce for this purpose). Users will see an upload box with a default image (also set in the properties pane). They can click this to add their photo; once the image is present, they can delete it or replace it with another.

Troubleshooting

  • You can only attach a file to an existing record. If attempting to attached a file to a new record that has not yet been saved to the database, the upload will fail. You must first save the record before attaching a file to the record.

Note

This behavior may require workarounds to create records and then upload files to them with the File Upload component, particularly with Wizard component.

Properties

File Upload Properties

Show all sections

Basic Tab [[]]

Standard options

In the basic tab, there are several standard options:

  • Parent Model: The model containing the records that will be associated with the uploaded file. Skuid uses this model’s data source to determine the File Storage Location options. You can also select “None” and designate a data source where the uploaded file will be stored.

Note

The File Upload component is not compatible with all data source objects. If you cannot select a model you created on a specific data source object, try selecting “None” and then follow the instructions under If None is selected for the model.

  • File Storage Location: Files uploaded are stored in a field on the object associated with the model. (For some model types, the location will be automatically filled in.) The file storage options will vary, depending upon the object/data source used by the parent model.
  • Label: Text for the upload button. The default label is “Upload.”
  • File Name: In some cases, you can rename the file. If this field is left blank, the filename will remain the same.
  • File Description: Short descriptive text for uploaded files.
  • Auto-refresh related Models on successful upload: If checked, when the file uploads, Skuid will automatically identify models that are displaying data and requery.

Warning

Any unsaved changes on that model will be lost.

If None is selected for the parent model [[]]
  • Data Source Type: The data source type used to create the target data source (below).
  • Data Source: The target data source for the uploaded file.
Additional options [[]]

Additional options open up, depending on the data source/object selected. These include:

  • Upload URL: Specific URL where the file will be uploaded. (REST)
  • Relative folder URL: The server URL for the folder where the file will be uploaded. For example, /Shared Documents/Marketing/March Campaign. (Sharepoint)
  • Parent Folder ID: The ID of the folder where the file will be uploaded. (Google Drive)
  • Snippet to Run on Completion (optional): Name of a Javascript snippet to run on completion of the upload.
  • File’s Title: A title for the file’s submission to Slack.

Note

This is not the same as the file name.

  • Initial Comment: A comment added to the file’s submission on Slack.
  • Channels to Send: A list of channel IDs where the file will be sent on Slack. Separate individual channel IDs with a comma.
If a Salesforce object is selected for the parent model [[]]

Salesforce objects have several File Storage Location choices that may not be available when using other data source types; when chosen, these File Storage Locations cause Skuid to display other properties.

  • In Attachment to Record: The file will be uploaded as an attachment to the record, stored in the Attachment object, and linked to the Parent Id of the record in context.

    Note

    Not recommended for use with Lightning Experience. See Using File Upload with Lightning Experience for more information.

    • Need to see the list of attachments that have been uploaded? Create a model on the Attachments object, and add a table see all attachments listed.
    • Custom Owner Id Field: The field that you want to be the “owner ID” of that attachment. By default, whoever is uploading the attachment “owns” it. Select the object’s Owner ID for this field, and when you upload a file to an account owned by someone else, that Owner will automatically be designated attachment owner.
  • In Chatter Feed Item: The file will be uploaded to the user’s associated Chatter Feed and added to the Chatter field for the object associated with the model.

    • Feed text: The text that will accompany the attachment in the Chatter posts.
  • In Field on Record: The file will be uploaded to an image field on a record.

    • Display As:
      • File Name: After the file uploads, the filename displays on the screen. For image files, users may be able to click the filename to open a preview of the file.
      • File Preview/Image: For use with image files, after the file uploads, the image itself displays on the screen.
        • Default Image: The default image (Person or Org) to display before an actual image is uploaded.
    • Field Name: The object’s field where the attachment is stored.

    Note

    Only the model’s reference fields are can be chosen to store the uploaded file.

    • Allow Editing: If checked, an edit icon appears on the file preview allowing users to replace the file with another.
    • Allow Removal: If checked, a delete icon appears on the file preview allowing users to remove the file.
    • File Description: Short descriptive text for uploaded files.
    • Auto-refresh related Models on successful upload: If checked, when the file uploads, Skuid will automatically identify models that are displaying data and requery.

    Warning

    Any unsaved changes on that model will be lost.

If None is selected for the parent model on a Salesforce data source type [[]]
  • File Storage Location:
    • In Chatter Files: The file will be uploaded to, and stored in, the Chatter object.
    • In Content Document: The file will be uploaded to, and stored in, the Content object without an associated record.
    • In Static resources: The file will be uploaded to Static Resources

On-Upload Actions tab [[]]

  • On-Upload Success Actions:
    • Use the Action Framework to launch actions that run if the file uploads successfully.
  • On-Upload Failure Actions:
    • Action Types: Use the Action Framework to launch actions that run if the file fails to upload.

Rendering tab [[]]

Conditional rendering allows you to display or hide the deck, based on defined data conditions.

Troubleshooting

  • You can only attach a file to an existing record. If attempting to attached a file to a new record that has not yet been saved to the database, the upload will fail. You must first save the record before attaching a file to the record.

Note

This behavior may require workarounds to create records and then upload files to them with the File Upload component, particularly with Wizard component.