Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 04-04-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Tendrías que mostrarnos cómo estás añadiendo los campos y en qué momento. Tal como dije antes, el ejemplo que puse funciona correctamente y con un campo calculado. Acabo de adaptarlo a un query a la base DBDEMOS con la consulta

Código SQL [-]
select * from employee

El código queda así:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  NewField: TStringField;
  I: Integer;

begin
  if Query1.FieldDefs.Count = 0 then
    Query1.Open;

  Query1.Close;

  for I := 0 to Query1.FieldDefs.Count - 1 do
    Query1.FieldDefs[i].CreateField(Query1, nil, Query1.FieldDefs[i].Name);

  ShowMessage(Format('%d campo(s)', [Query1.FieldCount])); // seis campos

  NewField := TStringField.Create(Query1);
  NewField.FieldName := 'FullName';
  NewField.Size := 36;
  NewField.FieldKind := fkCalculated;
  NewField.DataSet := Query1;

  ShowMessage(Format('%d campo(s)', [Query1.FieldCount])); // siete campos

  Query1.Open;
end;

procedure TForm1.Query1CalcFields(DataSet: TDataSet);
begin
  DataSet['FullName'] := DataSet['LastName'] + ' ' + DataSet['FirstName'];
end;

Si los campos los añades (todos) manualmente, necesariamente debe darte la cuenta, sin importar el tipo de campo.

Agrego

Si además, añado esto a un segundo botón:

Código Delphi [-]
procedure TForm1.Button2Click(Sender: TObject);
var
  I: Integer;

begin
  for I := 0 to Query1.FieldCount - 1 do
    ShowMessage(Query1.Fields[i].DisplayName);
end;

funciona sn problemas.

// Saludos
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
DBGrid... agregar un campo calculado...? BlueSteel Varios 4 05-02-2009 19:40:37
Agregar columnas al DBGrid en Runtime vladimirbp Varios 2 11-01-2007 01:01:46
Agregar elementos a un DBcomboBox (runtime) vinicc Conexión con bases de datos 2 26-08-2006 01:28:31
Mover y agregar controles en RunTime JXJ Varios 2 05-05-2005 02:16:04
Agregar un campo a una tabla paradox (runtime) sitrico Conexión con bases de datos 3 17-07-2003 00:14:11


La franja horaria es GMT +2. Ahora son las 15:47:44.


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
Copyright 1996-2007 Club Delphi