Ver Mensaje Individual
  #1  
Antiguo 05-01-2018
Avatar de Maniches
Maniches Maniches is offline
Miembro
 
Registrado: nov 2012
Ubicación: Lima - Perú
Posts: 67
Reputación: 13
Maniches Va por buen camino
Lightbulb Error de declaracion de Clase Dinamica

Hola a todos los amigos del Foro.
Acudo a su gran experiencia y conocimiento para el problema que tengo, detallo todo para que me entiendan el problema y me puedan ayudar:

Código Delphi [-]
type
  TRubro = record
    cod_rubro : string[20];
    dsc_rubro: string[100];
  end;
type
  TEmpresa = record
    cod_empresa: string[20];
    nom_empresa : string[100];
    rubros: array[1..200] of TRubro;
  end;
type
  TEmpresas = class
  public
    RecordCount: Integer;
    Empresas: array[1..15000] of TEmpresa;
  end;

El problema que me esta generando es que cuando creo una variable de la clase: TEMPRESAS en ciertos momentos me esta devolviendo error ("Fuera de Memoria") quiero entender que eso es por los ARRAY qye estan definidos.

Quisiera me apoyen a evitar este error que no siempre me sale, si bajo el tamaño del array a un numero menor ya no me sale el error.

Preguntas:

1. La clase "TEmpresas" debe tener un arreglo dinámico ya que va a recibir una lista grande de empresas la cantidad no se sabe ya que es variable. entonces hay alguna forma de definir que el arreglo sea dinámico y cuando se tenga el número de registros se cree en base a ello. no sé si eso evitara que ya no salga el mensaje de ("Fuera de Memoria")?
2. Si ven el Record "TEmpresa" este también tiene un arreglo y quisiera saber si es posible también hacerlo dinámico, similar a lo comentado en el punto 1.
3. He definido así la clase por motivo que me va a llegar información desde un servicio rest(JSON) y tiene esta misma estructura y como luego la data de la clase guardara en un ClientDataSet, ¿no si es la mejor alternativa la que he elegido?

Por favor si hay algún amigo que me ayude a mejorar la clase o me indique ejemplos o donde está el error que estoy cometiendo le agradecería mucho.

Muchas Gracias por el apoyo

Saludos.
__________________
Maniches
maniches@outlook.com
Responder Con Cita