IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

[WD28] Fonctionnement de la fonction fCopieFichier()


Sujet :

WinDev

  1. #1
    Membre éprouvé
    Avatar de Aooka
    Homme Profil pro
    Scripting Powershell & Wlangage
    Inscrit en
    Juillet 2015
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Scripting Powershell & Wlangage

    Informations forums :
    Inscription : Juillet 2015
    Messages : 227
    Points : 1 095
    Points
    1 095
    Par défaut [WD28] Fonctionnement de la fonction fCopieFichier()
    Bonjour à tous,

    J'ai un programme Windev28 qui fais du fcopie en masse. Mon programme tourne sur plusieurs heures tout les matins (environ 2 heures) donc vraiment beaucoup de fcopie.
    J'ai presque chaque jours des faux positifs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SI fCopieFichier("blablabla","blublublu") = Faux ALORS
    fEcritLigne(IDfichier,DateVersChaîne(DateDuJour())+ "; " +  HeureVersChaîne(HeureSys(), "HH:MM:SS")+";ERREUR;Impossible de copier le fichier")
    FIN
    Le fichier est bien copié mais dans mon LOGS j'ai l'erreur comme quoi "ERREUR;Impossible de copier le fichier". Je ne comprends pas.

    Avez-vous déjà rencontré ce problème avec fCopieFichier() ?

    En vous remerciant,
    Bonne journée à tous,

  2. #2
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 202
    Points : 9 190
    Points
    9 190
    Par défaut
    Bonjour,

    Tu devrais ajouter un erreurinfo(errcomplet) à ton log pour savoir ca qui ne lui a pas plu.
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

  3. #3
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    999
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 999
    Points : 2 526
    Points
    2 526
    Par défaut
    Citation Envoyé par Aooka Voir le message
    Bonjour à tous,

    J'ai presque chaque jours des faux positifs.
    Tu veux dire que la copie se passe normalement malgré l'erreur ?

    Sinon suis le conseil de frenchsting

  4. #4
    Membre éclairé
    Homme Profil pro
    Chef de projet
    Inscrit en
    Mars 2017
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 329
    Points : 791
    Points
    791
    Par défaut
    Effectivement obtiens plus de détails sur l'erreur concernée.
    Si c'est un faux positif peut être que la remontée que fait l'OS au framework du fait que la copie est finie est pas faite à temps malgré que la copie va réellement à son terme, surtout si les fichiers sont petits.
    Tu peux ajouter après chaque copie un petit timer, suivi d'une vérification de l'existence du fichier à son nouvel emplacement pour être sûr.
    Et pour que ce soit moins lent, tu peux multithreader le traitement si tu ne l'a pas déjà fait et que c'est compatible avec tes prérequis métiers. Pas beaucoup cela dit car si tu fais 16 threads alors que tu n'as qu'un disque, ça risque d'être contre productif; si c'est un SSD je tenterais 3 threads pour voir.

    Et au passage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SI fCopieFichier("blablabla","blublublu") = Faux ALORS
    Je me fais parfois avoir avec ça car si tu lis la ligne en diagonale tu vois pas qu'un Faux est au bout et tu penses que c'est SI vérifié, alors on rentre dans le si, alors qu'en fait non. Pour ce genre de cas, je préfère l'écrire comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SI PAS fCopieFichier("blablabla","blublublu") ALORS
    Comme ça si je relis mon code ou quand je relis le code d'un autre, je me fais moins avoir

Discussions similaires

  1. [PHP 5.0] Fonctionnement de la fonction "eval"
    Par falatop dans le forum Langage
    Réponses: 2
    Dernier message: 20/08/2009, 16h17
  2. [XL-2003] Fonctionnement d'une fonction de recherche
    Par IMPERIAL3187 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/04/2009, 18h42
  3. Fonctionnement de la fonction eval
    Par Didier100 dans le forum Langage
    Réponses: 2
    Dernier message: 17/03/2009, 08h32
  4. fonctionnement de la fonction codelock
    Par moncef357 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 29/08/2008, 13h46
  5. [PHP-JS] fonctionnement de la fonction 'header'
    Par enguerran dans le forum Langage
    Réponses: 8
    Dernier message: 02/06/2006, 08h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo