#1 Mon 04 March 2002 20:07
- Albin Hermange
- Invité
Conclusion : fermer les query
Bonjour,
comment en ligne de commande MapBasic fermer toutes les tables queryXXX ?
Merci d'avance
#2 Mon 04 March 2002 20:10
- Jacques Paris
- Invité
Re: Conclusion : fermer les query
Voici la sub que j’utilise dans l’application ClearQue.mbx (disponible dans les applications MLC_INI a www.paris-pc-gis.com/mlc/mlc_main_fr.htm)
Sub clearqueries
dim i,nt as smallint
nt=numtables()
if nt=0 then
exit sub
end if
i=nt
boucle:
if tableinfo(i,3)=2 then
close table tableinfo(i,1)
end if
i=i-1
if i>=1 then goto boucle end if
end sub
Jacques Paris
#3 Tue 05 March 2002 20:10
- Albin Hermange
- Invité
Re: Conclusion : fermer les query
Bonjour,
suite a ma demande Jacques Paris a envoye un source (voir ci dessus) permetant de fermer les query automatiquement.
voici une autre version (basee sur celle de Jacques PARIS) qui pour mon cas tourne beaucoup plus vite et dans laquelle il n'y a plus le GOTO
SUB FERMERQUERY()
dim i,nt as smallint
nt=numtables()
if nt 0 then
for i=nt to 1 step -1
if tableinfo(i,3)=2 then
close table tableinfo(i,1)
end if
next
end if
END SUB
Pour information, fermer les query est TRES important, ma fonction generait 10000 query et le traitement n'arrivait jamais au bout, le fait de fermer les query fait arriver mon traitement au bout en 5 min.
Aucune autre modif ds le code n'a ete effectuee. De plus , si vous tuez mapinfo pendant un traitement mapbasic qui cree des query , pensez bien a supprimer les fichiers temporaires que mapinfo cree ds le repertoire temporaire de l'utilisateur car sinon mapinfo a des comportement TRES bizarre: blocage au lancement, impossibilite de faire des requetes. et je parle en connaissance de cause.
Un grand merci a Jacques PARIS pour toutes ses reponses et a la liste