Power Builder - Ubicación de Cursor

 
Vista:

Ubicación de Cursor

Publicado por Yesi (25 intervenciones) el 13/03/2004 01:19:10
Hola, tengo una inquietud
Estoy trabajando en una ventana con datawindow tipo grid con muchos registros. La finalidad es agregar uno al final y quiero ubicar el cursor en esa linea, uso la funcion scrolltorow(ll_last_row ), la cual me funciona bien, pero en el momento que el ultimo registro pasa la capacidad del entero(32767) se me pierde el curso aunque ll_last_row esta declarado como long. Me gustaria saber si tengo que hacer una validación adicional o si hay otra funcion que haga lo mismo pero con una mayor cantidad de registros.
Muchas gracias por la ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ubicación de Cursor

Publicado por Oscar (1178 intervenciones) el 13/03/2004 06:04:57
No creo que la función scrolltorow(ll_last_row ), pierda el cursor porque esa función cuando llega a un determinado número de registros "No da para más"; más bien creo que el problema radica en que tratas de insertar registros a un campo tipo entero que ha llegado a su límite de
32767.

No interesa que la variable ll_long esté declarada como long. Lo que verdaderamente interesa, es el tipo de dato que deberías haber elegido por seguridad al crear ese campo numérico en tu tabla. Lo correcto era elegir Long (2147483647) en vez de Entero (32767).
No hice la prueba; pero por conceptos se puede deducir esa situación.

Si sólo estas probando esta operación está bien; pero si es un problema real; puedes cambiar el tipo de dato en tu campo por long. Debes hacerlo desde el manejador de BD que usas.

¿Como cambiar el tipo de dato del campo que tiene el Key?

1. Primero eliminas sólo la clave principal (NO EL CAMPO). Puedes hacerlo de manera gráfica o con SQL:

ALTER TABLE mitabla DELETE PRIMARY KEY
2. Cambias el tipo de dato.
3. Vuelves a asignar la clave a ese campo.

CAUTION!: Se supone que tienes que tener MIL precauciones para hacer ésto si tu BD tiene 32767 registros. Haz las copias de resguardo, o mejor áun, probá con una tabla chiquita, ya que no quiero ser el causante de una tragedia :-(((.

Cuando cambies a long, nos cuentas si sigues teniendo problemas con el scrolltorow o si te votaron de tu trabajo y estas en un juicio serio... :-(
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar