|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
Débuté par Mike, 04 juil. 2003 12:04 - 2 réponses |
| |
| | | |
|
| |
Posté le 04 juillet 2003 - 12:04 |
Je n'arrive pas à comprendre pourquoi mon page affiche ne fonctionne pas.
J'ai une page avec des boutons précédent et suivant (qui affiche la page en cours en lui passant un paramètre).
Voici mon code d'initalisation de ma page
Procedure NouvellePiece (numpce="") SI numpce = "" ALORS // traitement nouvelle pièce SINON // Recherche de la pièce et affichage de celle-ci FIN
Dans mes boutons suivant et précédent j'ai mis ceci (ci dessous le bouton suivant)
stsuiv est une chaine Exécute("MODIFIER..CLIC") stsuiv="ST"+(Val(Milieu(numpce,3))+1) PageAffiche("stnouvellepiece",stsuiv)
Quand je fait mon test en debug, stsuiv contient bien le numéro de pièce suivant, puis, fatalement je retombe sur le code d'initialisation de la page, et la, numpce est égal à "" alors que mon paramètre stsuiv contient bien une valeur
Vous avez une solution ?
Mike |
| |
| |
| | | |
|
| | |
| |
Posté le 04 juillet 2003 - 13:11 |
slt Mike
et si tu écrits :
Procedure Fen(numpce="") au lieu de Procedure NouvellePiece (numpce="")
De plus tu parles de code d'initialisation de page : est-ce bien le code d'ouverture de la page (serveur) ??
Sinon je te conseil d'utiliser un champ invisible si tu ne réussis pas.
Alain V
"Mike" <michael.brouwers@joskin.com> a écrit dans le message de news: 3f054098@news....
Je n'arrive pas à comprendre pourquoi mon page affiche ne fonctionne pas.
J'ai une page avec des boutons précédent et suivant (qui affiche la page en
cours en lui passant un paramètre).
Voici mon code d'initalisation de ma page
Procedure NouvellePiece (numpce="") SI numpce = "" ALORS // traitement nouvelle pièce SINON // Recherche de la pièce et affichage de celle-ci FIN
Dans mes boutons suivant et précédent j'ai mis ceci (ci dessous le bouton suivant)
stsuiv est une chaine Exécute("MODIFIER..CLIC") stsuiv="ST"+(Val(Milieu(numpce,3))+1) PageAffiche("stnouvellepiece",stsuiv)
Quand je fait mon test en debug, stsuiv contient bien le numéro de pièce suivant, puis, fatalement je retombe sur le code d'initialisation de la page, et la, numpce est égal à "" alors que mon paramètre stsuiv contient bien une valeur
Vous avez une solution ?
Mike
|
| |
| |
| | | |
|
| | |
| |
Posté le 04 juillet 2003 - 13:51 |
Je n'ai pas la réponse à la question, mais une solution de rechange consisterait à déporter tes 2 traitements (nouvelle pièce / pièce existante) dans des fonctions.
A partir de là, il suffit d'appeler la fonction correspondante juste avant de faire un pageactualise().
Je pense que le problème vient du contexte de page qui existe déjà sur le serveur. Quand tu fais un Pageaffiche() d'un contexte existant la page n'est pas rechargée en mémoire, il se contente d'exécuter le code d'ouverture.
Essai peut-être de rajouter LOCAL juste avant la déclaration de STSUIV... par défaut, il semble que les variables déclarées en ouverture de page soient globales à la page, et comme le contexte existe déjà...
"Mike" <michael.brouwers@joskin.com> wrote:
Je n'arrive pas à comprendre pourquoi mon page affiche ne fonctionne pas.
J'ai une page avec des boutons précédent et suivant (qui affiche la page en
cours en lui passant un paramètre).
Voici mon code d'initalisation de ma page
Procedure NouvellePiece (numpce="") SI numpce = "" ALORS // traitement nouvelle pièce SINON // Recherche de la pièce et affichage de celle-ci FIN
Dans mes boutons suivant et précédent j'ai mis ceci (ci dessous le bouton suivant)
stsuiv est une chaine Exécute("MODIFIER..CLIC") stsuiv="ST"+(Val(Milieu(numpce,3))+1) PageAffiche("stnouvellepiece",stsuiv)
Quand je fait mon test en debug, stsuiv contient bien le numéro de pièce suivant, puis, fatalement je retombe sur le code d'initialisation de la page, et la, numpce est égal à "" alors que mon paramètre stsuiv contient bien une valeur
Vous avez une solution ?
Mike
|
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|