![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
ayuda con array
Hola amigos
Necesito crear un array de record el record es el siguiente: TdetalleRecibo = record vrec_numero : integer; vrec_tipo : string; vcon_codigo : string; vdet_valor : currency; end; Que debo hacer para crear un array de ese tipo y recorrerlo mediante un bucle(ciclo) para poder insetarle información. |
|
#2
|
||||
|
||||
|
Hola amigos
Eso si es una manera de presentarse. Aquí tienes un pequeño ejemplo. Código:
procedure TForm1.Button1Click(Sender: TObject); Type TdetalleRecibo = record vrec_numero : integer; vrec_tipo : string; vcon_codigo : string; vdet_valor : currency; end; var MisRecibos: array[1..10] of TdetalleRecibo; nCont:Integer; Cr_lf:String; begin Cr_lf:=Chr(10)+Chr(13); for nCont:=1 to 10 do begin MisRecibos[nCont].vrec_numero:=nCont; Misrecibos[nCont].vrec_tipo:='Ejemplo'+IntToStr(nCont); MisRecibos[nCont].vcon_codigo:=IntToStr(ncont); MisRecibos[nCont].vdet_valor:=nCont; end; for nCont:=1 to 10 do begin ShowMessage(IntToStr( MisRecibos[nCont].vrec_numero)+ Cr_lf + Misrecibos[nCont].vrec_tipo+Cr_lf +MisRecibos[nCont].vcon_codigo+Cr_lf +FloatToStr(MisRecibos[nCont].vdet_valor)); end; end;
__________________
Guía de Estilo de los Foros Cita:
|
|
#3
|
||||
|
||||
|
Sencillo...
Declaras el arreglo del tipo, y lo recorres, tal y como lo planteas. Tan sencillo como: Código:
var
Arreglo : array[1..100] of TdetalleRecibo;
m : integer;
begin
for m := 1 to 100 do
begin
Arreglo[m].vrec_numero := 15;
...
...
end;
__________________
Héctor Geraldino Software Engineer |
|
#4
|
|||
|
|||
|
Sólo añadir a las 2 respuestas de Marcos y Héctor que, el array puedes declararlo dinámico si en tiempo de diseño no sabes que longuitud va a tener. Sería algo como...
Código:
type
TdetalleRecibo = record
vrec_numero : integer;
vrec_tipo : string;
vcon_codigo : string;
vdet_valor : currency;
end;
var
Arreglo : array of TdetalleRecibo;
m : integer;
begin
SetLength(Arreglo, 100)
for m := 1 to High(Arreglo) do
begin
Arreglo[m].vrec_numero := 15;
...
...
end;
....
end;
|
|
#5
|
|||
|
|||
|
Ok amigos muchas gracias, me funcionó perfectamente.
|
|
#6
|
|||
|
|||
|
Veamos.
Me ha entrado una seria duda. Es Virtual quien inicia el hilo, y es Apolo18 quien da las gracias por la resolución. ¿¿¿¿???? ¿Hay alguna explicación plausible a esto? ¿Se nos ha colado algún E.T. por aquí? ¿Apolo18 ha podido sacar provecho de una consulta iniciada por otro usuario? Bueno, si alguien tiene alguna otra teoría ..... |
![]() |
|
|
|