#1 Wed 18 September 2013 17:19
- aurelka.g
- Juste Inscrit !
- Date d'inscription: 2 Sep 2013
- Messages: 9
modifier champs par ajout mapbasic
Bonjour,
Je dispose d'un tableau avec notamment un champs (PlotsID) qui me permet d'identifier mes parcelles (plus de 600).
Exemple de nom: N241, B102, D13
Je souhaiterai modifier le nom des parcelles en ajoutant un point "." juste avant le dernier chiffre du nom qui correspond en fait au numéro de la sous parcelle.
J'aimerais donc obtenir : N24.1, B10.2, D1.3
Je suppose que ça doit être faisable sur mapbasic mais je ne trouve pas la fonction adéquate.
J'ai un début de code (partie la plus facile)
==> Update ma_table set PlotsID = xxxx$(PlotsID)
Pourriez-vous m'aider?
Je vous remercie.
Aurélie G
Hors ligne
#2 Wed 18 September 2013 17:30
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: modifier champs par ajout mapbasic
Salut,
Y'a t'il toujours qu'un chiffre derrière le point?
La chaine à remplacer est t'elle toujours de cette forme --> NXXX, BXXX, DXXX
A+
Joël
Dernière modification par Spacejo (Wed 18 September 2013 17:32)
Hors ligne
#3 Wed 18 September 2013 17:32
- aurelka.g
- Juste Inscrit !
- Date d'inscription: 2 Sep 2013
- Messages: 9
Re: modifier champs par ajout mapbasic
Oui il y aura toujours un chiffre après le point.
Avant le point il y a 3 ou 2 caractères (1 lettre au moins, puis un à deux chiffres).
merci
Hors ligne
#4 Wed 18 September 2013 17:36
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: modifier champs par ajout mapbasic
Donc ta chaine ce définit comme ceci : Une lettre puis 2 à 3 chiffres
Dernière modification par Spacejo (Thu 19 September 2013 23:50)
Hors ligne
#5 Wed 18 September 2013 17:43
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: modifier champs par ajout mapbasic
Ce n'est pas une fonction qu'il te faut mais 3 ---> Voir ---> http://georezo.net/forum/viewtopic.php?id=75176
Hors ligne
#6 Thu 19 September 2013 08:15
- aurelka.g
- Juste Inscrit !
- Date d'inscription: 2 Sep 2013
- Messages: 9
Re: modifier champs par ajout mapbasic
Bonjour,
merci beaucoup pour la réponse, j'avais effectivement besoin de trois fonctions, il faut que j'apprenne à réfléchir de façon plus "décomposée".
Voici la ligne de code :
Update MaTable set MonChamps = Left$(MonChamps,(Len(MonChamps)-1)) & "." & Right$(MonChamps,1)
Bonne journée et encore merci
Aurélie
Hors ligne
#7 Thu 19 September 2013 11:03
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: modifier champs par ajout mapbasic
Salut,
De rien
A+
Joël
Dernière modification par Spacejo (Thu 19 September 2013 23:42)
Hors ligne
#8 Thu 19 September 2013 22:07
- Jean-Jacques
- Participant actif
- Lieu: Aurillac
- Date d'inscription: 4 Jan 2006
- Messages: 99
Re: modifier champs par ajout mapbasic
Bonjour,
La mise à jour de la colonne comme suit doit fonctionner :
Table-> Mettre à jour colonne
Left$(Champ1,(Len(Champ1)-1)) + "." + Right$(Champ1,1)
Cordialement
Jean-Jacques
DDT15
Hors ligne
#9 Fri 20 September 2013 08:20
- aurelka.g
- Juste Inscrit !
- Date d'inscription: 2 Sep 2013
- Messages: 9
Re: modifier champs par ajout mapbasic
Bonjour,
j'obtiens bien ce que je voulais avec la ligne de code que je proposais mais je pense que les vôtres iraient aussi.
Je retiens l'idée de faire des colonnes temporaires pour une autre manip.
Merci
Aurélie
Hors ligne
#10 Fri 20 September 2013 10:55
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: modifier champs par ajout mapbasic
Salut,
Je n'avais pas compris ton problème
Je pensais qu'un enregistrement de ta table était de la forme --> NXXX, BXXX, DXXX
et que tu voulais --> NXX.X, BXX.X, DXX.X et non que celà représentait 3 enregistrements
C'est pour celà que je préconisais des colonnes temporaires car pour la FMB la ligne de code était trop longue
A+
Joël
Hors ligne