File Name Templates

Introduction

File Name Templates are applied to the files uploaded to file fields of different objects, for example Projects, Submissions. 

To add a File Name Template:

  • Add a FileNameTemplate field definition to the Project data definition and set the FileNameTemplate attribute's value to be the object type that the template needs to be applied to
  • Go to the Project Settings, click Edit All
  • Find the newly added Field and set it's value to be the desired template.

How to use File Name Templates

The templates are based on HandleBars. The correct file extension will be automatically added. Invalid characters will be replaced with an underscore, _.

The available data fields are as follows: 

Name Description Usage example Example output
Project Object containing the project {{Project.Code}}
{{Project.Name}}
"sample"
"Sample Project"
FieldDefinition Object containing the FieldDefinition to whose field the file was uploaded {{FieldDefinition.Name}}
{{FieldDefinition.SingularLabel}}
"ExampleFile"
"Example File Field"
OriginalFileName The original name of the file without the extension {{OriginalFileName}} "YourFileName"
FileId The id (unique number) of the uploaded file {{FileId}} "37047"
OwnerType The type of the owner {{OwnerType}} "Submission"
Name of the owner type Object containing the owner of the file {{Submission.ReferenceNumber}}
{{Contributor.Email}}
"0203"
"contributor@example.com"

Missing fields

Any fields from the template that do not exist in the data will be left empty.

Empty templates

If the provided template generates an empty output, the file will have the following name:
"EmptyFileNameTemplateOutput - {{OwnerType}}.{{FieldDefinition.Name}}{{OriginalFileName}}"

Deleted objects

If for some reason you downloaded a file for a deleted object, it will be named as follows:
"{{FileName}} - Deleted {{file.OwnerType}}" where "FileName" is the original output of the template. Deleted data cannot be merged with the template, so "FileName" will be missing those fields.

Too long file names

If the output of the template is longer than 50 characters it will be truncated and have three dots added at the end.

Including Submission Fields for Contributor Files

This is not recommended. A single contributor can be associated with multiple submissions and so the file could become too long. Please consider using fields from the Submission which are known to be short.
Example:
{{#each Contributor.SubmissionContributors}} {{Submission.ReferenceNumber}} {{/each}}