...
Voici les méthodes du module YFTP :
Info |
---|
Retrouvez les informations concernant YFTP dans l’aide en ligne XWIN au chapitre “Fonctions Ftp / SFtp” |
Voici les méthodes présentes dans A5PMFTP :
...
Contenu du recordDiva yftp.FtpResult
Champ | Contenu | Format |
---|---|---|
Status | Contient soit le retour de FtpRequestGetError 0 pas d’erreur 1 ticket Ticket invalide 2 Erreur 3 Paramètres incorrects Ou un retour de A5PMFTP : 4 Erreur sur le chemin local 5 Impossible de renommer localement le fichier 6 Erreur sur le fichier local 7 Erreur sur le fichier distant 8 FtpCod transmis incorrect 9 Serveur non renseigné | L Code status du résultat
|
Retour | Message d'erreur produit par Harmony OU A5PMFTP | 256 Retour principal |
Desc | Texte de l'exception produit par la couche .Net. | 256 Retour complémentaire |
FileName | Nom de fichier | 256 |
Outre le retour de la fonction appelée, vous pouvez obtenir plus de précisions en récupérant le dernier résultat par la méthode YFTP.FTP_get_lastFtpResult, renvoyant un recordDiva de type Yftp.FtpResult.
Contenu du recordDiva yftp.FtpFileResult
Le FtpFileResult est obtenu lors de traitement de fichiers multiples par Ftp_DownloadMultipleFile ou Ftp_UploadMultipleFile
Champ | Contenu | Format |
---|---|---|
FileName | Nom de fichier (individuel) | 256 |
Status | Identique à FtpResult (voir ci-dessus) | |
Retour | ||
Desc |
Cas des fonctions de copies multiples
...
Il convient pour chaque fichier de récupérer la liste des fichiers concernés et le retour par les méthodes FTP_get_ListDownloadedFile ou FTP_get_ListUploadedFile.
Cette méthode renvoie la liste des fichiers traités et le compte rendu du dernier appel à une des 4 méthodes *MultipleFile*.
Cette liste contient des éléments du recordDiva de type YFtp.FtpFileResult (FileName+ contenu d’un FtpResult vu plus haut).voir ci-dessus).
Exemples
YFTP Test de connexion par download
Bloc de code |
---|
;*
Public Function int FTPTestConnexion(url_ftp, url_login, url_password)
; Chargement du fichier de descriptif et du fichier de données
; 0 : OK / 1 : Erreur / 2 : Erreur de config
1 url_ftp A
1 url_login A
1 url_password A
;
recordDiva yftp.FtpResult rd
1 fileName S
1 rt L = 1
;
Beginf
fileName = CreateDirTemp("test.txt")
; Ftp recuperation du fichier
rd = FtpDownloadFile (url_ftp, url_login, url_password, fileName, "test.txt" )
if (rd.Status = 0)
; Succes du telechargement
rt = 0
elsif ((rd.Status = 2) and (String("(550)", rd.Desc ) > 0))
; echec du telechargement car fichier pas trouvé (donc serveur trouvé et authen ok)
rt = 2
endif
RemoveDirTemp(fileName)
freturn(rt)
Endf |
YFTP Envoi fichier
Bloc de code |
---|
;*
function int Envoyer_fichier_vers_serveur_Ftp(servftp, login, pwd, fileTemp, repTag, FileName, DeleteFileFl)
;envoi le fichier zip du package sur le serveur ftp
1 servftp ;ServerFtpAdresse
1 login ;ServerFtpLogin
1 pwd ;ServerFtpPwd
1 repTag S ; Sous-Répertoire de copie du fichier
1 fileTemp S ; nom du fichier
1 FileName S ; Nom du fichier final
1 DeleteFileFl 1,0 = false
1 fichierArrivee S ; nom de fichier Final
1 err 1,0 = false
1 st X
recordDiva yftp.FtpResult retFtp
beginf
;Création du répertoire de partage sur le serveur ftp
FtpcreateDirectory (left(ServFtp), left(Login), left(Pwd), left(repTag))
;envoi du fichier dans le répertoire de partage du le serveur ftp
fichierArrivee = [ repTag "\" FileName ]
retFtp = FtpUpLoadFile (left(ServFtp), left(Login), left(Pwd), left(fileTemp), fichierArrivee)
if retftp.Status <> 0
FtpDeleteDirectory (left(ServFtp), left(Login), left(Pwd), left(repTag))
endif
if retFtp.Status <> 0
pv_mes_alert(4002)
err = true
endif
if DeleteFileFl
HDeleteFile(fileTemp, st, abort=FALSE)
Endif
freturn(err)
endf
|