FoxPro/Visual FoxPro - Grid con más de una tabla

 
Vista:

Grid con más de una tabla

Publicado por Shirley (95 intervenciones) el 06/02/2003 02:57:01
Hola Amigos de la WEB:
Disculpen si vuelvo a molestarlos con otro problema que se me presentó, requiro hacer presupuestos para determinados trabajos, entonces cree una tabla (Materiales.dbf) con una lista de todos los posibles materiales codificados, con unidades y precios unitarios, y tengo otra tabla enlazada al presupuesto de mis clientes (Presupuesto.dbf) en los que intento que elijan el codigo del material y recupere todos los datos, el problema es que para optimizar mi tabla de presupuestos solo debe tener los codigos y las cantidades pero para la vista del usuario debe desplegar la descripción, las unidades y el precio unitario, al usar el grid no me permite hacer uso de las columnas con los códigos del presupuesto asignado a ese cliente y otra columna con la descripción de los materiales.
Entonces mi preguna es: ¿Se puede utilizar las columnas de un solo grid con los campos de diferentes tablas que esten relaciondas por un indice?
Por su timeo y su ayuda muchisimas gracias.
Shirley
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:Grid con más de una tabla

Publicado por Roman Suazo (2723 intervenciones) el 06/02/2003 03:32:08
Creo que en tu caso se puede usar un cursor, los registros del cursor
se sacarian de un SELECT. Despues pones el cursor en el grid, vas añadiendo, cambiando y quitando registros. Cuando queras salvar los cambios vas a tener que ir recorriendo cada registro del cursor , en los
registros que hayan cambios entonces a partir de esa informacion se
actualizaria la tabla original. La otra opcion por supuesto que son vistas.
Pero no te las puedo redomendar mucho ya que no tengo todos los de-
talles necesarios, es decir, en una vista multitabla no es recomendable
actualizar y grabar los datos (pueden haber problemas) a menos que
solo se este actualizando solo una tabla. Aunque por lo que se mira
tal vez solo estes actualziando una tabla.

Prueba esto con la vista:

Crea una vista con inner join, la pones en el grid, cuando agregues un
nuevo registro, en el momento en que termines de escribir el nuevo
codigo (antes del lostfocus), buscas la descripcion y demas basado
en el codigo, una vez encontrada la nfo , pones los valores en los
respectivos campos (que en este caso serian readonly).
Lo que en verdad te interesa es solo dar el efecto, ya si quieres cambiar
el nombre del producto y la unidad, etc, entonces tendrias que hacer
esas operacione sen otra forma.

Bueno, ya tienes dos ideas para empezar

Saludos
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

RE:Grid con más de una tabla

Publicado por upliftmofopartyplan (265 intervenciones) el 06/02/2003 13:30:44
Hola!
nunca lo he hecho, pero se me ocurre que si no quieres usar cursores o vistas, puedes intentar crear el grid manualmente (o con el generador y luego modificarla), y trabajar directamente sobre la tabla.
si pones en las propiedades controlsource de las columnas, los campos que quieres ver de cada tabla y dejas el recordsource del grid en blanco, aparentemente funciona (acabo de probarlo).
en el entorno de datos del form debes incluir todas las tablas y relacionarlas.
es otra forma que puedes usar.
espero te sirva.
Uplift
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

muchisimas gracias

Publicado por Shirley (95 intervenciones) el 07/02/2003 03:05:36
Los consejos que me dieron fueron muy útiles agradezco mucho su tiempo.

Shirley
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