[Résolu] Calcul binaire comme stockage de paramètres

Posté par R&B le 15/7/2010 16:52:11
Bonjour,
j'ai un certain nombre de critères de sélection sur un fichier (tous des booleens). Pour les stocker j'ai cumulé ces critère dans un calcul binaire dans une rubrique numérique.

critère 1 : 2^0 = 1
critère 2 : 2^1 = 2
critère 3 : 2^2 = 4
...
critère n : 2^(n-1)

si on a critère 1 et 3 => rubrique = 1+4 = 5

selon le critère je cumule ces valeur dans un champ que je peux ensuite évaluer via un ETBinaire(Champ,critère).
recherche critère 1-> EtBinaire(5,1) => vrai
recherche critère 2-> EtBinaire(5,2) => faux
recherche critère 3-> EtBinaire(5,4) => vrai
recherche critère n-> EtBinaire(5,puissance(2,(n-1))

Ligne a ligne : retrouver si la valeur contient tel ou tel critère c'est ok. Mais quand je souhaite filter selon tel ou tel critère... c'est un autre problème.

j'ai essayé hfiltre
avec nSelection = cumul des valeur sélectionnée (en puissance de 2)
si je met un filtre "=" : hfiltre(fichier,"rubrique='"+nSelection+"'")
j'ai pile poil les valeurs qui correspondent exactement à ma sélection.
Mais je ne sais isoler les ligne qui satisfont à "au moins" un critère de sélection.
j'ai essayé la condition >= mais ce n'est pas satisfaisant car on sélectionne parfois des lignes qui ne correspondent pas à mon critère.

Est-il possible de filtrer sur une condition avec des calculs binaire :
hfiltre(fichier,"ETBinaire(rubrique,'"+nSelection+"'")
Evidement cela ne passe pas mais c'est ce que j'aurais souhaité exécuter...

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=21&topic_id=6420&post_id=25341