Hola de nuevo, estoy migrando mi Bd de MySQL a Firebird y remodelando el programa que la gestiona y me acabo de topar con un problema que no entiendo puesto que, cuando atacaba a MySQL no daba problemas y ahona sí.
El código que me da problemas es en un botón donde muestro algunas consultas a la Bd. El código es:
Private Sub estadisticas_btn_Click(sender As Object, e As EventArgs) Handles estadisticas_btn.Click
maximos_gb.Visible = True
torta_grf.Visible = True
Dim diasin As Integer = 0
Dim valor As Decimal
Dim totaldias As Integer = 0
Dim totalrecorrido As Integer = 0
Dim recorrido As String = ""
Dim maxcalSQL As String = "SELECT MAX(a.calorias) FROM datos a"
Dim maxDistanciaSQL As String = "SELECT MAX(a.distancia) FROM datos a"
Dim repetidoSQL As String = "SELECT a.recorrido,COUNT(*)as veces,ROUND(AVG(a.distancia),2) FROM datos a GROUP BY a.recorrido ORDER BY veces desc"
Dim velmaxSQL As String = "SELECT MAX(a.kmh)FROM datos a"
Dim distmaxSQL As String = "SELECT SUM(a.distancia) FROM datos a"
Dim maxdiasSql As String = "dias_sin"
MiConexion.Open()
'RELLENAMOS LOS VALORES MÁXIMOS
Dim comando As FbCommand = New FbCommand(maxcalSQL, MiConexion)
Dim comando1 As FbCommand = New FbCommand(maxDistanciaSQL, MiConexion)
Dim comando2 As FbCommand = New FbCommand(repetidoSQL, MiConexion)
Dim comando3 As FbCommand = New FbCommand(velmaxSQL, MiConexion)
Dim comando4 As FbCommand = New FbCommand(distmaxSQL, MiConexion)
Dim comando5 As FbCommand = New FbCommand(maxdiasSql, MiConexion)
'AÑADO ESTO POR VER SI FUNCIONA PERO NO
comando.CommandType = CommandType.Text
comando1.CommandType = CommandType.Text
comando2.CommandType = CommandType.Text
comando3.CommandType = CommandType.Text
comando4.CommandType = CommandType.Text
comando5.CommandType = CommandType.StoredProcedure
'HASTA AQUÍ LO AÑADIDO
Dim lector As FbDataReader
Dim lector1 As FbDataReader
Dim lector2 As FbDataReader
valor = CType(comando.ExecuteScalar(), Decimal)
maxCal_tb.Text = Convert.ToString(valor)
valor = 0
valor = CType(comando1.ExecuteScalar(), Decimal)
max_tb.Text = Convert.ToString(valor)
lector = comando2.ExecuteReader
lector.Read()
masVeces_tb.Text = lector(0)
veces_tb.Text = lector(1)
km_tb.Text = lector(2)
lector.Close()
lector1 = comando3.ExecuteReader
lector1.Read()
velmax_tb.Text = lector1(0)
lector1.Close()
lector2 = comando4.ExecuteReader
lector2.Read()
disTotal_tb.Text = lector2(0)
lector2.Close()
'MOSTRAMOS LA MAYOR DIFERENCIA ENTRE SALIDAS
totaldias = CType(comando5.ExecuteScalar(), Integer)
maxSin_tb.Text = Convert.ToString(totaldias)
MiConexion.Close()
'PREPARAMOS EL GRÁFICO ESTADÍSTICO DE LAS SALIDAS
Dim tortaSql As String = "select * from NPrimeros(7)"
Dim dtorta As FbCommand = New FbCommand(tortaSql, MiConexion)
dtorta.CommandType = CommandType.Text
Dim datorta As New FbDataAdapter(dtorta)
Dim dttorta As New DataTable
datorta.Fill(dttorta)
'LIMPIAMOS LOS PUNTOS X, Y DEL GRÁFICO
torta_grf.Series(0).Points.Clear()
'HACEMOS QUE APAREZCAN LOS VALORES SOBRE CADA PORCIÓN
torta_grf.Series(0).IsValueShownAsLabel = True
'TIPO DE GRÁFICO
torta_grf.Series(0).ChartType = SeriesChartType.Doughnut
torta_grf.Titles.Add("ESTADÍSTICA DE RECORRIDOS")
'GRÁFICO 3D
torta_grf.ChartAreas(0).Area3DStyle.Enable3D = True
torta_grf.ChartAreas(0).BackColor = Color.Khaki
torta_grf.ChartAreas(0).Area3DStyle.PointDepth = 300
'COLOR DEL GRÁFICO
torta_grf.Series(0).Color = Color.RoyalBlue
'VALORES DE LOS EJES X e Y
torta_grf.Series(0).XValueMember = "RECORRIDO"
torta_grf.Series(0).YValueMembers = "veces"
'ASIGNAMOS EL ORIGEN DE DATOS
torta_grf.DataSource = dttorta
End Sub
El error es: System.ArgumentException: 'No se ha encontrado la columna con el nombre 'RECORRIDO'.'
La Bd tiene los campos:
SALIDA_NUM -->Numérico auto incremental.
RECORRIDO--> Varchar(50)
TIEMPO-->Varchar (

DISTANCIA--> Decimal (5,2)
CALORIAS--> Decimal (6,2)
KMH--> Decimal (4,2)
FECHA--> Date
¿Alguien puede echarme un cable?. Gracias.