Planteo mi problema:
Tengo una Ttabla (Tregistro),realizando en SQL Server (Codigo,NOmbres,apellidos, fechaNacimient, edad, fechaInscripcion etc...) estos campos lo tengo en un formulario. Ingreso los datos con normalidad. Pero tengo otro formulario donde quiero ver todos los datos que he ingresado, para lo cual estoy usando un DBGrid, ya lo relacioné con su DataSource del Tregistro. Y en el DBGrid me muestra obviamente todos los campos, pero lo que yo quiero es, por ejemplo que en el campo, en la columna respectiva de Nombre, no solo me muestre el dato del nombre sino quiero que me aparezca en el campo NOMBRE, el nombre+apellidoPaterno+ApellidoMaterno, es decir lo que me aparecia en tres columnas quiero que me aparezca en una sola columna.
Con StringGrid pues se usaba StringGrid.Cells[1,3], StringGrid.Cells[2,3], StringGrid.Cells[3,3], pero en DBGrid no tiene "Cells"
Muestro lo que intentaba hacer.
procedure TFLista.FormCreate(Sender: TObject);
var n:integer;
begin
For n:=1 to DM.Tregistro.RecordCount do
begin
DM.Tregistro.Last;
DM.Tregistro.Insert;
DBGrid.Columns[3]:=DM.Tregistro['NomE']+''+DM.Tinscripcion['ApellidoPE'];
end
end;
Obviamente no funciona este codigo, como podria ser?
Quiero que en una columna de DBGrid me aparezca juntadas tres datos del DATA SOURCE.
Gracias.
Publicado:
Mar Mar 16, 2010 7:03 pm
agustinbus Excelente usuario
Registrado: Apr 17, 2009 Mensajes: 38
Asunto: Re: DBGrid ingresar dos datos misma columna
Anuncios
Sizne escribió:
Planteo mi problema:
Tengo una Ttabla (Tregistro),realizando en SQL Server (Codigo,NOmbres,apellidos, fechaNacimient, edad, fechaInscripcion etc...) estos campos lo tengo en un formulario. Ingreso los datos con normalidad. Pero tengo otro formulario donde quiero ver todos los datos que he ingresado, para lo cual estoy usando un DBGrid, ya lo relacioné con su DataSource del Tregistro. Y en el DBGrid me muestra obviamente todos los campos, pero lo que yo quiero es, por ejemplo que en el campo, en la columna respectiva de Nombre, no solo me muestre el dato del nombre sino quiero que me aparezca en el campo NOMBRE, el nombre+apellidoPaterno+ApellidoMaterno, es decir lo que me aparecia en tres columnas quiero que me aparezca en una sola columna.
...
Una posible solucion, aunque no se si de lo mas optima, es agregar un nuevo campo a tu tabla, que se llame por ejemplo: "NombreCompleto".
Al momento de insertar un nuevo registro, en el campo NombreCompleto, almacenas la concatenacion de los 3 strings.
En el DBGrid, pones en invisible las columnas nombres, apellido materno y apellido paterno, y solo muestras el campo NombreCompleto.
Un codigo de ejemplo para insertar podria ser:
Código:
with AdoQuery1 do
begin
Open;
Insert;
FieldByName("Nombres").AsString = EdtNombres.Text;
FieldByName("ApellidoPaterno").AsString = EdtApPaterno.Text;
FieldByName("ApellidoMaterno").AsString = EdtApMaterno.Text;
FieldByName("NombreCompleto").AsString = EdtNombres.Text + ' ' + EdtApPaterno.Text + ' ' + EdtApMaterno.Text + ' ';
Post;
end
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A