#1 Sat 21 May 2011 12:08
- Meha
- Juste Inscrit !
- Date d'inscription: 16 May 2011
- Messages: 3
bug "could not convert data"
bonjour ,
je travaille sur une application sur mapbasic 9.0 , après extraction de données a partir de deux tables (fichier.tab) , j'ai effectué un calcul dans le but de faire une simulation. La compilation était un succés, mais lors de l'exécution, mapinfo m'affiche un message d'erreur "could not convert data". je n'ai pas compris quels sont les données qu'il n'a pas pu convertir, sachant que dans les calculs effectués, il n' y avait aucune conversion. y'a t'il une solution possible ,merci d'avance.
Hors ligne
#2 Sat 21 May 2011 19:00
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: bug "could not convert data"
Salut,
Peux tu nous en dire plus sur ton .tab et sur ton .mbx?
A+
Joël
Hors ligne
#3 Sat 21 May 2011 20:31
- Meha
- Juste Inscrit !
- Date d'inscription: 16 May 2011
- Messages: 3
Re: bug "could not convert data"
salut,
c'est mon code pour la simulation:
Code:
include"mapbasic.def"
include"menu.def"
include"icons.def"
declare sub calcul
diaLog title "simulation"
control button title "simuler"
calling calcul
sub calcul
dim alpha,j as integer
dim PA,k,rcouv,tl,Az,x,y,hi,f,hr,pc,ls,pind,pf,s,m,di,eval,rad,gn as float
dim aa,bb,cc,pire,Aaa,gama,xf,xh,PL1,PR,a,b as float
dim purple as integer
purple = RGB (210,25,255)
define gr 0
open table "c:\BS.TAB"
open table "c:\orientation.TAB" as o
open table "c:\Rxleve1.TAB" as r
set map layer 1 editable on
k = frontwindow()
fetch first from BS
while not eot (BS)
PA= BS.PA_Power
rcouv= BS.Rayon_couverture
tl= BS.Tilt
Az= BS.Azimuth
x= BS.X_coord
y= BS.Y_coord
hi= BS.Hauteur_Bs
f= BS.Fréquence
hr= BS.Hauteur_R
pc=BS.Affaiblissement
ls= BS.P_masque
pind = BS.P_indoor
pf= BS.P_fading
s= BS.Shadowing
m= BS.Marge
di= BS.distance_incrément
eval= BS.Evaluation
rad= BS.Radials
Az= Az-180
fetch first from o
for alpha =0 to 17 step 1
gn= o.gain
[url][/url][url][/url]
for j= 1 to (rcouv*1000) step 50
j=j*1000
Pire= PA + gn - pc
Aaa = 32.4 + 20* (Log(100)/Log(10)) + 20*(Log(f)/Log(10))
gama = aa - bb * hi + cc/hi
xf =6 * (Log (f/1900)/Log(10))
xh =-10.7 * (Log (hr/2)/Log(10))
aa= 4.6
bb= 0.0075
cc=12.6
PL1= 32.4 + 20 * (Log(j)/Log(10)) +20*(Log(f)/Log(10))
PR = Pire + Gr- PL1- ls- pf -m -pind
a=j * cos((alpha + Az)* deg_2_rad) + x
b=j * sin((alpha + Az)* deg_2_rad) + y
insert into r ( X_coord,Y_coord, Rxlev)values (a,b,PR)
if PR>=-55 then
create rect
into window K
(a-25,b+25) (a+25,b+25)
pen makepen(0,1,purple)
brush makebrush (02,red,red)
elseif PR>=-65 then
create rect
into window K
(a-25,b+25) (a+25,b+25)
pen makepen(0,1,purple)
brush makebrush (02,yellow,yellow)
elseif PR>=-75 then
create rect
into window K
(a-25,b+25) (a+25,b+25)
pen makepen(0,1,purple)
brush makebrush (02,blue,blue)
elseif PR>=-85 then
create rect
into window K
(a-25,b+25) (a+25,b+25)
pen makepen(0,1,purple)
brush makebrush (02,green,green)
end if
j=j/1000
fetch next from o
next
fetch next from BS
next
wend
end subj'ai 3 fichiers.TAB
"BS.TAB" contient des données avec lesquels j'effectue les calculs en utilisant aussi les données de la table "orientation.TAB"
"orientation.TAB" contient deux champs l'un est numéroté de 0 jusqu'a 17 et pour chaque numero est associé une valeur
"Rxlevel.TAB" est une table d'insertion des resultats obtenus
merci
Hors ligne


