PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → [WIN24] libellé et condition, petit soucis
[WIN24] libellé et condition, petit soucis
Débuté par frank scaldaferro, 29 juin 2020 11:45 - 8 réponses
Membre enregistré
80 messages
Popularité : +2 (2 votes)
Posté le 29 juin 2020 - 11:45
Je tente de créer une condition sur un libellé affiché dans un ETAT.
J'ai donc ma base "formation", mon champ "formation_ville" qui contient Paris.
Normalement, ça devrait afficher "Panam", mais j'ai du me rater car ça m'affiche "Autres".
Moi qui voulait vérifier avant de tester les CAS...

LIB_test = formation.formation_ville
SI formation.formation_ville="Paris" ALORS
LIB_test = "Panam"
SINON
LIB_test = "Autres"
FIN
Membre enregistré
213 messages
Popularité : +12 (12 votes)
Posté le 02 juillet 2020 - 02:34
Bonjour Frank,

Manifestement, formation.formation_ville ne contient PAS "Paris".
Une trace permet de résoudre ces logiques que l'on croit infaillible.

LIB_test = formation.formation_ville
Trace(formation.formation_ville) <------------------------ Ta preuve en debug live
SI formation.formation_ville="Paris" ALORS
LIB_test = "Panam"
SINON
LIB_test = "Autres"
FIN


Serge

--
-----
Parfois, la logique est implacable...
Membre enregistré
80 messages
Popularité : +2 (2 votes)
Posté le 02 juillet 2020 - 09:20
Bonjour Serge,
merci pour cette ligne de commande Trace, c'est génial.

Alors du coup, je crois que je suis entrain de devenir fou... :o
;(
:o

Je teste et cela m'affiche "Autres", je vérifie dans ma base et j'ai bien Panam....
Je re-teste et cela m'affiche Panam...
Je re-teste et "Autres"

En fait, cette semaine, tout ce que j'ai commencé à apprendre et qui fonctionnait ne fonctionne plus très bien ou très mal sur mon projet.
Est-ce un bug connu ? J'ai trop fait de test ? trop crée de base de test ? Je n'ai que 3 entrée dans chaque table pour vérifier les données.
Quand j'appelle des fonctions comme iInitRequêteEtat il ne me trouve que des entrées dans 2 tables, les autres il les ignores et me les colorie en rouge...
Membre enregistré
213 messages
Popularité : +12 (12 votes)
Posté le 02 juillet 2020 - 15:07
Bonjour Frank,

Je crois que tu dois prendre le temps de comprendre ce que tu fais.

Déjà, je ne comprends pas le pourquoi de cette affectation avant ton test SI.
Après tout, tu vas l'écraser selon le résultat du SI.
> LIB_test = formation.formation_ville

Mais bon...


SI formation.formation_ville="Paris" ALORS
TRACE("Je passe par le si")
TRACE("Ville = " + formation.formation_ville)
LIB_test = "Panam"

SINON
TRACE("Je passe par le sinon")
TRACE("Ville = " + formation.formation_ville)
LIB_test = "Autres"

FIN

Prend le temps de comprendre ce que tu fais.
Il sera toujours temps de retirer les traces de ton code ensuite.


En fait, cette semaine, tout ce que j'ai commencé à apprendre et qui fonctionnait ne fonctionne plus très bien ou très mal sur mon projet.

Bienvenue dans le merveilleux monde du développement.
:p

> Est-ce un bug connu ?
Le bug le plus répandu se situe à environ 30 cm du clavier, c'est le développeur.
Trop enjoué à arrivé à ses fins, il saute des étapes.
:p

J'ai trop fait de test ? Trop crée de base de test ?

À nouveau, prend le temps de comprendre ce que tu fais.

Windev est patient, il t'accompagnera dans tes essais.
Tout comme Windev appliquera "ta logique" de façon implacable.

Amicalement,

Serge

--
-----
Parfois, la logique est implacable...
Membre enregistré
80 messages
Popularité : +2 (2 votes)
Posté le 02 juillet 2020 - 16:51
Merci Serge de ton retour.
Effectivement, je pense que le soucis est entre le siège et le clavier comme souvent. :p

Je me suis surement laissé grisé par la vitesse de développement...
Et depuis cette semaine, j'essaie de repointer chaque étape et de les valider une par une (Ma requête est ok, alors je passe à mon état, mon état est ok, alors je créer mon bouton qui doit afficher mon état. Et c'est la que je bloque finalement, je ne comprends pas bien pourquoi il ne reconnait pas les variables de ma table.

Idem sur cette requête, j'essaie de ne plus penser PHP/SQL à tord finalement.
Posté le 02 juillet 2020 - 17:45
le problème est peut être dans ce que tu nous a PAS dit : OU est ce code...
S'il n'est pas placé au bon endroit, tu n'accède pas à l'enregistrement que tu crois, et tu à donc des résultats bizarres.

Donc, mets ce code AU PLUS PRES de la ou il doit servir (dans le code avant impresison du champ en question par exemple, pour être sur que, au moment ou il est exécuté, c'est bien le bon enreg qui est cahrgé dans le buffer fichier
Membre enregistré
80 messages
Popularité : +2 (2 votes)
Posté le 02 juillet 2020 - 17:53
Re
je fais donc un copié collé, et j'obtiens une valeur vide ... Ce qui explique le résultat autre.
Je crée donc un libellé pour afficher la valeur, et j'ai Paris... Je dois vraiment tout revoir car à force ce qui était limpide s'opacifie...
Posté le 03 juillet 2020 - 09:31
Argus a écrit :
le problème est peut être dans ce que tu nous a PAS dit : OU est ce code...
S'il n'est pas placé au bon endroit, tu n'accède pas à l'enregistrement que tu crois, et tu à donc des résultats bizarres.

Donc, mets ce code AU PLUS PRES de la ou il doit servir (dans le code avant impresison du champ en question par exemple, pour être sur que, au moment ou il est exécuté, c'est bien le bon enreg qui est cahrgé dans le buffer fichier


Bonjour Argus,
effectivement, je dois rajouter des détails.

Je travaille sur une page ETAT
Je mets un libellé de test pour afficher formation_ville (ça affiche bien Paris donc je continue)
et juste en dessous, je crée un autre libellé, puis F2, et à l'intérieur je mets cette condition.

Dans tous les cas, merci de prendre le temps de me répondre, ça fait plaisir.
Posté le 09 juillet 2020 - 10:00
J'ai trouvé !
Mon action sur le libellé me faisais toujours des erreurs, j'ai donc tout repris et si j'écris comme cela, tout est ok :

SI REQ_attestation.formation_ville ="Paris" ALORS
LIB_test = "blabla."
SINON
LIB_test = "blabla2"
FIN