File.Download Method

Sends a file from a server computer to the client computer. The client computer is the computer that is running the Windows client or the computer that is running a browser that accesses the web client.

Note

This method is supported only in Business Central on-premises.

Syntax

[Ok := ]  File.Download(FromFile: String, DialogTitle: String, ToFolder: String, ToFilter: String, var ToFile: Text)

Note

This method can be invoked without specifying the data type name.

Parameters

FromFile
 Type: String
The name of the file on the server computer that you want to download to the client computer.

DialogTitle
 Type: String
The title that you want to display in the dialog box for downloading the file. This parameter is not supported by the web client. The title is determined by the end-user's browser.

ToFolder
 Type: String
The default folder in which to save the file to be downloaded. The folder name is displayed in the dialog box for downloading the file. The folder can be changed by the user. This parameter is not supported by the web client. By default, the files are saved to the default download location that is configured in the end-user's browser.

ToFilter
 Type: String
The type of file that can be downloaded to the client computer. The type is displayed in the dialog box for downloading the file. This parameter is not supported by the web client.

ToFile
 Type: Text
The name to give the downloaded file. This is the default file name that is shown in the dialog box for downloading the file. This value can be changed by the user.

Return Value

Ok
 Type: Boolean
true if the operation was successful; otherwise false. If you omit this optional return value and the operation does not execute successfully, a runtime error will occur.

Remarks

Note

On devices that run Apple iOS, such as iPad, you can only download a file if the Apple iOS device on which you are downloading the file has an application which supports the file type.

Files are saved to the default download location that is configured in the end-user's browser.

The business logic is run on the computer that is running Dynamics 365 Business Central service and not on the client. Files are created on the computer that is running Dynamics 365 Business Central service and not locally on the client computer.

UPLOAD Method (File) and UPLOADINTOSTREAM Method (File) are used to send a file from the client to a Dynamics 365 Business Central service instance.

DOWNLOAD Method (FILE) and DOWNLOADFROMSTREAM Method (File) are used to send a file from a Dynamics 365 Business Central service instance to the client.

We recommend that you use the methods in codeunit 419 File Management to upload and download files.

Note

Internet browsers can only handle one file per request. Therefore, with the Web client, if this method is called in a repetitive statement (or loop) that generates multiple files, only the last file will be sent to the browser. Alternatively, when designing for the Web client, bundle the files in an archive file (.zip), for example, by using the methods found in codeunit 419 File Management. For more details about this design pattern, see Multi-File Download. Although this article is written for Dynamics NAV, it is still relevant for Business Central. The methods in codeunit 419 are not external, therefore cannot be used in extensions. Instead, when developing extensions in AL, use the external methods of codeunit 706 Zip Stream Wrapper. The approach is similar.

Example

This example shows how to use the DOWNLOAD method.

var
   ToFile: Text;
begin
   ToFile := 'ToFile.txt';  
   DOWNLOAD('FromFile.txt','Download file','C:\','Text file(*.txt)|*.txt',ToFile);  
end;

See Also

File Data Type
Getting Started with AL
Developing Extensions