Skip to main content
Version: 2022

File storage

Introduction to file storage

The Thinkwise Platform provides several options for storing files, like documents and photos, with your application. See also File storage locations in the Software Factory.

menu Maintenance > Runtime configurations > tab File storage locations

Five different file storage types are available:

  • Azure files - Microsoft Azure file storage
  • Database - Binary data in the database (BLOBs or SQL Server FileStreams)
  • File system - On the file system
  • FTP - File Transfer Protocol
  • AWS S3 - Amazon Web Services, Simple Storage Service.

File storage locations can be linked to domains with File, Image (including Signature) and Folder controls. All storage types except Database are specified as an additional subfolder within the file storage location per column. Thus, a column inherits the main storage location from its domain, but files can be stored in a subfolder by setting the subfolder column property.

Subfolder column property Subfolder column property

File storage types

Azure files

Azure files works with Microsofts Azure File Storage. Azure files has the same structure as any file system and allows for a nested folder hierarchy, i.e., https://storageaccount.file.core.windows.net/files/image/image.png

To create an account for Azure file storage, log in to https://portal.azure.com. Select the Storage Account service and add or use an existing storage account. To find the login settings to be used in the Software Factory, select the storage account and click on Access Keys. The storage account name and key 1 values need to be set within the Software Factory as Username / Account name and Password / Access token respectively.

Azure storage location Azure storage location

Database

Database storage will store the data in a column on the database. Database storage needs two fields: one to save the file name of the uploaded file, and one to store the contents of the file. The storage column needs to be a large enough (unicode) text or binary field, for example varbinary(max) on SQL Server.

A database file column definition A database file column definition

SQL Server provides an additional way to store files in the database using FileStreams. To use file stream storage, the storage column needs to have a domain with datatype FILESTREAM. In addition, the database requires the table to have a ROWGUID column as well.

Column data types for FileStreams Required column datatypes for FileStreams

File system

File system storage stores the files in the specified path. The path property can either be a network location or a drive. Be aware that it must be a full (rooted) path, for example \networklocation\files\ or C:\files\ and that the location is accessible by the user interfaces or the Indicium application tier.

Variables in a path are allowed. For example:

  • %APPDATA%\Thinkwise\file.txt
  • D:\files\%FileLocation%\file.txt, where %FileLocation% is: thinkwise\textfiles.

FTP

To use FTP storage, fill in the server name with the FTP server address, for example ftp://ftp.thinkwisesoftware.com. Notice that in contrast to File system storage, the Path property must be relative from the server address, for example files/.

AWS S3

AWS S3 stands for Amazon Web Services, Simple Storage Service. The Bucket name, AWS region, Access key ID and Secret access key can be configured with the file storage.

AWS S3 file storage AWS S3 file storage

Runtime configurations

It is possible to use different file storage locations for different runtime configurations. This allows you to, for instance, specify different locations for your development, test, acceptance and production environments. For more information, see runtime configurations.

Was this page helpful?