4D v16.3SET EXTERNAL DATA PATH |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
SET EXTERNAL DATA PATH
|
SET EXTERNAL DATA PATH ( aField ; path ) | ||||||||
Parameter | Type | Description | ||||||
aField | Text, BLOB, Picture, Object |
![]() |
Field for which to set the storage location | |||||
path | Text, Longint |
![]() |
Pathname and file name of external storage or 0 = use structure definition 1 = use default folder |
|||||
The SET EXTERNAL DATA PATH command sets or modifies, for the current record, the external storage location for the aField field passed as parameter.
With 4D, it is possible to store Text, BLOB, Picture and Object type fields outside of the data file. For a complete description of this functionality, refer to the Design Reference manual.
The setting defined by this command is only applied when the current record is saved on the disk. If the current record is canceled, the command does nothing. Storage parameters set in the application structure are not changed.
In path, you can pass either a custom pathname, or a constant designating an automatic location:
Constant | Type | Value | Comment |
Use default folder | Longint | 1 | The data of the field passed as parameter are saved in the default folder, named databaseName.ExternalData and placed next to the data file. In this mode, external data are managed by 4D as if they were inside the data file. |
Use structure definition | Longint | 0 | 4D uses the parameters set in the structure for field storage (see the Design Reference manual). If you change from external storage to internal storage, the external file is not deleted. |
Once this command is executed, 4D automatically maintains the link between the field of the record and the file on disk. You do not need to execute the command again (except if you need to change the path). If 4D can no longer access the data of the field (storage file renamed or deleted, path modified, etc.), the field is empty but no error is generated.
Note: The SET EXTERNAL DATA PATH command can only be executed on a local 4D or on 4D Server. It does nothing when it is executed on a remote 4D.
You want to save an existing file in the picture field, stored outside of the data, in the database folder:
CREATE RECORD([Photos])
[Photos]Name:="Paris.png"
SET EXTERNAL DATA PATH([Photos]Thumbnail;Get 4D folder(Database folder)+"custom"+Folder separator+[Photos]Name)
//"/custom/Paris.png" must exist next to structure file
SAVE RECORD([Photos])
Product: 4D
Theme: Structure Access
Number:
1134
Created: 4D v13
Modified: 4D v15
4D Language Reference ( 4D v16)
4D Language Reference ( 4D v16.1)
4D Language Reference ( 4D v16.2)
4D Language Reference ( 4D v16.3)