Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Como crear un campo en tiemo de ejecucion (https://www.clubdelphi.com/foros/showthread.php?t=6692)

xerkan 19-01-2004 12:12:37

Como crear un campo en tiemo de ejecucion
 
Me gustaria añadir un campo de tipo lookup en tiempo de ejecucion sobre una tabla, lo estoy creando de esta manera:

var
Campo:TStringField;
ident:TIntegerField;
begin
with datamodule do
begin
ident:=TIntegerField.Create(nil);
ident.FieldName:='IDcampo';
ident.FieldKind:=fkData;
ident.Name:='IDcampo';
qryTabla.Fields.Add(ident);

Campo:=TStringField.Create(nil);
Campo.DisplayLabel:='Nombre';
Campo.FieldKind:=fkLookup;
Campo.FieldName:='NOMBRE';
Campo.LookupDataSet:=qryTabla2;
Campo.LookupKeyFields:='IDcampo';
Campo.LookupResultField:='NOMBRE';
Campo.KeyFields:='IDcampo';
Campo.Size:=30;
Campo.Lookup:=True;
Campo.Name:='Campo';
qryTabla.Fields.Add(Campo);
end;
end;

pero al abrir la tabla me suelta una violacion de acceso

haron 19-01-2004 13:54:28

pon un punto de ruptura al comienzo del programa y ejecutalo paso a paso.

de todas formas tengo una intriga, para que quieres añadir un nuevo campo al dataset en tiempo de ejecucion?

ten en cuenta tambien que la columna que añadas debe coincidir con una columna real o bien debe ser una columna calculada.

xerkan 19-01-2004 16:16:26

Por q quiero usar una query q tengo para realizar busquedas (vamos para no tener una query q solo lo voya a usar para eso) y hago antes una select tipo (select max (idCampo) as idcampo from tabla) y a la vez quiero usar un campo lookup para q muestre el campo nombre de otra tabla q coincide con idcampo pero no puedo usar la sentencia joiner de sql por q estan en bases de datos distintas (uso la ibo para conectarme)

sanpra 19-10-2007 12:18:17

Yo también estoy intentando insertar campos en un ClientDataSet en tiempo de ejecución para almacenar totales por año según un rango de fechas (puede haber más ó menos años) y al pasar por CreateDataSet da un error que no soy capaz de resolver...

Alguién puede echarme un cable??

Zenkiu por todo!!

sanpra 22-10-2007 12:29:17

Estoy trabajando con Delphi 5...


La franja horaria es GMT +2. Ahora son las 21:16:38.

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