Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
pourquoi doit-tu tester si le fichier existe ? pour la récupération ou pour le transfert ?
Michel
pour le transfert. En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
-- Eric Roumégou http://cerbermail.com/?TSoulBerPA (cliquez sur le lien ci-dessus pour me contacter en privé)
jacques.trepp
Dans son message précédent, Roumegou Eric a écrit :
Michel avait écrit le 11/02/2005 :
Roumegou Eric a écrit :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
pourquoi doit-tu tester si le fichier existe ? pour la récupération ou pour le transfert ?
Michel
pour le transfert. En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
Salut Eric, y avait un bout de code en 5.5 pour connaitre et modifier la date/heure d'un fichier. Malheureusement, je n'ai que l'exe : CHG_DATE.EXE. joie! :') je viens de le retrouver. ça utilise fDate et fHeure pour connaitre date et heure.
-- Jacques Trepp Albygest
Dans son message précédent, Roumegou Eric a écrit :
Michel avait écrit le 11/02/2005 :
Roumegou Eric a écrit :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un
fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les
sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe
déjà, est ce le meme ?
pourquoi doit-tu tester si le fichier existe ? pour la récupération ou pour
le transfert ?
Michel
pour le transfert.
En fait je voudrais "économiser" les transferts si le fichier est déjà
présent et que c'est bien le mème.
Salut Eric,
y avait un bout de code en 5.5 pour connaitre et modifier la date/heure
d'un fichier.
Malheureusement, je n'ai que l'exe : CHG_DATE.EXE.
joie! :') je viens de le retrouver. ça utilise fDate et fHeure pour
connaitre date et heure.
Dans son message précédent, Roumegou Eric a écrit :
Michel avait écrit le 11/02/2005 :
Roumegou Eric a écrit :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
pourquoi doit-tu tester si le fichier existe ? pour la récupération ou pour le transfert ?
Michel
pour le transfert. En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
Salut Eric, y avait un bout de code en 5.5 pour connaitre et modifier la date/heure d'un fichier. Malheureusement, je n'ai que l'exe : CHG_DATE.EXE. joie! :') je viens de le retrouver. ça utilise fDate et fHeure pour connaitre date et heure.
-- Jacques Trepp Albygest
Pascal F
Roumegou Eric a utilisé son clavier pour écrire :
pour le transfert. En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
Bonsoir, Voici le code que j'utilise: Dans le traitement où je veux récupérer la liste des fichiers du serveur FTP et la date:
gnIdEvenement=Evénement("Compte_Fichier","Recupbas","REPERT") // Récupération de la liste des fichiers avec une extensions ZIP FTPListeFichier(gnIdConnexion,"pub/concessi/start*.zip","REPERT",FTPFichier) Compte_Fichier est la procédure déclenchée par l'instruction FTPListeFichier Recupbas est le nom de la fenetre sur laquelle l'événement doit être intercepté REPERT est une liste.
PROCEDURE Compte_Fichier() // On rajoute le nom dans la liste RECUP_DATE=FTPDate() // Sur certains serveur la date du jour est renvoyé décalée d'un an SI DateVersEntier(RECUP_DATE)+365ÚteVersEntier(DateSys()) ALORS RECUP_DATEÚteSys()
ListeAjoute("REPERT",FTPNom()) Multitache() // Ajout dans une table du nom du fichier sans extension, de la date et de la taille du fichier présent sur le serveur FTP TableAjoute("TABLE1",ExtraitChaîne(REPERT[REPERT..Occurrence],1,".")+TAB+RECUP_DATE+TAB+FTPTaille()) // Pour que le parcours de fichier continue RECUP_DATE=""
_EVE.RETOUR=Vrai
Ensuite je compare avec la date du fichier local. POUR i=1 A TABLE1..Occurrence SI fDate(EDREPLOC+""+NUMCONC[i]+".zip")<RECU_LE[i] ALORS // numconc est la colonne de la table dans laquelle est le nom du fichier et edreploc est le répertoire local A_CHARGER[i]=1 SINON A_CHARGER[i]=0 FIN FIN
Il suffit de faire aussi la comparaison sur la taille. Je lance le traitement (récupération du site FTP dans mon cas) sur le clic d'un bouton qui lit toutes les lignes de la table et récupère uniquement les fichiers pour lesquels A_Charger est à vrai.
-- Pascal
Ne garder que le prénom pour me joindre
Roumegou Eric a utilisé son clavier pour écrire :
pour le transfert.
En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
Bonsoir,
Voici le code que j'utilise:
Dans le traitement où je veux récupérer la liste des fichiers du serveur FTP et la date:
gnIdEvenement=Evénement("Compte_Fichier","Recupbas","REPERT")
// Récupération de la liste des fichiers avec une extensions ZIP
FTPListeFichier(gnIdConnexion,"pub/concessi/start*.zip","REPERT",FTPFichier)
Compte_Fichier est la procédure déclenchée par l'instruction FTPListeFichier
Recupbas est le nom de la fenetre sur laquelle l'événement doit être intercepté
REPERT est une liste.
PROCEDURE Compte_Fichier()
// On rajoute le nom dans la liste
RECUP_DATE=FTPDate()
// Sur certains serveur la date du jour est renvoyé décalée d'un an
SI DateVersEntier(RECUP_DATE)+365ÚteVersEntier(DateSys()) ALORS RECUP_DATEÚteSys()
ListeAjoute("REPERT",FTPNom())
Multitache()
// Ajout dans une table du nom du fichier sans extension, de la date et de la taille du fichier présent sur le serveur FTP
TableAjoute("TABLE1",ExtraitChaîne(REPERT[REPERT..Occurrence],1,".")+TAB+RECUP_DATE+TAB+FTPTaille())
// Pour que le parcours de fichier continue
RECUP_DATE=""
_EVE.RETOUR=Vrai
Ensuite je compare avec la date du fichier local.
POUR i=1 A TABLE1..Occurrence
SI fDate(EDREPLOC+""+NUMCONC[i]+".zip")<RECU_LE[i] ALORS // numconc est la colonne de la table dans laquelle est le nom du fichier et edreploc est le
répertoire local
A_CHARGER[i]=1
SINON
A_CHARGER[i]=0
FIN
FIN
Il suffit de faire aussi la comparaison sur la taille.
Je lance le traitement (récupération du site FTP dans mon cas) sur le clic d'un bouton qui lit toutes les lignes de la table et récupère uniquement les
fichiers pour lesquels A_Charger est à vrai.
--
Pascal
N0.pascal.SPAM@efpe.biz
Ne garder que le prénom pour me joindre
pour le transfert. En fait je voudrais "économiser" les transferts si le fichier est déjà présent et que c'est bien le mème.
Bonsoir, Voici le code que j'utilise: Dans le traitement où je veux récupérer la liste des fichiers du serveur FTP et la date:
gnIdEvenement=Evénement("Compte_Fichier","Recupbas","REPERT") // Récupération de la liste des fichiers avec une extensions ZIP FTPListeFichier(gnIdConnexion,"pub/concessi/start*.zip","REPERT",FTPFichier) Compte_Fichier est la procédure déclenchée par l'instruction FTPListeFichier Recupbas est le nom de la fenetre sur laquelle l'événement doit être intercepté REPERT est une liste.
PROCEDURE Compte_Fichier() // On rajoute le nom dans la liste RECUP_DATE=FTPDate() // Sur certains serveur la date du jour est renvoyé décalée d'un an SI DateVersEntier(RECUP_DATE)+365ÚteVersEntier(DateSys()) ALORS RECUP_DATEÚteSys()
ListeAjoute("REPERT",FTPNom()) Multitache() // Ajout dans une table du nom du fichier sans extension, de la date et de la taille du fichier présent sur le serveur FTP TableAjoute("TABLE1",ExtraitChaîne(REPERT[REPERT..Occurrence],1,".")+TAB+RECUP_DATE+TAB+FTPTaille()) // Pour que le parcours de fichier continue RECUP_DATE=""
_EVE.RETOUR=Vrai
Ensuite je compare avec la date du fichier local. POUR i=1 A TABLE1..Occurrence SI fDate(EDREPLOC+""+NUMCONC[i]+".zip")<RECU_LE[i] ALORS // numconc est la colonne de la table dans laquelle est le nom du fichier et edreploc est le répertoire local A_CHARGER[i]=1 SINON A_CHARGER[i]=0 FIN FIN
Il suffit de faire aussi la comparaison sur la taille. Je lance le traitement (récupération du site FTP dans mon cas) sur le clic d'un bouton qui lit toutes les lignes de la table et récupère uniquement les fichiers pour lesquels A_Charger est à vrai.
-- Pascal
Ne garder que le prénom pour me joindre
Bertrand
Roumegou Eric a utilisé son clavier pour écrire :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier distant pour en connaitre ses caractéristiques ! il est beaucoup plus rapide de maintenir à jour un fichier sur le serveur ftp qui décrit la liste des fichiers présents avec leurs caractéristiques en date, taille, etc tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge ce qui a changé.
Bertrand
Roumegou Eric a utilisé son clavier pour écrire :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un
fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde
en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà,
est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un
bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier
distant pour en connaitre ses caractéristiques !
il est beaucoup plus rapide de maintenir à jour un fichier sur le
serveur ftp qui décrit la liste des fichiers présents avec leurs
caractéristiques en date, taille, etc
tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge
ce qui a changé.
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier distant pour en connaitre ses caractéristiques ! il est beaucoup plus rapide de maintenir à jour un fichier sur le serveur ftp qui décrit la liste des fichiers présents avec leurs caractéristiques en date, taille, etc tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge ce qui a changé.
Bertrand
Roumegou Eric
Bertrand a formulé ce samedi :
Roumegou Eric a utilisé son clavier pour écrire :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier distant pour en connaitre ses caractéristiques ! il est beaucoup plus rapide de maintenir à jour un fichier sur le serveur ftp qui décrit la liste des fichiers présents avec leurs caractéristiques en date, taille, etc tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge ce qui a changé.
Bertrand
Merci à tous de vos précieux conseils, je regarde ça dès maintenant. Je crois que je vais retenir la suggestion de mémoriser le transfert sur une table (meme si cela ne pourra tenir compte des interventions hors applis, avec un client FTP quelconque)
Mais comme c'est pour màj une base documentaire, le flux risque d'être important et je ne voudrais pas rebalancer toute la sauce pour une seule modif.
-- Eric Roumégou http://cerbermail.com/?TSoulBerPA (cliquez sur le lien ci-dessus pour me contacter en privé)
Bertrand a formulé ce samedi :
Roumegou Eric a utilisé son clavier pour écrire :
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un
fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les
sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe
déjà, est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un
bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier distant
pour en connaitre ses caractéristiques !
il est beaucoup plus rapide de maintenir à jour un fichier sur le serveur ftp
qui décrit la liste des fichiers présents avec leurs caractéristiques en
date, taille, etc
tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge ce qui
a changé.
Bertrand
Merci à tous de vos précieux conseils, je regarde ça dès maintenant. Je
crois que je vais retenir la suggestion de mémoriser le transfert sur
une table (meme si cela ne pourra tenir compte des interventions hors
applis, avec un client FTP quelconque)
Mais comme c'est pour màj une base documentaire, le flux risque d'être
important et je ne voudrais pas rebalancer toute la sauce pour une
seule modif.
--
Eric Roumégou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)
Comment avec les fonctions ftp de WD75 (FTPEnvoie, etc ...) savoir si un fichier a bougé avant de le renvoyer ?
Mon traitement récupère des fichiers en local, les renomme ou les sauvegarde en image et doit les transférer par FTP.
Donc il faudrait que je teste si le fichier n'existe pas et s'il existe déjà, est ce le meme ?
je suppose que c'est un truc à base de taille etc ... mais si vous avez un bout de code, ça m'interresse.
attention, c'est très long de faire ça, d'interroger chaque fichier distant pour en connaitre ses caractéristiques ! il est beaucoup plus rapide de maintenir à jour un fichier sur le serveur ftp qui décrit la liste des fichiers présents avec leurs caractéristiques en date, taille, etc tu récupère ce fichier, tu compares avec ce que tu as et tu télécharge ce qui a changé.
Bertrand
Merci à tous de vos précieux conseils, je regarde ça dès maintenant. Je crois que je vais retenir la suggestion de mémoriser le transfert sur une table (meme si cela ne pourra tenir compte des interventions hors applis, avec un client FTP quelconque)
Mais comme c'est pour màj une base documentaire, le flux risque d'être important et je ne voudrais pas rebalancer toute la sauce pour une seule modif.
-- Eric Roumégou http://cerbermail.com/?TSoulBerPA (cliquez sur le lien ci-dessus pour me contacter en privé)