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 :

Passage de paramettre RVB [WD17]


Sujet :

WinDev

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de dany13
    Inscrit en
    Mai 2004
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 168
    Par défaut Passage de paramettre RVB
    Bonsoir,

    je tombe sur un souci qui n'est pas compliqué mais dont je ne sais pas comment m'en sortir.

    Je souhaiterai parametrer la couleur de fond d'une cellule et cette couleur est contenue dans une base de données HF.

    Si je mets directement le code suivant ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TABLE_matable[1][2]..CouleurFond = RVB(255,2,255)
    Mais si je récupère cette valeur de couleur dans ma base comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    PROCEDURE FN_CouleurFdEtat(nIdEtat)
    sCouleurFdEtat est une chaîne =""
    HLitRecherchePremier(ETAT,IDETAT,nIdEtat)
    SI HTrouve(ETAT) ALORS
    	sCouleurFdEtat = ETAT.CODE_COULEUR
    FIN
    RENVOYER sCouleurFdEtat
    TABLE_matable[1][2]..CouleurFond = FN_CouleurFdEtat(REQ_mesdonnees.ID_ETAT)
    ça ne fonctionne pas!!

    Le problème vient du fait qu'il me recupere la valeur avec des guillemets comme si c'etait une chaine "RVB(255,255,255)" et non l'interpretation de la couleur qu'il devrait en faire...

    Comment puis je faire pour qu'il m'interprete la valeur qu'il recupere au lieu de l'interpreter comme une chaine de caractère?

    Merci pour vos lumières

  2. #2
    Membre Expert Avatar de laurent30s
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 889
    Par défaut
    Sous quel format tu as sauvegardé la couleur dans la base ?
    Apparemment c'est une chaîne mais il faudrait que tu nous donnes un exemple pour qu'on puisse te répondre...

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

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

    Informations forums :
    Inscription : Mars 2009
    Messages : 179
    Par défaut
    Bonsoir,

    RVB() est une fonction qui renvoie un entier, c'est ce dernier que vous devez stocker dans votre base de donnée.

    Pour que votre fonctionne, et si l'expression renvoyée par "ETAT.CODE_COULEUR" est "RVB(255,2,255)" vous pouvez utiliser quelque chose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    PROCEDURE FN_CouleurFdEtat(nIdEtat)
    sCouleurFdEtat est une chaîne =""
    HLitRecherchePremier(ETAT,IDETAT,nIdEtat)
    SI HTrouve(ETAT) ALORS
    	sCouleurFdEtat = ETAT.CODE_COULEUR
    FIN
    RENVOYER ExécuteCode("RENVOYER " + sCouleurFdEtat)
    ------------
    TABLE_matable[1][2]..CouleurFond = FN_CouleurFdEtat(REQ_mesdonnees.ID_ETAT)
    "ExécuteCode("RENVOYER " + sCouleurFdEtat)" aura pour effet d'exécuter la fonction RVB et de vous renvoyer un entier, mais ça revient à tuer une mouche avec un porte avion !

    La bonne solution consiste quand même à stocker la valeur de la couleur dans votre base de donnée, soit un entier !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    PROCEDURE FN_CouleurFdEtat(nIdEtat)
    HLitRecherchePremier(ETAT,IDETAT,nIdEtat)
    SI HTrouve(ETAT) ALORS
    	RENVOYER ETAT.CODE_COULEUR
    SINON
    	RENVOYER -1   // -1 vous permet de laisser la couleur par défaut du champ
    FIN
     
    TABLE_matable[1][2]..CouleurFond = FN_CouleurFdEtat(REQ_mesdonnees.ID_ETAT)

  4. #4
    Membre Expert
    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
    Par défaut
    Bonsoir,

    ..CouleurFond attend non pas une chaîne, mais un entier et le résultat de RVB est un entier.

    Pourquoi codez-vous une fonction qui renvoie une chaîne ?
    Qu'avez-vous été stocker dans votre base ?


    Hemgé

  5. #5
    Membre confirmé Avatar de dany13
    Inscrit en
    Mai 2004
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 168
    Par défaut
    Merci Hemgé, themayu etlaurent30s pour vos élément de réponse.
    Dans la base de données, dans mon champ CODE_COULEUR je mets effectivement la donnée comme ceci : RVB(255,255,255) par exemple.

    Vous me conseillez donc de mettre l'entier qui correspond a RVB(255,255,255) dans le champ de la base de données ?

    Je vais tester cela et je vous tiens au courant!
    Merci pour vos lumières

  6. #6
    Membre confirmé Avatar de dany13
    Inscrit en
    Mai 2004
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 168
    Par défaut
    Merci à vous c'est nickel, ça fonctionne

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

Discussions similaires

  1. passage de paramettres Apache -> servlet
    Par omcougar dans le forum Services Web
    Réponses: 0
    Dernier message: 05/10/2008, 12h03
  2. Passage de paramettre
    Par omdafer dans le forum ASP.NET
    Réponses: 20
    Dernier message: 14/07/2008, 21h09
  3. [image & passage de paramettre] Sos svp !
    Par maximus001ma dans le forum JSF
    Réponses: 10
    Dernier message: 23/08/2007, 15h35
  4. Réponses: 6
    Dernier message: 10/06/2007, 13h33
  5. Probleme jsp passage de paramettres
    Par rafounette dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 17/11/2006, 16h43

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