Cual es la capacidad de un GRID y Pregunta de SQL

24/10/2004 - 03:30 por jesus | Informe spam
Que tal camaradas del foro del foro.

Ayuden a este pobre novato que empieza a dar sus primeros pininos en FOX.
Tengo 3 preguntas las cuales son muy concretas y van de la mano.

Pregunta número 1:
¿Cual es la capacidad de registros que soporta un GRID para
visualizar?. Lo he intentado en una tabla de 18 filas con 140,000
registros aprox. y creo que sobrepasa los límites del GRID puesto que el
sistema deja de responder cuando trato de visualizar los datos de esta
manera.

No es que necesite todos esos registros y tampoco visualizar todas
las columnas pero me interesa saber que holgura de registros puedo
utilizar en un GRID en un determinado momento.

Pregunta número 2:
¿Como puedo asignar una consulta SQL a un GRID por medio de código?.
No deseo utilizar el generador para asignar una consulta, tabla y demás
debido a que el nombre de la tabla es dinámico y al hacerlo por medio del
generador, en el momento de que busque la tabla y si ésta ha cambiado de
nombre me podría marcar error.

Pregunta número 3:
¿Es posible crear una consulta o instrucción SQL por medio de una
variable?, como por ejemplo algo asi:

Variable1 = "nombre LIKE 'RODRIGO%' OR salario >= 1200"
SELECT nombre, apellidos, domicilio FROM Base_de_Datos!Tabla WHERE
Variable1

o como:

Variable2 = "nombre, apellidos, domicilio"
SELECT Variable2 FROM Base_de_Datos!Tabla WHERE nombre LIKE 'RODRIGO%' OR
salario >= 1200

.. como sea, si alguien pudiese despejar estas dudas se los agradecería
muchisimo.

-
PortalFox :: Nada corre como un zorr
http://www.portalfox.co

PortalFox - NNTP Forum Gatewa
 

Leer las respuestas

#1 Luis María Guayán
24/10/2004 - 04:49 | Informe spam
Hola Jesús, no es bueno unir varias preguntas en un mismo hilo, haz una pregunta
por hilo.

Vamos a las preguntas:

1. Creo que la capacidad de un grid esta dada por el usuario, no creo que haya
ninguno con la capacidad de ver 140.000 líneas con 18 columnas :-) Un control
Grid es un contenedor de objetos, que tiene los objetos columnas, cabeceras y
por cada registro, un control asociado, o sea que en tu ejemplo el número de
objetos seria igual a la suma de 1 grid + 18 columnas + 18 cabeceras +
18*140.000 controles, que da un total de 2.520.037 objetos que deben ser
"levantados" por tu formulario.

2. Para asignar una sentencia SQL como origen de datos de un control Grid, debes
configurar las propiedades:

RecordSourceType = 6 && Sentencia SQL
RecordSource = [SELECT nombre, apellidos, domicilio FROM Tabla]

3. Si es posible crear consultas con variables utilizando Macrosustitucion (ver
en la ayuda de VFP el tema "Sustitución de Macro")

Ej:
lcVar1 = "nombre LIKE 'RODRIGO%' OR salario >= 1200"
SELECT nombre, apellidos, domicilio FROM Base_de_Datos!Tabla WHERE &lcVar1

lcVar2 = "nombre, apellidos, domicilio"
SELECT &lcVar2 FROM Base_de_Datos!Tabla WHERE nombre LIKE 'RODRIGO%' OR salario
= 1200



Y tambien puedes hacer:

lcVar1 = "nombre LIKE 'RODRIGO%' OR salario >= 1200"
lcVar2 = "nombre, apellidos, domicilio"
SELECT &lcVar2 FROM Base_de_Datos!Tabla WHERE &lcVar1

Luis María Guayán
Tucumán, Argentina
________________________________
SysOp de www.PortalFox.com
Microsoft Visual FoxPro MVP
________________________________
La palabra imposible solo figura
en el diccionario de los tontos

"jesus" escribió en el mensaje
news:eS1H$
Que tal camaradas del foro del foro.

Ayuden a este pobre novato que empieza a dar sus primeros pininos en FOX.
Tengo 3 preguntas las cuales son muy concretas y van de la mano.

Pregunta número 1:
¿Cual es la capacidad de registros que soporta un GRID para
visualizar?. Lo he intentado en una tabla de 18 filas con 140,000
registros aprox. y creo que sobrepasa los límites del GRID puesto que el
sistema deja de responder cuando trato de visualizar los datos de esta
manera.

No es que necesite todos esos registros y tampoco visualizar todas
las columnas pero me interesa saber que holgura de registros puedo
utilizar en un GRID en un determinado momento.

Pregunta número 2:
¿Como puedo asignar una consulta SQL a un GRID por medio de código?.
No deseo utilizar el generador para asignar una consulta, tabla y demás
debido a que el nombre de la tabla es dinámico y al hacerlo por medio del
generador, en el momento de que busque la tabla y si ésta ha cambiado de
nombre me podría marcar error.

Pregunta número 3:
¿Es posible crear una consulta o instrucción SQL por medio de una
variable?, como por ejemplo algo asi:

Variable1 = "nombre LIKE 'RODRIGO%' OR salario >= 1200"
SELECT nombre, apellidos, domicilio FROM Base_de_Datos!Tabla WHERE
Variable1

o como:

Variable2 = "nombre, apellidos, domicilio"
SELECT Variable2 FROM Base_de_Datos!Tabla WHERE nombre LIKE 'RODRIGO%' OR
salario >= 1200

.. como sea, si alguien pudiese despejar estas dudas se los agradecería
muchisimo.


PortalFox :: Nada corre como un zorro
http://www.portalfox.com

PortalFox - NNTP Forum Gateway

Preguntas similares