![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Ahh, vale, vale, si el cliente lo pide se hace y punto (ya me ha pasado jejej).
Crear el DBgrid es exactamente lo mismo. Crear, asignar el padre (parent) que será el tabsheet, asignar el el datasource y por último hacer un grid.RebuildColumns (esto hace que tome de la base de datos la definición de cada columna, con el displayWith (ancho de cada columna, formato para mostrar cada columna, etc). En principio, tampoco hace falta llamar a Rebuildcolumns, creo que se hace internamente, aunque a mí me gusta hacerlo de forma explícita. Si dentro de cada TabSheet va lo mismo, es decir, un grid, un par de botones, etc. Yo te aconsejaría hacer un Frame, en él pones el grid, los botones que te haga falta y alguna que otra rutina que necesites. Después de crear el TabSheet, creas dentro una instancia de ese frame. Así quizás puedas tener más facilidad de trabajo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#2
|
||||
|
||||
|
Para hacerlo parametrizable, yo guardaría algo así en la Base de datos, (supongo que es más o menos lo que has hecho) quizás te aporte algo:
Tabla de configuración: Código:
Name Valor TabsheetNames articulos, proveedores, ventas sqlarticulos select codigoArticulo, descripcion from articulos sqlproveedores select codigoprov, nombre from proveedores where %s sqlventas select codigoVenta, codigo Articulo from ventas where %s Se supone que cada tabsheet tendrá un Query asociado al grid, y guardamos el sql de cada uno de esas querys. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#3
|
|||
|
|||
|
tendrás por ahi algun ejemplito??, suponiendo que ya tengo el PageControl con sus TabSheets, el ADOQuery y el DataSource.
gracias Cita:
|
|
#4
|
||||
|
||||
|
Como te dije es más fácil crear un componente en ejecución (el frame) que 3 componentes.
En delphi, file -> new -> frame ahora dentro colocas el grid, el datasource, el query y los enlazas todos. Obviamente no funciona porque falta asignar el sql, pero eso creo que es lo de menos ¿no? Guarda como FrameBase (el Frame en sí, como si fuera un Form) y como UFrameBase el .pas Si lo vas a usar en el Form1, haces esto:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#5
|
||||
|
||||
|
Según veo como lo quiere tu cliente es que empieza siempre en la primera pestaña, luego de algún registro que esté consultado puede obtener detalles del mismo en las otras pestañas.
No entiendo tu concepto de "parametrizables", como lo planteas el número de tablas (y pestañas) que vas a utilizar es fijo (artículos,proveedores, ventas) por lo que no veo caso ir creando en tiempo de ejecución los querys y pestañas. De acuerdo a como lo quiere tu cliente, necesitas efectivamente las tres tablas pero como ya vimos que dos de ellas son detalle de la primera,podrías usar un enfoque "Maestro-Detalle" y hacer los enlaces correspondientes. De forma que cada vez que cambias de artículo los otros querys se actualizan en automático con la información pertinente. Ahora bien, no siempre se puede esto porque implica cargar las tablas completas...miles de registros a veces. Entonces si se va a ejecutar el query cada vez que se quiere accesar a los detalles es exactamente el mismo caso de poner las pestañas previamente con sus grids dentro y unicamente ejecutar el query de cada grid de detalle cuando el cliente haga click en la pestaña por primera vez. La secuencia sugerida podria ser: 1.- El cliente abre la ventana y se le muestran los artículos (la ventana tiene las tres pestañas) 2.- El cliente hace click en proveedores para ver los que venden ese artículo 3.- La aplicación verifica si se seleccionó un artículo distinto y si no está ya abierto el query de proveedores...en su caso lo abre (con el parametro que corresponda) 4.-Se muestra el grid con los proveedores. 5.- Se repite 3 y 4 para las otras pestañas de detalle si el cliente las usa. 6.-Si el cliente cambia de artículo, cerrar los otros querys (ya no corresponden al artículo)
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
#6
|
|||
|
|||
|
AzidRain
manejo el concepto de parametrizable ya que esa misma pantalla de articulos la podré reutilizar para crear otros catalogos que tambien podrían llevar 1 o mas pestañas. Los parametros los guardaré en tablas y los cargaré al iniciar mi aplicación. Por ejemplo: SQL del catalogo, orden, botones que estaran visibles o invisibles segun el usuario, etc. Cita:
|
|
#7
|
|||
|
|||
|
gracias, lepe. Lo voy a intentar...
saludos Cita:
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| problema al crear tabsheet | Choclito | Varios | 10 | 08-04-2006 19:00:48 |
| TabSheet | REHome | OOP | 4 | 03-12-2004 05:33:23 |
| TabSheet | ramonibk | Varios | 3 | 23-09-2004 12:47:07 |
| Crear TabSheet en Runtime previamente diseñado | cacuna | Varios | 4 | 22-09-2004 06:52:10 |
| Como Crear un TabSheet en Tiemo de Ejecucion | Michel | OOP | 1 | 08-08-2003 00:43:32 |
|