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é ?

#1 Tue 04 September 2007 16:07

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

[Arcview 8.x+] Requête + mise a jour

Hello,

Je cherche à faire une opération sous arcgis que je sais faire sous Mapinfo et je souhaitais savoir si c'était techniquement possible avec ma version, ou sur une version plus récente.

Voilà le code en SQL :

Select * from Matable Where ( indiceA=1 AND indiceB=1 ) Into MaSelection
Update MaSelection Set indiceFinal = 1


Je sais bien sûr le faire à la main, mais j'aimerais en lancer tout un paquet d'affilée.
La méthode "Sélection avec la boîte de dialogue, puis mise à jour dans la colonne puis Sélection avec la boîte de dialogue, puis mise à jour" est exclue car trop longue. Pour l'instant je jongle un peu mais j'aime bien centraliser les traitements dans un seul soft.

Merci de toute piste, je suis aussi intéressé par savoir si c'est possible dans les version suivantes.
Robin.

Hors ligne

 

#2 Tue 04 September 2007 17:23

paulcarrot
Participant occasionnel
Lieu: saint-etienne
Date d'inscription: 14 Nov 2005
Messages: 42

Re: [Arcview 8.x+] Requête + mise a jour

Bonjour,

Avez vous essayé de faire une requête VBA?Du genre :
dim mavariable as integer

if [indiceA] = 1 and [indiceB]=1 then
mavariable = 1
end if

indicefinal =
mavariable

Essayez de voir si ça peut coller à vos attentes.

Cordialement PCA

Hors ligne

 

#3 Tue 04 September 2007 17:35

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: [Arcview 8.x+] Requête + mise a jour

Tiens, oui, c'est tout bête, je n'avais pas pensé à ça !
C'est ce qui paraît le plus simple effectivement.

Je teste et je vous dis quoi.

Merci wink
Robin.

Hors ligne

 

#4 Tue 04 September 2007 17:53

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: [Arcview 8.x+] Requête + mise a jour

Re,

J'ai testé, c'est tout à fait ce que je voulais.

Procédure pour ceux qui se demandent où ça se passe :

- Clic droit sur l'entête de la colonne dans la table d'attributs
- Calculer les valeurs...
- Clic sur le bouton "avancé"
- Coller le code dans la boîte de dialogue.

Merci beaucoup.
Robin

Ps : le test avec plusieurs conditions est tout à fait faisable, c'est ça que je voulais faire wink

Dim mavariable as integer

if [IndiceA] = 1 and [IndiceB]=1 then
mavariable=1
end if

if [IndiceA] = 1 and [IndiceB]=2 then
mavariable=2
end if

if [IndiceA] = 3 and [IndiceB]=3 then
mavariable=3
end if

indicefinal=mavariable

Hors ligne

 

#5 Tue 04 September 2007 18:58

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: [Arcview 8.x+] Requête + mise a jour

Rebonsoir,

J'ai testé une autre formule avec "Select Case", histoire de voir, et elle me plaît pas mal
(plus simple pour explorer toutes les possibilités) :

Dim mavariable as integer

Select Case [IndiceA]
  Case 1
    Select Case [IndiceB]
      Case 1
      mavariable = 1
      Case 2
      mavariable = 2
    End select
  Case  2
    Select Case [IndiceB]
      Case 1
      mavariable = 1
      Case 2
      mavariable = 2
    End select
End Select

Hors ligne

 

Pied de page des forums

Powered by FluxBB