Table of Contents

Codeunit "Ftp Client UTCAP"

ID 70344804
Namespace: CapVision.Core.Storage

Ce module propose un accès aux serveurs FTP par le biais d'un service intermédiaire hébergé dans le cloud. Le service requiert une clé de licence valide pour fonctionner.

Remarks

Adresses IP

    Le service intermédiaire qui communique les requêtes FTP de Business Central vers le serveur FTP distant est un service hébergé sur Microsoft Azure par CAP Vision.
    Si un pare-feu est configuré sur le serveur FTP, il est recommandé d'ouvrir les IP susceptibles d'être utilisées par ce service.



    Ces IP sont les suivantes :
    
    | Adresse IP    |
    |---------------|
    | 20.74.71.248  |
    | 20.74.71.250  |
    | 20.199.0.2    |
    | 20.199.0.85   |
    | 20.199.0.141  |
    | 20.199.1.66   |
    | 40.79.130.129 |
    | 40.89.130.0   |
    | 40.89.139.181 |
    | 40.89.166.179 |
    | 40.89.161.203 |
    | 40.89.130.122 |
    | 40.89.164.243 |
    | 40.89.161.127 |
    | 40.89.163.147 |
    | 40.89.134.161 |
    | 20.74.71.248  |
    | 20.74.71.250  |
    | 20.199.0.2    |
    | 20.199.0.85   |
    | 20.199.0.141  |
    | 20.199.1.66   |
    | 20.199.1.83   |
    | 20.199.1.153  |
    | 20.199.1.185  |
    | 20.199.1.194  |
    | 20.199.2.15   |
    | 20.199.2.28   |
    | 40.79.130.129 |
    
    Date de dernière mise à jour : juillet 2024



 Les protocoles FTP suivants sont supportés :
 
 - FTP : utilisez-le en indiquant un nom d'hôte sans préfixe (server.com) ou avec le préfixe ftp:// (ftp://server.com)
 - FTPS (FTP over SSL) : utilisez-le en indiquant un nom d'hôte avec le préfixe ftps:// (ftps://server.com)
 - SFTP (SSH File Transfer Protocol) : utilisez-le en indiquant un nom d'hôte avec le préfixe sftp:// (sftp://server.com) ou scp:// (scp://server.com). Seules les connexions par nom d'utilisateur/mot de passe sont supportées.

 > [!IMPORTANT]
 > Le protocole FTP et FTPS sont supportés via la bibliothèque [FluentFTP](https://github.com/robinrodricks/FluentFTP).
 > Le protocole SFTP sont supportés via la bibliothèque [SSH.NET](https://sshnet.github.io/SSH.NET/).
 > Les limitations s'appliquant à ces bibliothèques s'appliquent également à ce module.

Examples

Télécharger un fichier

``` AL
    var
        FtpClient: Codeunit "Ftp Client UTCAP";
        TempBlob: Codeunit "Temp Blob";
        InStr: InStream;
        FromFile: Text;
    begin
        TempBlob.CreateInStream(InStr);
        UploadIntoStream('', '', 'All Files (*.*)|*.*', FromFile, InStr);
    
        FtpClient.Initialize('ftp://myserver.com', 21, '<licenseKey>', 'user', 'password');
        FtpClient.UploadFile('/folder/', FromFile, InStr);
    end;
```

Properties

Name Value
Access Public

Methods

Initialize

Initialise les paramètres du serveur FTP auquel se connecter.

procedure Initialize(NewServer: Text, NewLicenseKey: Guid, NewUsername: Text, NewPassword: Text)

Parameters

Name Type Description
NewServer Text

Adresse du serveur FTP (ou nom d'hôte). Utilisez de préférence un préfixe ftp://, ftps:// ou sftp:// pour préciser le protocole utilisé.

NewLicenseKey Guid

Clé de licence donnant accès au service.

NewUsername Text

Nom d'utilisateur utilisé pour la connexion au serveur FTP.

NewPassword Text

Mot de passe utilisé pour la connexion au serveur FTP.

Initialize

Initialise les paramètres du serveur FTP auquel se connecter.

procedure Initialize(NewServer: Text, NewPort: Integer, NewLicenseKey: Guid, NewUsername: Text, NewPassword: Text)

Parameters

Name Type Description
NewServer Text

Adresse du serveur FTP (ou nom d'hôte). Utilisez de préférence un préfixe ftp://, ftps:// ou sftp:// pour préciser le protocole utilisé.

NewPort Integer

Port du serveur FTP.

NewLicenseKey Guid

Clé de licence donnant accès au service.

NewUsername Text

Nom d'utilisateur utilisé pour la connexion au serveur FTP.

NewPassword Text

Mot de passe utilisé pour la connexion au serveur FTP.

DownloadFile

Télécharge un fichier depuis le serveur FTP.

procedure DownloadFile(Filename: Text, OutputStream: OutStream): Boolean

Parameters

Name Type Description
Filename Text

Nom complet du fichier à récupérer.

OutputStream OutStream

Flux dans lequel le fichier est à écrire.

Returns

Type Description
Boolean

UploadFile

Télécharge un fichier sur le serveur FTP.

procedure UploadFile(Filename: Text, InputStream: InStream)

Parameters

Name Type Description
Filename Text

Nom complet du fichier à créer.

InputStream InStream

Contenu du fichier.

DeleteFile

Supprime un fichier sur le serveur FTP.

procedure DeleteFile(Filename: Text)

Parameters

Name Type Description
Filename Text

Nom complet du fichier à créer.

GetFiles

Obtient la liste des fichiers d'un dossier sur le serveur FTP.

procedure GetFiles(Path: Text, FilterString: Text, RecursiveSearch: Boolean): List of [Text]

Parameters

Name Type Description
Path Text

Chemin complet du dossier sur le serveur FTP.

FilterString Text

Expression régulière pour filtrer la liste des fichiers.

RecursiveSearch Boolean

Chemin complet du dossier sur le serveur FTP.

Returns

Type Description
List of [Text]

Liste des fichiers présents sur le serveur.

See also