Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problemas con arreglos bidimensionales contantes (https://www.clubdelphi.com/foros/showthread.php?t=69852)

davidc 13-09-2010 22:33:02

Problemas con arreglos bidimensionales contantes
 
Buen día

Quisiera consultar este problema.

Estoy creando un array bidimensional de strings constante.

const Campos: array [0 .. 16,0..3] of string =
(
('CLI_CLASE','CLASE DOCUMENTO','CLIENTE','CLI_CODIGO'),
('CLS_NOMBRE','NOMBRE','CLIENTE_SALDO','CLS_CODIGO'),
('CLI_REPRESENTANTE','REPRESENTANTE','CLIENTE','CLI_CODIGO'),
('CLI_DIRECCION','DIRECCIÓN','CLIENTE','CLI_CODIGO'),
('CLI_TELEFONO1','TELÉFONO 1','CLIENTE','CLI_CODIGO'),
...
...
);

Cuando la aplicación se ejecuta realizo recorridos al arreglo para obtener datos. El problema es que en algunos casos cuando se ejecuta la aplicación, al recorrerlo se muestra cada posición vacía.

Lo implemente como array de records. Paso lo mismo.
Lo implemente en una clase (como arreglo bidimendional de strings o de arreglo unidimensional de records). Pasa lo mismo.
Lo implemente como parte de un unit. Pasa lo mismo.


No se ha detectado un patrón para el error.
Es algo raro pues es una constante. Ahora por ser arreglo lo único que se hace es recorrerlo.

IDE: Delphi 2010
S.O. Windows 7 Home Premium 64 Bits


Agradezco cualquier ayuda que puedan brindarme.

Gracias.

roman 14-09-2010 01:00:07

¿Por qué no nos muestras el código con el que haces el recorrido?

// Saludos

davidc 21-09-2010 00:04:59

Recorrido de arreglo de constantes.
 
Buen día.

De antemano gracias por atender mi pregunta.

Hago el recorrido del arreglo retomando cada posición en variables
y con estas lleno listas y operaciones no complejas.

El arreglo lo recorro con un for simple y lo había intentado con un while y el
resultado fue el mismo. En algunos casos funciona y en otros no.

Codigo:

procedure X();
var vCampo1,vCampo2, vCampo3:String;
begin
...
...
for I := 0 to 16 - 1 do
begin
vCampo1:=Campos[i][0];
vCampo2:=Campos[i][1];
vCampo3:=Campos[i][2];
vCampo4:=Campos[i][3];
//.. operaciones con variables string..
end;
end;


La franja horaria es GMT +2. Ahora son las 20:52:32.

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