Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   No me maten por la preguntonta... (http://www.forosdelweb.com/f69/no-maten-por-preguntonta-472440/)

laulaurys 13/03/2007 08:01

No me maten por la preguntonta...
 
Hola...se que debe ser algo re tonto pero estoy bloqueada, asique ayuda please!!

yo tengo para recorrer una tabla

For i = 1 To batch_pasos.Filas

Id = fCStr(batch_pasos.Fila(i).Columna("id_nombre").Val or)
Descripcion = CStr(batch_pasos.Fila(i).Columna("descripcion").Va lor)
Sql3 = (batch_pasos.Fila(i).Columna("ssql").Valor)
bSiNoTrans = CInt(batch_pasos.Fila(i).Columna("bsinotrans").Val or)
next

la tabla tiene 4 registros, cuando i vale 4, entra al ciclo pero al intentar evaluar Filas(4) me dice que el indice esta fuera del intervalo....
su pongo

For i = 1 To batch_pasos.Filas - 1, no me evalua el ultimo registro...
amigos foreros como se arregla esto??

besos, Laurys.:-)

tazzito 13/03/2007 08:19

Re: No me maten por la preguntonta...
 
Laurys,

Disculpa pero xD que tipo de objeto ocupas para que de devuelva filas? ahora bien, en algunos objetos filas te devuelve el total de registros, pero al usar el contador empieza de 0 por lo que tu for seria de 0 a batch_pasos.filas prueba asi y nos cuentas.

laulaurys 13/03/2007 08:27

Re: No me maten por la preguntonta...
 
Hola! ya lo probe, pero la primera vez que entra con i=0 me dice lo mismo, que el subindice esta fuera del intervalo, recien me empiesa a evaluar a partir del 1.
besos, sigo por aca, Laurys.:-)

boluart 13/03/2007 08:47

Re: No me maten por la preguntonta...
 
En todo caso como es que obtienes tu tabla, me parece (no estoy seguro) que a la tabla le estas insertando registros y no se estan guardando y por eso es que el contador sale 4 y cuando lo recorres con el for no lo encuentra.
En todo caso ya probaste con el For Each que para este tipo de cosas es muy bueno

laulaurys 13/03/2007 09:00

Re: No me maten por la preguntonta...
 
Hola, no...no estoy insertando objetos, solamente estoy recorriendo la tabla y asignadosela a una variable

for i = 1 to filas es como si fuera, fila.count , esta asignado en algun lugar del programa, igual probe con poner

for i = 1 to batch_pasos.Fila.Count

Id = fCStr(batch_pasos.Fila(i).Columna("id_nombre").Val or)
Descripcion = CStr(batch_pasos.Fila(i).Columna("descripcion").Va lor)
Sql3 = (batch_pasos.Fila(i).Columna("ssql").Valor)
bSiNoTrans = CInt(batch_pasos.Fila(i).Columna("bsinotrans").Val or)

next

pero me pasa exactamente lo mismo,

en el caso del for each como seria? probe con

For Each batch_pasos In batch_pasos.Fila.count y me dice que no se puede repetir for each en un objeto de coleccion o en una matriz.

laulaurys 13/03/2007 10:05

Re: No me maten por la preguntonta...
 
Hola gente! ya lo solucione, resulta que como batch_pasos es una variable que invoca a la tabla, la estaba pisando en un lugar...en fin...yo habia avisado que era una preguntonta...je, Gracias igual!!

besos, Laurys.:-)

boluart 13/03/2007 10:14

Re: No me maten por la preguntonta...
 
En todo caso seria bueno saber con que clases estas trabajando para obtener los datos (ADO,DAO,OLE) o mejor dicho tu variable batch_pasos de que tipo es y si fuese aun mejor parte del codigo seria bueno que lo copies aqui (Pero el codigo real con el que estas trabajando). Para entender mejor de que objetos se trata y poder hacer el For Each


La zona horaria es GMT -6. Ahora son las 09:44.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.