Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   uso ¿StringGrd o DBGrid? (https://www.clubdelphi.com/foros/showthread.php?t=63925)

voldemmor 09-03-2009 16:51:03

uso ¿StringGrd o DBGrid?
 
Hola muchachos espero que os encuentres bien y antes de todo agradesco por su ayuda que siempre es util.

Bueno mi duda, Tengo que realizar un ingreso de una lista de estudiantes en una base de datos, eso todo bien.

En este momento voy a probar con un stringgrid para que el trabajo contra la base de datos vaya bien, mi duda es que si uso el stringrid el usuario tendra que escribir todos los datos desde su techado y si por alguna razon se equiboca el ingraso a base de datos me dispara la excepcion pertinente o en un peor caso se sealizara el ingraso pero uno de los datos ira erroneo y podria darse el caso que para futuros procesamientos no sea tomado en cuenta,
Por ejemlo tengo un campo fecha (la fecha en que termino el curso), y no es posible sacarla fuera del stringrid porque aunque la mayoria de los alumnos terminen en l a misma fecha siempre sucede algo y hay alguno que no puee y termina luego o antes .
otro es la definicion del sexo(H/M) y aca lo representan con 1(H) o 2(M) per pueden mandar H o M en lugar de 1 y 2.

es posible controlar las celdas segun las columnas para que tome en cuenta esta validacion en un stringgrid o en un dbgrid?
en donde podria encontrar algun ejemplo.

gracias de antemano

ContraVeneno 09-03-2009 17:23:26

El StringGrid es muy útil cuando vas a manejar puras cadenas. Pero en este caso, que vas a manejar fechas, números y otras cosas, lo mejor es utilizar un DBGrid, en cuál puedas definir la columna al tipo de dato que vayas a manejar (la fecha como fecha, el número como número, etc, etc).

Esto lo puedes hacer de dos formas:

1. Utilizando una tabla en memoria, en la cuál puedes hacer todos los cambios y validaciones que necesites y cuando todo esté listo, la vacías a tu base de datos. Existe componentes como el TjvMemoryData de las JEDI VCL que funcionan muy bien en este caso.

2. Utilizando un TClientDataset que es relativamente los mismo a utilizar una tabla en memoria, solo que el mismo ClientDataset se encarga de realizar las tareas de insertar o validar en la base de datos.

La primera es más sencilla de utilizar y configurar si tienes poca experiencia. Y la segunda es más recomendable por la infinidad de opciones que te puede ofrecer, aunque es un poco más complejo de entender y configurar.

voldemmor 11-03-2009 15:42:39

Ok
 
gracias, contraveneno, por tus consejos.
Si pudieses hacer un favor me podrias indicar donde hallo información de como trabajar con u client dataset, para ver si me remito a esa manera de realizar las cosas.

Y gracias de nuevo por tu pronta respuesta:D


La franja horaria es GMT +2. Ahora son las 23:29:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi