#1 Wed 19 June 2013 12:39
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Filtrer l'apparition des étiquettes
Bonjour à tous,
je cherche un moyen pour faire en sorte que mes étiquettes n'apparaissent que lorsque l'information est différente de 0.
Je travaille sur des Flottants.
Pour le moment j'arrive seulement à obtenir l'information True ou False.
J'ai pu lire dans certains posts qu'on pouvait effectuer une sélection et appliquer l'étiquette dessus, seulement dans mon cas c'est difficile car je souhaite faire apparaître plusieurs champs dans mon étiquette...
Quelqu'un aurait-il une idée?
Sachant que je travaille sur une version assez ancienne de Mapinfo ( 6.5 ).
Je vous remercie par avance!!
Cordialement
Hors ligne
#2 Wed 19 June 2013 13:26
- David_fred
- Participant actif
- Lieu: montpellier
- Date d'inscription: 1 Jun 2006
- Messages: 59
Re: Filtrer l'apparition des étiquettes
bonjour,
voici ce que je ferai:
1- faire une requette pour obtenir le meme fichier mais sans les lignes où il ne faut pas d'étiquette.
2- rajouter la couche dans le controle des couches.
3- mettre les etiquettes correspondant à cette nouvelle couche
Il me semble que cela correspond à ce que tu as lu. je ne vois pas où est le pb par rapport à la constitution de l'étiquette à partir de plusieur champs.
cordialement
FD
Hors ligne
#3 Wed 19 June 2013 13:43
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Re: Filtrer l'apparition des étiquettes
parce que l'apparition de l'étiquette ne doit pas dépendre de la ligne mais du champ.
Par exemple,
1 Champ1 = 0 Champ2= 3
2 Champ1=4 Champ2=0
je voudrais savoir s'il était envisageable de faire en sorte que la première étiquette soit: 3 et la seconde 4... ?
ça me semble tendu!!
Hors ligne
#4 Wed 19 June 2013 13:55
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Filtrer l'apparition des étiquettes
Salut,
Pour ma part ce n'est pas très clair
Avec un paramêtrage dans "expression" --> label with
Si ---> Champ1 = 0 Champ2= 3 ---> alors que veux tu afficher
Si --> Champ1=4 Champ2=0 --> etc...
A+
Joël
Hors ligne
#5 Wed 19 June 2013 14:07
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Re: Filtrer l'apparition des étiquettes
Si Champ1 = 0 Champ2=3 : je veux afficher "3"
Si Champ1=4 Champ2 = 0: "4"
Si Champ1 = 0 Champ2= 0: rien
Si Champ1 = 6 Champ2 = 9: 6 & 9
désolée de n'avoir pas été très claire... j'espère que je le suis à présent.
Hors ligne
#6 Wed 19 June 2013 16:08
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Filtrer l'apparition des étiquettes
Pour l'instant je ne vois que des requêtes successives puis créer des layers avec chaque sélection.
Dernière modification par Spacejo (Wed 19 June 2013 16:08)
Hors ligne
#7 Wed 19 June 2013 16:31
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Re: Filtrer l'apparition des étiquettes
j'avais peur de cette réponse
merci quand même!!
Hors ligne
#8 Wed 19 June 2013 19:17
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Filtrer l'apparition des étiquettes
Si tu peux ajouter un champ à ta table:
Tu peux incrémenter un "ChampEtiquette" avec la FMB (Fenêtre MapBasic)
Code:
Select * from TaTable where Champ1>Champ2 into Resultat1 Update Resultat1 Set ChampEtiquette=Champ1 Select * from TaTable where Champ1<Champ2 into Resultat2 Update Resultat2 Set ChampEtiquette=Champ2 etc...
A+
Joël
Dernière modification par Spacejo (Wed 19 June 2013 19:18)
Hors ligne
#9 Thu 20 June 2013 09:19
- sylvain poupard
- Participant assidu
- Date d'inscription: 19 Mar 2009
- Messages: 362
Re: Filtrer l'apparition des étiquettes
Bonjour,
Un peu sur le même principe que Spacejo je proposerais cela (si j'ai bien compris que lorsqu'il y a un "0" on ne le prend pas et lorsqu'il y a deux chiffres on prend les 2):
- création d'un nouveau champ étiquette
- mettre à jour ce champ avec : [champ1] + " & " + [champ2]
- chercher/remplacer : "0 & " par ""
- un deuxième chercher/remplacer : " & 0" par ""
- et un troisième éventuellement : "0 & 0" par ""
Bon courage.
Hors ligne
#10 Thu 20 June 2013 09:30
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Re: Filtrer l'apparition des étiquettes
oui je vais essayer avec ça...
voir si ce n'est pas trop long (car j'ai beaucoup de champs d'où l'intérêt à ce qu'ils n'apparaissent pas inutilement!)
bref, je reviendrai vous dire comment ça se passe!!
merci!
Hors ligne
#11 Thu 20 June 2013 09:46
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Filtrer l'apparition des étiquettes
Salut,
En passant par la FMB ce sera très rapide.
Ce que je me demandais --> Toute tes conditions sont elles celle ci:
Si Champ1 = 0 Champ2=3 : je veux afficher "3"
Si Champ1=4 Champ2 = 0: "4"
Si Champ1 = 0 Champ2= 0: rien
Si Champ1 = 6 Champ2 = 9: 6 & 9
Car pour les 2 premières si champ1<champ2 alors on étiquette le champ2
Si champ1>champ2 on étiquette champ1
Mais celà bloque avec 6 et 9 ---> Si Champ1 = 6 Champ2 = 9: 6 & 9
A+
Joël
Dernière modification par Spacejo (Thu 20 June 2013 10:59)
Hors ligne
#12 Thu 20 June 2013 13:56
- EmBo
- Participant actif
- Date d'inscription: 22 Mar 2013
- Messages: 55
Re: Filtrer l'apparition des étiquettes
Je n'ai pas encore pris le temps de me remettre à cette manip' (un peu débordée par de nouvelles données que je n'attendais plus!!)
mais pour réponde à Spacejo, je me dis qu'il vaudrait sans doute mieux que ma condition ne soit pas ChampX > Champ2X mais plutôt
ChampX >0 ...
dans ce cas là il ne devrait plus y avoir de blocage?
Bon je m'y remt au plus vite et reviens vous tenir au courant!
merci!
Hors ligne
#13 Thu 20 June 2013 14:48
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Filtrer l'apparition des étiquettes
Je suis peut être parti sur une fausse piste
--> De quelle nature sont tes champs 1 et 2?
Quelle est leur amplitude?
Et quelles sont toutes les conditions?
Dernière modification par Spacejo (Thu 20 June 2013 18:04)
Hors ligne
#14 Mon 24 June 2013 11:07
- Frederic COLLIN
- Participant assidu
- Lieu: ANNECY
- Date d'inscription: 19 Sep 2005
- Messages: 158
- Site web
Re: Filtrer l'apparition des étiquettes
Bonjour,
j'ai aussi une méthode de filtrage des étiquettes, en plaçant une condition d'affichage de l'étiquette dans l'expression de l'étiquette elle-même :
Left$(Str$(CES), Len(Str$(CES))*Int(Left$(Str$(CES), 1)<>"0"))
"0" : représente la valeur à ne pas afficher.
A la place de CES, mettre : votre champ
Ceci est à adapter par rapport à votre cas ; on peut ainsi changer les règles du jeu, en mettant par exemple ="0", ce qui afficherait uniquement les valeurs en zéro...
Bien cordialement.
F.COLLIN
www.infosig.net
Hors ligne
#15 Fri 25 August 2017 16:44
- antonio24
- Juste Inscrit !
- Date d'inscription: 17 Nov 2008
- Messages: 8
Re: Filtrer l'apparition des étiquettes
Merci Frédéric, c'est exactement ce qu'il me fallait. Je n'ai aucune idée de l'utilité des fonctions utilisés mais cela permet bien de faire un filtre sur les valeurs différentes de 0.
Bonne journée
Hors ligne