![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Rellenar campos sin FieldName en DbGrid
Tengo un dbgrid con varios campos de un fichero AS400, uno de los campos es una fecha y quiero poner en la columna de su izquierda en el grid, el dia de la semana que es dicha fecha, ¿como puedo hacerlo?
|
#2
|
||||
|
||||
Hola,
Cita:
|
#3
|
||||
|
||||
Muchas gracias por contestar.
Viene como string. Mi problema es que formateo el grid en el evento DrawColumnCell, para cambiarle colores a las celdas según su valor, etc; y es en este evento donde estoy tratando de editar la primera columna en funcion del dia de la semana que me da la segunda columna (fieldname=fecha). No he sido capaz de hacerlo. |
#4
|
||||
|
||||
Hola,
Bueno. Yo no estoy muy puesto en estos temas. No dices, por ejemplo, el gestor de bases de datos que utilizas (que podría ayudar a los compañeros a echarte una mano), pero, sin salir de Delphi cuentas con funciones capaces de convertir cadenas en fechas, como por ejemplo "StrToDate". A partir de ahí, siempre podrías aplicar la función "DayOfWeek" (revisa por si hubiera alguna más de utilidad para ti en la unidad "DateUtils") y comprobar su resultado para hacer después lo que tengas pensado en función del mismo. ¿No? ![]() |
#5
|
||||
|
||||
El problema no son las conversiones, con formatdatetime('ddd',..) ya la he sacado, mi problema es que no se como posicionarme en la celda adecuada y asignarle el valor ya convertido a día de la semana.
|
#6
|
|||
|
|||
porque no creas un campo calculado, y en ese campo sacas el dia de la semana, en el grid solo te preocuparias por su color y tamaño de letra?
|
#7
|
||||
|
||||
Quizás puedas usar el evento OnGetText del campo, ahí puedes formatear la fecha como quieras.
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
||||
|
||||
Muchas gracias por vuestra atención y conocimientos.
He conseguido hacerlo como campo calculado en el evento OnCalcFields y no hay problema alguno salvo que con este evento el primer registro me aparece en blanco porque el valor de la fecha viene a NULL, si alguien sabe como solucionarlo le agradecería que me conteste pero no es muy importante, más que nada es estético. |
#9
|
||||
|
||||
¿no puedes darle un valor por defecto?, así al insertar, aparece la fecha de hoy, que quizás le sirva al usuario.
A las malas, pues en el evento beforePost asignas el valor Now o Date a ese campo. SAludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#10
|
||||
|
||||
![]() Muchas gracias de nuevo, le he metido la fecha del sistema que siempre debe coincidir con la primera fila del grid y va perfecto.
Es un placer forear con vosotros. |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Rellenar con 0.... | buitrago | Varios | 6 | 17-11-2011 20:02:53 |
Campos M/D en 1 DBGrid | CarmaZone | Tablas planas | 2 | 21-07-2005 17:22:35 |
2 campos lookup en dbgrid | JRGustavo | Conexión con bases de datos | 0 | 30-06-2005 17:05:10 |
CAmpos de dbGRid | Mario1980 | Varios | 9 | 31-10-2004 03:34:12 |
Campos en DBGrid que no pertenecen al DataSource (sin FieldName) | Sóstrato | OOP | 7 | 06-06-2003 23:45:36 |
![]() |
|