Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Wed 24 January 2007 12:02

djabri.ahmed
Participant occasionnel
Lieu: Staoueli
Date d'inscription: 21 Jun 2006
Messages: 32

recherche multicritère

Monsieurs,
Je  cherche un modèle de programme MapBasic (*.mb) pour la recherche multicritère dans ma base de donnée d'une table.
La recherche que je demande une boite de dialogue contenu les champs des données de la table. Code, commune, date, …

J'attends votre reponse avec impatrience et merci

[EDIT Maurice] J'ai enlevé les "Quote" et autres "gras" de votre message...qui n'ajoutent rien à la question!
...que j'essaie de reformuler: vous recherchez un modèle de code permettant de lister les champs d'une table
C'est bien ça ???

Dernière modification par Maurice (Wed 24 January 2007 13:43)


Ahmed DJABRI-Alger

Hors ligne

 

#2 Wed 24 January 2007 13:58

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: recherche multicritère

Bonjour,
Sur la base de la reformulation de votre question (si je ne me suis pas trompé smile) je vous propose:
- de définir une variable "array" par Dim nomchamp() As String
- de choisir une table ouverte ma_table (par la méthode de votre choix), puis

Code:

  reDim nomchamp(TableInfo(ma_table,4))
    For k=1 To TableInfo(ma_table,4)
        nomchamp(k)=ColumnInfo(ma_table,"COL"+k,1)
    Next

et de permettre le choix d'un champ par un dialogue, genre:

Code:

 Control PopupMenu
  position 5 , 76
  width 128 height 50
  title from variable nomchamp
  calling ma_procedure
 id 2

ps: ce choix déclenche ici une sous-procédure (un Sub) : ma_procedure. C'est facultatif et on peut se contenter du nom de champ choisi (qui sera validé dès qu'on clique sur le OK d'un OKbutton) pour une procédure ultérieure.

Hors ligne

 

#3 Mon 05 February 2007 13:11

djabri.ahmed
Participant occasionnel
Lieu: Staoueli
Date d'inscription: 21 Jun 2006
Messages: 32

Re: recherche multicritère

Bonjour,
Mr Maurice merci pour votre réponse.
La question que je vous demande est une recherche de façon a ce que lorsque je saisi le nom ou le code de la commune désirée sur ma boite de dialogue, MapInfo me donne les autres informations d'une façon automatique.

J'ai crée une boite de dialogue, pour la recherche multicritère des informations sur ma base de données (communes.tab).

Forme de ma boite de dialogue:

Code de la commune:


Nom de la commune:


Nom de la wilaya:


Date 1:


Date 2:


Je vous demande le code de MapBasic sur le CALING de cinq cases de la boite de dialogue.

Merci à tous


Ahmed DJABRI-Alger

Hors ligne

 

#4 Mon 05 February 2007 15:57

Maurice
Membre
Lieu: Montpellier
Date d'inscription: 5 Sep 2005
Messages: 5331

Re: recherche multicritère

Bonjour,
Je vous laisse essayer (sur la base de l'exemple déjà fourni) en définissant 2 variables array code_com() et nom_com() que vous 'remplissez' respectivement avec les valeurs - que je suppose uniques - des colonnes CODE_COMM et NOM_COMM.
Dans le dialog, utilisez pour ces deux contrôles des PopupMenu avec Title From Variable... et un Calling à des sous procédures qui  modifient le contenu de l'autre contrôle du dialogue par Alter Control X Value Y, X étant le numéro du contrôle à modifier (celui où on n'a pas fait le choix) et Y la valeur que prend par exemple nom_com correspondant au code_com choisi.
Si j'ai le temps je fabrique un exemple ... et je vous le passerai si vous "calez"...

Hors ligne

 

Pied de page des forums

Powered by FluxBB