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 :

Opération interdite entre Chaine et Num ? [WD17]


Sujet :

WinDev

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2012
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2012
    Messages : 19
    Points : 13
    Points
    13
    Par défaut Opération interdite entre Chaine et Num ?
    Bonjour,

    Je ne comprends pas pourquoi mon code fonctionnait jusqu'à hier et hop voilà qu'il m'affiche l'erreur suivante aujourd'hui : "L'opération '*' interdite entre un élément de type 'chaîne ANSI' et un élément de type 'numérique'."

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Taux est un numérique = 122,3
     
    // Pour tous les prix de la colonne COL_PRIX je fais une multiplication par 122,3 pour avoir le prix DEF
    POUR i=1 _A_ TableOccurrence(TABLE_Produit_mag)
    	COL_PRIX_MAG[i]=(COL_PRIX[i]*Taux)
    FIN
    Dans ma Table_Produit_mag, ces 2 COL sont en monétaire.

    Merci pour votre indulgence ;-)

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    178
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 178
    Points : 416
    Points
    416
    Par défaut
    Bonjour,

    Quelle est la valeur renvoyée si vous faites un trace de COL_PRIX[i] ?
    Vous pouvez essayer d'utiliser la propriété ..Valeur pour contourner le problème.

  3. #3
    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
    S'il te dit que c'est un type ansi, il considère clo_prix comme une chaîne.
    Essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Taux est un numérique = 122,3
    
    // Pour tous les prix de la colonne COL_PRIX je fais une multiplication par 122,3 pour avoir le prix DEF
    POUR i=1 _A_ TableOccurrence(TABLE_Produit_mag)
    	COL_PRIX_MAG[i]=(Val(COL_PRIX[i])*Taux)
    FIN
    Et si ça coince :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    COL_PRIX_MAG[i]=numeriqueverschaine(Val(COL_PRIX[i])*Taux)
    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

  4. #4
    Membre émérite
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 075
    Points : 2 441
    Points
    2 441
    Par défaut
    Bonjour,

    Pour être systématique : avant que l'erreur ne se déclare,
    quelle modification avez-vous apportée "localement" à votre code ?
    si aucune, quelle modification plus "périphérique" avez-vous apportée à votre code ?


    Si vous n'avez apporté aucune modification au code que vous nous soumettez, alors il faut rechercher un effet de bord d'autres modifications opérées.
    J'ai déjà vu cela.

    Puis-je aussi vous suggérer deux tests ?
    1. supprimer les parenthèses ouvrantes et fermantes autours de l'opération du membre de droite (Val(COL_PRIX[i])*Taux), dont je vois pas l'utilité et dont je ne vois pas non plus la nocivité, mais sait-on jamais ...
    2. remplacer la variable Taux par la valeur 122,3 en dur .

    A vous lire,

    Hemgé

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2012
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Octobre 2012
    Messages : 19
    Points : 13
    Points
    13
    Par défaut
    Merci beaucoup à tous pour vos réponses, la réponse de frenchsting a fonctionné.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Taux est un numérique = 122,3
     
    // Pour tous les prix de la colonne COL_PRIX je fais une multiplication par 122,3 pour avoir le prix DEF
    POUR i=1 _A_ TableOccurrence(TABLE_Produit_mag)
    	COL_PRIX_MAG[i]=(Val(COL_PRIX[i])*Taux)
    FIN
    Je vous souhaite une bonne journée à tous.

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    windev
    Inscrit en
    Mai 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Côte d'Ivoire

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

    Informations forums :
    Inscription : Mai 2019
    Messages : 3
    Points : 0
    Points
    0
    Par défaut J'ai le même problème avec mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    HLitRecherchePremier(ENTREE_TRANSACTION,ENTREE_TRANSACTION.RESEAUX,COMBO_OPERATEUR)
    SI HTrouve() ALORS
    	HLitRecherchePremier(ENTREE_TRANSACTION,ENTREE_TRANSACTION.TYPE_COMPTE,1)
    	SI HTrouve()ALORS
    		SI ENTREE_TRANSACTION.MONTANT<SAI_MONTANT ALORS
    			ToastAffiche("erreur solde inssuffisant pour valider l'opération",toastCourt,cvMilieu,chCentre,RVBRouge(255))
    			RepriseSaisie(SAI_MONTANT)
    		SINON
    			ENTREE_TRANSACTION.MONTANT-=SAI_MONTANT
    			HModifie(ENTREE_TRANSACTION)
    			EcranVersFichier()
    			HAjoute(ACHAT_CREDIT)
    			Ferme()
    		FIN
    	FIN
    FIN

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2018
    Messages : 83
    Points : 66
    Points
    66
    Par défaut
    Salut knhj2019

    1- c'est vague, quand tu dis "J'ai le même soucis avec mon code"; Même avec l'image à l'appui.
    Tu n'explique pas véritablement ton problème, donc compliqué de te venir en aide.

    2- On ne sait pas ce que ton code est sensé faire. Il nous incombe donc de chercher de nous même ce à quoi il sert; ce à quoi il est destiné.

    3- la discussion est déjà marquée "Résolue". Il est préférable que tu crée une nouvelle.

    Si tu veux des réponses, soit explicite et je te conseille encore de créer une nouvelle discussion toujours dans le forum Windev
    N'oubliez pas le petit pouce, si mon message vous a été utile.

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2018
    Messages : 83
    Points : 66
    Points
    66
    Par défaut
    Déjà, est-ce avec WD17 que tu codes?
    N'oubliez pas le petit pouce, si mon message vous a été utile.

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    windev
    Inscrit en
    Mai 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Côte d'Ivoire

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

    Informations forums :
    Inscription : Mai 2019
    Messages : 3
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par StephCoul Voir le message
    Déjà, est-ce avec WD17 que tu codes?
    Non je code avec le windev 20

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    windev
    Inscrit en
    Mai 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : Côte d'Ivoire

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

    Informations forums :
    Inscription : Mai 2019
    Messages : 3
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par StephCoul Voir le message
    Salut knhj2019

    1- c'est vague, quand tu dis "J'ai le même soucis avec mon code"; Même avec l'image à l'appui.
    Tu n'explique pas véritablement ton problème, donc compliqué de te venir en aide.

    2- On ne sait pas ce que ton code est sensé faire. Il nous incombe donc de chercher de nous même ce à quoi il sert; ce à quoi il est destiné.

    3- la discussion est déjà marquée "Résolue". Il est préférable que tu crée une nouvelle.

    Si tu veux des réponses, soit explicite et je te conseille encore de créer une nouvelle discussion toujours dans le forum Windev
    A la validation du code il affiche une erreur disant que l'opération est interdite entre un entier et un élément de type ANSI

  11. #11
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 811
    Points : 5 270
    Points
    5 270
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Ce petit mot n'est pas interdit.
    Si tu veux que l'on tente de résoudre ton problème, crée un nouveau post
    Il y a peut-être plus simple, mais ça tourne.
    Quand tout a échoué utilisez l'option RTFM

  12. #12
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 057
    Points : 9 397
    Points
    9 397
    Par défaut
    Apparement, le but du jeu, c'est de deviner les informations que Windev te donne.

    A mon avis, Windev te dit que l'erreur est sur l'instruction ENTREE_TRANSACTION.MONTANT-=SAI_MONTANTJ'ai gagné ?
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  13. #13
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2018
    Messages : 83
    Points : 66
    Points
    66
    Par défaut
    knhj2019 créé une nouvelle discussion s'il te plait.
    N'oubliez pas le petit pouce, si mon message vous a été utile.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Opération interdite pour cet objet ?
    Par AndréPe dans le forum VBA Access
    Réponses: 8
    Dernier message: 14/08/2007, 10h26
  2. Hibernate Oracle Blob Spring : opération interdite
    Par schant dans le forum Hibernate
    Réponses: 2
    Dernier message: 30/07/2007, 13h37
  3. comparaison entre chaines de caracteres
    Par Mpierre dans le forum Oracle
    Réponses: 2
    Dernier message: 22/06/2006, 23h21
  4. Matching entre chaines de caractères
    Par shenron666 dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 13/10/2005, 16h39
  5. Opération mathématique entre deux Threads
    Par rvzip64 dans le forum Langage
    Réponses: 11
    Dernier message: 13/06/2005, 11h58

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