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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 11 July 2012 12:06

FatimZB
Participant occasionnel
Date d'inscription: 26 Jun 2012
Messages: 12

[mapbasic 9.5] Condition jointure Concaténée

Bonjour tout le monde,
S'il vous plait , j'aimerai bien faire une jointure entre deux table. Une étant donnée par l'expression : strTableList(1) l'autre étant donnée par Table_Région
voici la condition que j'ai mis dans la clause where : strtablelist(1) &"."& strColnameNP
j'ai essayé aussi strtablelist(1) & "." & NP mais aucun n'essaie n'a aboutit. Sur la fenêtre mapInfo on me génère une erreur : non concordance de types de données.
voici les définitions des variables déjà citées :
Dim strColnameNP as string
Dim NumPermis as Alias
Dim NP as Float
strColnameNP = ColumInfo(strTablelist(1), "COL"+ReadControlValue(3), COL_INFO_NAmE)
NumPermis = strTableList(1) & "." & strcolnameNP
NP= NumPermis

S'il vous plait, toutes vos remarques et tous vous conseils me seront très utiles.
Merci pour votre interaction.

Hors ligne

 

#2 Wed 11 July 2012 14:23

nicoboud
Membre
Lieu: Nantes
Date d'inscription: 12 Oct 2007
Messages: 860

Re: [mapbasic 9.5] Condition jointure Concaténée

Bonjour,

Le problème vient du fait que les 2 variables avec lesquelles vous faites la concaténation, ne sont probablement pas du même type : strColnameNP est en caractère et strtablelist(1) doit être autre chose que du caractère...

ensuite dans la clause "where", quelle est votre condition de jointure en entier ? car ce que vous présentez n'est pas une condition de jointure, il s'agit uniquement d'une concaténation.
Mapinfo n'acepte pas des résultats d'expression comme jointure. On ne peut faire de jointure alphanumérique qu'entre 2 champs de même type. Il faut donc créer un champ dont les données seront le résultat de votre concaténation avant de faire la jointure, puis utiliser ce nouveau champ dans votre jointure.

Si le but est de concaténer 2 champs issus de 2 tables différentes, alors la concaténation doit se faire dans la clause "select", et la jointure sur un champ commun entre les 2 tables.


Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS

Hors ligne

 

Pied de page des forums

Powered by FluxBB