|
[WB10] AJAX : Jauge utilisable avec transfert FTP ? |
Iniciado por freddie3, mar., 15 2006 10:42 AM - 3 respostas |
| |
| | | |
|
| |
Publicado em março, 15 2006 - 10:42 AM |
Bonjour, Je souhaiterais afficher une jauge de progression pendant un transfert FTP. Pour bien comprendre le mécanisme, j'ai utilisé le projet d'Olivier, récupéré sur les Wtablettes, en remplaçant (dans la page Jauge) le contenu de la procédure <pTraitement> par mon transfert FTP.
J'ai une erreur JS : eval("CELJAUGE").width=(VNVAL+" %");
Est-ce du au fait que (je cite l'aide): La fonction FTPRécupère est une fonction bloquante : aucune autre action ne peut être effectuée jusqu'à la fin du transfert en cours.
Ou est-ce moi qui m'y prends mal?
Merci de votre aide. Freddie
-- freddie3@wanadoo.fr |
| |
| |
| | | |
|
| | |
| |
Publicado em março, 15 2006 - 11:22 AM |
Salut,
le code javascript que tu mentionnes est pour dimensionner la jauge à une taille donnée (en %). Si c'est bien cette ligne qui cause une erreur, il faut regarder que c'est le bon objet (ici CELJAUGE) qui est référencé correctement. Pour cela, il me faudrait le code HTML source de la page.
Sur l'autre point que tu mentionnes : la fonction FTPRécupère peut appeler une procédure pour contrôler la progression du transfert (dixit l'aide) donc on doit pouvoir mettre à jour la variable globale dont on se sert pour la taille de la jauge par ce biais. Il faut cependant encore transférer la valeur au navigateur. Je te conseille de bien reprendre l'exemple que j'avais fait et d'executer ton transfert dans un thread. Ainsi, le thread maitre n'est pas bloqué et il peut transférer des données au navigateur.
En espérant t'avoir aidé.
Bon dev,
Olivier
Freddie a exprimé avec précision :
Bonjour, Je souhaiterais afficher une jauge de progression pendant un transfert FTP. Pour bien comprendre le mécanisme, j'ai utilisé le projet d'Olivier, récupéré sur les Wtablettes, en remplaçant (dans la page Jauge) le contenu de la procédure <pTraitement> par mon transfert FTP.
J'ai une erreur JS : eval("CELJAUGE").width=(VNVAL+" %");
Est-ce du au fait que (je cite l'aide): La fonction FTPRécupère est une fonction bloquante : aucune autre action ne peut être effectuée jusqu'à la fin du transfert en cours.
Ou est-ce moi qui m'y prends mal?
Merci de votre aide. Freddie
-- freddie3@wanadoo.fr
|
| |
| |
| | | |
|
| | |
| |
Publicado em março, 15 2006 - 12:21 PM |
Freddie a exprimé avec précision : Bonjour, Je souhaiterais afficher une jauge de progression pendant un transfert FTP. Pour bien comprendre le mécanisme, j'ai utilisé le projet d'Olivier, récupéré sur les Wtablettes, en remplaçant (dans la page Jauge) le contenu de la procédure <pTraitement> par mon transfert FTP.
J'ai une erreur JS : eval("CELJAUGE").width=(VNVAL+" %");
Est-ce du au fait que (je cite l'aide): La fonction FTPRécupère est une fonction bloquante : aucune autre action ne peut être effectuée jusqu'à la fin du transfert en cours.
Ou est-ce moi qui m'y prends mal?
Merci de votre aide. Freddie
-- freddie3@wanadoo.fr
Olivier Priser avait soumis l'idée :
Salut,
le code javascript que tu mentionnes est pour dimensionner la jauge à une taille donnée (en %). Si c'est bien cette ligne qui cause une erreur, il faut regarder que c'est le bon objet (ici CELJAUGE) qui est référencé correctement.
C'est la valeur nVal % qui est à zéro, et qui provoque cette erreur. En fait, c'est la mise à jour de cette valeur de progression que je n'arrive pas à maitriser.
Sur l'autre point que tu mentionnes : la fonction FTPRécupère peut appeler une procédure pour contrôler la progression du transfert (dixit l'aide) donc on doit pouvoir mettre à jour la variable globale dont on se sert pour la taille de la jauge par ce biais. Il faut cependant encore transférer la valeur au navigateur. Je te conseille de bien reprendre l'exemple que j'avais fait et d'executer ton transfert dans un thread. Ainsi, le thread maitre n'est pas bloqué et il peut transférer des données au navigateur.
Le FtpRécupère() est bloquant, mais il peut passer à une procédure les valeurs (ponctuelle et totale) du transfert, tous les 64k. Je "sens" qu'il faut se servir de ces valeurs pour mettre à jour la jauge, dans AffStatut(), mais je ne vois pas trop comment faire ...
Freddie
>
-- freddie3@wanadoo.fr |
| |
| |
| | | |
|
| | |
| |
Publicado em março, 15 2006 - 12:56 PM |
nVal ne peut effectivemet pas être égale à 0 % ou 0 tout court (c'est pour ça que j'ai mis 1 comme valeur initale). Tu peux cependant gérer cela par programmation facilement.
Dans AffStatut, tu n'as rien à faire avec des fonctions FTP. C'est une procédure navigateur qui ne fait que dimensioner la cellule en fonction des valeurs reçues du serveur. Il faut que tu mettes tes fonctions FTP dans la procédure pTtraitement(). ensuite avec la procédure que tu appelles depuis FTPRécupère, il faut que tu mettes à jour la variable globale nStatutTraitement avec une valeur de 1 à 100.
Bon dev,
Olivier |
| |
| |
| | | |
|
| | | | |
| | |
|