GARANTIR DESCONTO

Fórum Para Ex-Clipeiros #141193

26/02/2003

0

Estou desenvolvendo um Sistema de digitação de fichas.
Em clipper utilizava uma tabela com vetores (arrays), qual a melhor forma para:
a) digitar vários dados na tela?
b) Como ir descendo para a proxima linha?
c) Como gravar os elementos do array em um Dbf?

Socorro!

Emerson.


Emerson_

Emerson_

Responder

Posts

26/02/2003

Torres Delphi

Emerson,

Eu tb vim do Clipper, e quase nao utilizo arrays, pois estou programando no Delphi usando muita query, e usando um recurso de tabela temporaria (semelhante aos arrays)

a) digitar vários dados na tela?
Faco um form para a digitacao e no ultimo campo, no evento ´onkeyDown´ testo o uso da tecla enter, se for pressionada, faco a gravacao (post) e logo em seguida insero novo registro em branco (append)

b) Como ir descendo para a proxima linha?
O append faz esse papel

c) Como gravar os elementos do array em um Dbf?
Nunca tentei...


Responder

Gostei + 0

26/02/2003

Anonymous

Você pode utilizar o array da mesma forma.

Declarando:
var vAuxArray : Array(não põe nada aqui porque esta variavel vai ser uma tabela virtual) of Array[0.. (Número de campos que sua tabela terá)] of String(Você pode usar tudo como string e depois fazer o tratamento específico);

Carregando Array:
Objetos: a Variável acima e uma TQuery;

Query.First;
while not Query.Eof do
begin

SetLength(vAuxArray, Length(vAuxArray) + 1); //Acrecenta um registro na varíavel
vAuxArray[Length(vAuxArray) - 1, 0] := Query.FieldByName(´Campo1´).AsString;
vAuxArray[Length(vAuxArray) - 1, 1] := Query.FieldByName(´Campo2´).AsString;
vAuxArray[Length(vAuxArray) - 1, 2] := Query.FieldByName(´Campo3´).AsString;
vAuxArray[Length(vAuxArray) - 1, 3] := Query.FieldByName(´Campo4´).AsString;

Query.Next;
end;


Lendo do Array:
Objetos: a Variável acima e um TListBox;

for vAuxInt := 0 to Length(vAuxArray) - 1 do
begin

ListBox.Items.Add(vAuxArray[vAuxInt, 1]);
ListBox.Items.Add(vAuxArray[vAuxInt, 2]);
ListBox.Items.Add(vAuxArray[vAuxInt, 3]);
ListBox.Items.Add(vAuxArray[vAuxInt, 4]);

end;


Espero que esta pequena explicação tenha ficado claro....


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar