PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

fSupprime
Débuté par MARC CHERNET, 22 jan. 2017 14:34 - 1 réponse
Membre enregistré
85 messages
Posté le 22 janvier 2017 - 14:34
Bonjour,

je tente de supprimer un fichier sur mon poste (de développement) après avoir downloadé le fichier actif sur le serveur par pageaffiche)

Jusque là, ça va, je récupère bien mon fichier dans mon répertoire par défaut de téléchargement

ensuite, je veux automatiser le remplacement du fichier en question dans mon répertoire local de façon à ce que je dispose des mêmes données que celles du site actif.

voici le code pour supprimer qui ne fonctionne déjà pas :

// Déclaration des variables
fichieràsupprimer est une chaîne
résultat est un booléen

//suppression du fichier studios_en_vente.fic
fichieràsupprimer=("C:\A\0_Clients\0_Comptabilités\Bois_aurouze\SRBA_web\Exe\Studios_en_vente.fic")
résultat=HFerme(fichieràsupprimer)
SI résultat=Vrai ALORS
Info("le fichier a été fermé")
SINON
Info("le fichier n'a pas été fermé")
FIN
//le fichier est bien fermé

résultat=fSupprime(fichieràsupprimer)

SI résultat = Vrai ALORS
ToastAffiche("le fichier a été supprimé")
SINON
// Erreur détectée ?
SI ErreurDétectée = Vrai ALORS
// Message complet de l'erreur principale
Trace(ErreurInfo())
// Parcours des sous-erreurs (s'il y en a)
POUR i = 1 _A_ ErreurInfo(errNombreSousErreur)
// Message complet de chaque sous-erreur
Trace("Sous-erreur " + i + " : " + ErreurInfo(errMessage, i))
FIN
FIN
FIN

dans la fenêtre de trace, j'obtiens toujours "le processus n'a pas pu accéder au fichier car le fichier est occupé par un autre processus" ou quelque chose comme cela.

J'ai ouvert et exécuté un utilitaire de surveillance de processus, mais je ne vois pas ce fichier de données utilisé. J'ai d'ailleurs pris le soin de mettre un hferme() en début de code pour pallier cette éventualité.

le contenu de la chaîne fichieràsupprimer semble correct.

Même problème pour Copier Coller le fichier downloadé, même message !

si vous avez des idées !! quitte à changer de méthode !!

merci

--
Marc CHERNET Expert comptable - Développeur occasionnel pour des missions d'expertise en grand nombre (Par exemple 150 copropriétaires) ou comportant du calcul actuariel
Posté le 23 janvier 2017 - 14:42
Bonjour Marc,

ton premier problème (pas regardé plus loin), est que tu ne respecte pas
la syntaxe du hferme. Dans ton code, tu lui passes un chemin physique
alors qu'il attend un nom logique (voir aide pour détails).

Cordialement


--
Fabrice Harari
Consultant WinDev, WebDev et WinDev Mobile International

A votre disposition : WXShowroom.com, WXReplication (open source) et
maintenant WXEDM (open source)

Plus d'information sur http://fabriceharari.com


Le 1/22/2017 à 8:34 AM, MARC CHERNET a écrit :
Bonjour,

je tente de supprimer un fichier sur mon poste (de développement) après
avoir downloadé le fichier actif sur le serveur par pageaffiche)

Jusque là, ça va, je récupère bien mon fichier dans mon répertoire par
défaut de téléchargement

ensuite, je veux automatiser le remplacement du fichier en question dans
mon répertoire local de façon à ce que je dispose des mêmes données que
celles du site actif.

voici le code pour supprimer qui ne fonctionne déjà pas :

// Déclaration des variables
fichieràsupprimer est une chaîne
résultat est un booléen

//suppression du fichier studios_en_vente.fic
fichieràsupprimer=("C:\A\0_Clients\0_Comptabilités\Bois_aurouze\SRBA_web\Exe\Studios_en_vente.fic")

résultat=HFerme(fichieràsupprimer)
SI résultat=Vrai ALORS
Info("le fichier a été fermé")
SINON
Info("le fichier n'a pas été fermé")
FIN
//le fichier est bien fermé

résultat=fSupprime(fichieràsupprimer)

SI résultat = Vrai ALORS
ToastAffiche("le fichier a été supprimé")
SINON
// Erreur détectée ?
SI ErreurDétectée = Vrai ALORS
// Message complet de l'erreur principale
Trace(ErreurInfo())
// Parcours des sous-erreurs (s'il y en a)
POUR i = 1 _A_ ErreurInfo(errNombreSousErreur)
// Message complet de chaque sous-erreur
Trace("Sous-erreur " + i + " : " + ErreurInfo(errMessage, i))
FIN
FIN
FIN

dans la fenêtre de trace, j'obtiens toujours "le processus n'a pas pu
accéder au fichier car le fichier est occupé par un autre processus" ou
quelque chose comme cela.

J'ai ouvert et exécuté un utilitaire de surveillance de processus, mais
je ne vois pas ce fichier de données utilisé. J'ai d'ailleurs pris le
soin de mettre un hferme() en début de code pour pallier cette éventualité.

le contenu de la chaîne fichieràsupprimer semble correct.

Même problème pour Copier Coller le fichier downloadé, même message !

si vous avez des idées !! quitte à changer de méthode !!

merci

--
Marc CHERNET Expert comptable - Développeur occasionnel pour des
missions d'expertise en grand nombre (Par exemple 150 copropriétaires)
ou comportant du calcul actuariel