gestion bit à bit - WD11
Le
I.G.LOG
Bonjour
Je cherche a faire une addition bit a bit. Pour ça je n'ai trouvé que la
fonction OUBinaire. mais elle ne me retourne pas la valeur escomptée (mais
je peux me tromper sur cette fonction)
En fait je voudrais manipuler les bits d'un champ pour que celui-ci
corresponde à plusieurs états possibles; par exemple, si le bit 3 vaut 1 =>
etat "Livré", si le bit 6 vaut 1 => etat "Facturé" et si les deux bits
valent 1 alors l'etat est "livré et facturé"
Pour ça, j'ai essayé ceci sans succès:
info(OUBinaire,0,6) // Renvoi 6, OK
info(OUBinaire,1,6) // Renvoi 6 ??? je devrais avoir 7 ?
Merci
Je cherche a faire une addition bit a bit. Pour ça je n'ai trouvé que la
fonction OUBinaire. mais elle ne me retourne pas la valeur escomptée (mais
je peux me tromper sur cette fonction)
En fait je voudrais manipuler les bits d'un champ pour que celui-ci
corresponde à plusieurs états possibles; par exemple, si le bit 3 vaut 1 =>
etat "Livré", si le bit 6 vaut 1 => etat "Facturé" et si les deux bits
valent 1 alors l'etat est "livré et facturé"
Pour ça, j'ai essayé ceci sans succès:
info(OUBinaire,0,6) // Renvoi 6, OK
info(OUBinaire,1,6) // Renvoi 6 ??? je devrais avoir 7 ?
Merci

Poser une question


"I.G.LOG" news:4757d604$0$5075$
=>
En WD11 aussi en mettant la bonne syntaxe:
Info(OUBinaire(1,6))
--
Pascal
Ne garder que le prénom pour me joindre
En fait, OUBinaire fonctionne correctement, j'avais mal interprété le
resultat.
Pour ce qui est du stockage en base, le champ n'est normellement pas
accessible par les utilisateurs: il sert à ma bidouille interne. Mais ça
risque de manquer de "lisibilité" et surtout, je ne trouve pas le moyen avec
le moteur HF d'effectuer des requetes sur les bits d'un champ (il me semble
que l'opérateur & permet ça avec d'autres bases)
En tous cas merci pour vos réponses