FoxPro/Visual FoxPro - Origen de datos

   
Vista:

Origen de datos

Publicado por Fan21 (1 intervención) el 29/05/2017 23:16:30
Que tal. Necesito ayuda para resolver unas practicas para la universidad, estoy recien iniciando en Visual FoxPro y la verdad que hay muchas cosas que me cuesta tomar dimesion.

Necesito construir un formulario que muestre en un Combo Box los datos
de una tabla de dos formas:
a.- No Enlazado a datos
b.- Enlazados a datos


Para el item b lo que hago es cambiar: "Rowsourcetype" a 6 y " RowSource=MiTabla" , con una tabla que abro en el Load del formulario. Para el item a, tendria que cargar los datos manualmente?


Y otro item en el que tengo dificultades:

2.- Construya un Formulario que muestre en una “grid” los datos de
la tabla “alumnos” de las siguientes formas:
a.- Enlazados a datos (Alias y Tabla)
b.- Enlazado a datos CON Entorno de Datos (Alias)


Para el item A, en la grid puedo cambiar el "Rowsourcetype=0" y en "RowSource=MiTabla", pero la tabla tengo que ponerla en el use del formulario o si no me muestra la Grid en blanco. Pero al ponerla en el Load del formulario, ya no estaría cargando la tabla en el entorno de datos?

Desde ya muchas gracias!
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

Origen de datos

Publicado por Fidel José (466 intervenciones) el 30/05/2017 01:27:32
En cuanto al combobox (o listbox), el ingreso manual se hace con el método .AddItem o .AddListItem, según la necesidad.

El control grid, por defecto, trabaja con RecordSourceType = 1 (Alias). Ahí necesitas abrir la tabla (en el Load del form o en el Dataenvinroment ). Si no le asignas un alias, la tabla tendrá un alias igual a su nombre.
Con RecordSourceType=1 (Tabla), la tabla se abre automáticamente, si no está abierta, aunque no se cierra al cerrar el formulario.
La indicación de RecordSource es siempre entre comillas, salvo que el alias esté contenido en una variable:
This.grid1.REcordSource="curTabla"

ó
lcMiCursor = "CurTabla"
this.grid1.RecordSource = lcMiCursor

Para que una tabla se abra automáticamente debe estar en el PATH o en SET DEFAULT, o bien, pertenecer a un contenedor dbc que esté abierto.

Un control grid quedará en blanco (sin las GridLines) cuando el cursor o tabla asociado se cerró o si nunca se le asignó una tabla.

En cambio, si después de haberle asignado una tabla o cursor, hacemos
Thisform.Grid.RecordSource = "", sin que a continuación se indique otra fuente de datos,
mostará el grid vacío pero con sus lineas y su header (curiosamente recuerda los campos del cursor o tabla que tenía asociado).
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