Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   dbgrid o stringgrid (https://www.clubdelphi.com/foros/showthread.php?t=58517)

shoulder 22-07-2008 22:54:53

dbgrid o stringgrid
 
Hola, tengo un problema tengo que cargar una tabla en pantalla de ausentismos donde Muestro el tipo de ausentismo, fecha inicio y la Fecha final , deberia hacer otra columna con cantidad de dias segun fechas y otras columnas mas que no estan en ninguna tabla de la base de datos, sino que con datos que voy trayendo de la BD voy haciendo. Con el dbgrid se puede agregar columnas propias sin leer campos y elaborarlas ejemplo dentro de un while. No me sale.....

Gracias

egostar 22-07-2008 23:06:31

Cita:

Empezado por shoulder (Mensaje 302426)
Hola, tengo un problema tengo que cargar una tabla en pantalla de ausentismos donde Muestro el tipo de ausentismo, fecha inicio y la Fecha final , deberia hacer otra columna con cantidad de dias segun fechas y otras columnas mas que no estan en ninguna tabla de la base de datos, sino que con datos que voy trayendo de la BD voy haciendo. Con el dbgrid se puede agregar columnas propias sin leer campos y elaborarlas ejemplo dentro de un while. No me sale.....

Gracias

Hola

Para eso debes crear un campo calculado en tu dataset, realizar la operación en el evento OnCalcFields y lo verás reflejado en tu DBGrid.

Salud OS

shoulder 22-07-2008 23:11:58

dbgrid
 
o sea que si hago un proceso en oncalcfield me agrega una columna ?

Gracias

egostar 22-07-2008 23:13:38

Cita:

Empezado por shoulder (Mensaje 302440)
o sea que si hago un proceso en oncalcfield me agrega una columna ?

Gracias

Bueno, primero debes de agregar un campo calculado en la tabla o query y con el evento OnCalcFields generas las operaciones para asignarles el valor.

Salud OS

shoulder 22-07-2008 23:20:28

dbgrid
 
Disculpame si no entiendo, por ejemplo necesito crear una columna che me diga los dias desde la fecha inicial hasta hoy si el campo fecha final de ausentismo de la persona esta en blanco. Tengo que crear en el query un campo ficticio para que me cree la columna y despues uso el oncalcfields?.


Graciassss

egostar 22-07-2008 23:36:44

Cita:

Empezado por shoulder (Mensaje 302452)
Disculpame si no entiendo, por ejemplo necesito crear una columna che me diga los dias desde la fecha inicial hasta hoy si el campo fecha final de ausentismo de la persona esta en blanco. Tengo que crear en el query un campo ficticio para que me cree la columna y despues uso el oncalcfields?.


Graciassss

Clic derecho del mouse en tu tabla/query
Clic en fieldseditor,
Clic en newfield,

llenas las propiedades, por ejemplo para los dias

Name = dias
Type = integer

Fieldtype = calculated

clic en OK

Hasta aqui ya tienes el campo calculado.

Ahora en el evento OnCalcFields de la Tabla/Query

Código Delphi [-]
procedure TForm1.Table1CalcFields(DataSet: TDataSet);
begin
  Table1.FieldByName('dias').AsInteger := Trunc(Table1.fieldbyname('FechaFin').Value -
                                                Table1.fieldbyname('FechaIni').Value);
end;

Existe una función DaysBetween, pero estoy pensando en que no tengas esa función en tu delphi, por cuestiones de versión.

Salud OS

shoulder 23-07-2008 00:36:53

dbgrid
 
Gracias amigoo!! tema solucionado.

egostar 23-07-2008 00:38:52

Cita:

Empezado por shoulder (Mensaje 302485)
Gracias amigoo!! tema solucionado.

Hombre, pues que bueno.

Salud OS


La franja horaria es GMT +2. Ahora son las 06:16:13.

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