como criar arrays dinamicas?
07/02/2006
0
cor: array[1..3] of string = (´colour´, ´pb´, ´black and white´); corvalor: array[1..3] of string = (´1´, ´2´, ´2´);
quero substituir isso por dados vindo do banco de dados .. ex...
quero criar a array ... cor usando dados do banco de dados.....
se tiver ex 5 registros no banco .. queria q ele montasse pra mim...
cor: array[1..5] of string = (´registro1´, ´registro2´, ´registro3´, ´registro4´, ´registro5´);
alguem sabe como faço isso?
valeuz :p
Salsa
Posts
07/02/2006
Massuda
07/02/2006
Saint
um simples exemplo de como usar o array dinamico:
var NomesCliente: array of string;
iContador:integer;
begin
iContador:=0;
with qryClientes do
begin
// aqui atribui o tamanho da matriz com a quantidade de registros da sua query
Setlengh(NomesCliente,RecordCount);
while not eof do
begin
NomesCliente[iContador]:=FieldbyName(´nm_cliente´).asstring;
inc(iContador);
Next;
end;
end;
end;
Nesse caso eu atribui o tamanho da matriz utilizando o recordcount da query usando o setlength(matriz,quantidade) e depois varri a query atribuindo o valor de algum campo qualquer a uma posicao no array..
13/03/2006
Khundalini
var
NomesCliente: array of string;
begin
with qryClientes do
begin
First;
while not Eof do
begin
SetLength(NomesCliente, Length(NomesCliente) + 1);
NomesCliente[Length(NomesCliente) - 1] :=
FieldByName(´nm_cliente´).AsString;
Next;
end;
end;
end;
Sds,
Rubem Rocha
Manaus, AM
13/03/2006
Aroldo Zanela
Não sei qual é a idéia, mas acho que o uso de CDS ou até mesmo de TStringList podem ser mais indicados para manipulação de dados.
13/03/2006
Khundalini
Sua sugestão é realmente bem melhor, principalmente se for necessário montar uma tabela de lookup.
Sds,
Rubem Rocha
Manaus, AM
Clique aqui para fazer login e interagir na Comunidade :)