Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Columna con caracteres fijos en un DBGrid (https://www.clubdelphi.com/foros/showthread.php?t=17814)

gluglu 22-01-2005 13:49:04

Columna con caracteres fijos en un DBGrid
 
Tengo un IBQuery que presenta en pantalla columnas de fechas mediante un DBGrid. La primera fecha es "desde" y la segunda "hasta".

He añadido una columna más en el DBGrid que deseo que me muestre las dos fechas separadas por "...", es decir que en pantalla me aparezca :

01/01/05 ... 31/12/05

No consigo ver donde definir la segunda columna del DBGrid con "..."

Gracias

marcoszorrilla 22-01-2005 14:27:47

En la rejilla solamente se muestran los campos, sean éstos reales o calculados, lo que procedería entonces es crear un campo calculado que te concatene la 2 fechas separadas por ...... y luego en la rejilla se mostrará como un campo mas.

Como parece que trabajas con FireBird también te convendría mirar la posibilidad de crear un campo del tipo VarChar pero "Computed By".

Un Saludo.

gluglu 31-01-2005 14:50:33

Vuelvo a este tema, que todavía no me he puesto a solucionarlo.

Donde se puede definir el campo calculado? No se podría crear un campo más en el TQuery, por ejemplo que se llamara "Separador", que fuera del tipo fkCalculated, y después en el código del form establecer p.ej. IBQuerySeparador.Value := "..." ?

He hecho esto pero me pone los "..." sólo en la primera fila del DBGrid, y además al mover el cursor o editar la fila, ya los "..." me desaparecen.

Si creo un sólo campo calculado con las fechas "Desde" y "Hasta" separados por "..." (mi pregunta también es donde?), podré después editar las fechas Desde y Hasta por separado ?

Y por último, como puedo incluir en la máscara alguna indicación para que la introducción del usuario la convierta directamente en Mayúsculas para una petición de texto ?

marcoszorrilla 31-01-2005 16:03:04

Código SQL [-]
 Select Clave, FechaInicial, FechaFinal,
 Cast(FechaInicial AS CHAR(10)) ||'...' || Cast(Fechafinal as char(10)) AS MiNuevoCampo
 FROM Prueba

Algo parecido podía ser lo que quieres hacer.

Un Saludo.

gluglu 31-01-2005 16:23:30

Gracias, Marcos

Logro que aparezca en el DBGrid lo siguiente :

2005-01-01 ..... 2005-01-31
2005-02-01 ..... 2005-02-28

Aparte de que no entiendo el 'As Char(10)' en el Select, a mí por lo menos con InterBase 7.5 no me funciona. Como puedo también que las fechas me aparezcan en formato Europeo ?

Ahora bien, al editar ese campo en el DBGrid, como hago ahora para que me edite por separado cada una de las fechas ?

No me expliqué bien al querer utilizar las mayúsculas. No me hace falta utilizar el Cast en el Select.

Lo que quiero hacer es que en otro sitio diferente, al pedir al usuario la introducción de un dato alfanumérico, todos los caracteres que vayan introduciendo se conviertan directamente a mayúsculas, ya que se trata de una clave y no permito minúsculas. (En el Clipper, esto se hacía con el caracter ! en la máscara de edición del campo correspondiente).

marto 31-01-2005 16:27:27

gluglu, léete la guia de estilo

gluglu 31-01-2005 16:32:59

Estimado Marto,
Se me permite preguntar qué viene en esa Guia de Estilo (cuyo Link añades) que haya podido infringir ?

marto 31-01-2005 16:53:46

Cita:

Empezado por la guia
Tampoco debes realizar varias preguntas en un mismo hilo, para que te hagas una idea mejor te ponemos un ejemplito...

1.- ¿Cómo podría cambiar las propiedades de una carpeta y de unos archivos para convertirlos en ocultos?

2.- ¿Tiene Delphi alguna función para validar una cadena y saber si su formato es tipo hh:mm:ss?

Son dos temas totalmente distintos, debes abrir un hilo para cada una de ellas, por favor no hagas las dos preguntas en un mismo hilo.

Por ejemplo.

gluglu 02-02-2005 12:19:11

He decidido utilizar el siguiente comando SQL :
Código SQL [-]
Select DATEFROM, DATETO, COLOR, CODENAME,
   ' ..... ' As Separator
   from SEASONS
   order by DATEFROM
Hasta aquí todo bien. Utilizo el campo "Separator" como parte del TBGrid y lo muestra bien. Edito bien cada campo y todo eso. El único detalle es que la línea que edito, al pasar por encima del campo "Separator", bien con el cursor o también saltándome ese campo mediante un DBGrid.SelectedIndex en el evento DBGrid.KeyPress, me la pone en blanco quitándome '.....'

Al final de la edición de esa línea me han desaparecido los '.....'

Gracias una vez más por vuestra ayuda. Un Saludo.


La franja horaria es GMT +2. Ahora son las 21:37:56.

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