PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Timer, valeur retournée (afficher sur une frm)
Timer, valeur retournée (afficher sur une frm)
Débuté par jplucien, 18 jan. 2006 19:08 - 1 réponse
Posté le 18 janvier 2006 - 19:08
J'ai fait un bout de code qui compte sur un répertoire le nombre de fichier à traiter à intervalle régulier:

PROCEDURE EditeEtiquette()
nbfic = 0
nbfic = ScruterRépertoire()
Info (nbfic)
RENVOYER nbfic

Pour tester, le code derrière un bouton sur la frmACCUEIL:
// on Liste les fichiers qui se trouvent sur le répertoire à scruter
SI TimerSys(EditeEtiquette,1000,1) = 0 ALORS
Erreur("Création du timer")
SINON
SAI_Saisie1 = nbfic
FIN

avec la procédure:

PROCEDURE ScruterRépertoire()

sMonRepertoire est une chaîne = "\\lvpshare\serveur\temp\*.*"
sMonFic est une chaîne = ""
stmp est une chaîne = "."
MonCompteur est un entier = 0

// on Liste les fichiers qui se trouvent sur le répertoire à scruter

sMonFic = fRep(sMonRepertoire, frFichier)

TANTQUE PAS stmp = ""
SI stmp <> "" ALORS
stmp = fRep("",frFichier)
//sMonfic = sMonFic + RC + stmp
MonCompteur +=1
FIN
FIN
RENVOYER(MonCompteur) // récupération du nombre de fichier à traiter sMonRepertoire est une chaine = "\\lvpshare\serveur\temp\*.*"



Le timer me retourne bien le nombre de fichiers dans l'infbox mais je n'arrive pas à actualiser la valeur dans le champ SAI_Saisie1 sur la feuille !!

J'ai du rater quelque chose, mais je ne vois pas.

Merci de votre aide

Bon dév à toutes et à tous
Posté le 23 janvier 2006 - 16:24
conseil:
utilise plutot un thread (exécution en tâche de fond :)
ou ajoute un multitache :-/

le champ doit être mis à jour, mais tu ne le "vois" pas si la fenêtre est bloquée...