[Lazarus-es] Resumen de Lazarus-es, Vol 65, Env ío 10

Nippur MDQ nippur_mdp en yahoo.com.ar
Mar Feb 19 23:48:10 CET 2013


Hola Pao, el string puede almacenar hasta 255 caracteres.
Pone la consulta en el componente y usá parámetros.

Saludos,


Conectado por MOTOBLUR™

-----Mensaje original-----
De: lazarus-es-request en lists.lazarus.freepascal.org
Para: lazarus-es en lists.lazarus.freepascal.org
Enviado: mar, 19 feb 2013 16:23:00 GMT-03:00
Asunto: Resumen de Lazarus-es, Vol 65, Envío 10

Envíe los mensajes para la lista Lazarus-es a
	lazarus-es en lists.lazarus.freepascal.org

Para subscribirse o anular su subscripción a través de la WEB
	http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

O por correo electrónico, enviando un mensaje con el texto "help" en
el asunto (subject) o en el cuerpo a:
	lazarus-es-request en lists.lazarus.freepascal.org

Puede contactar con el responsable de la lista escribiendo a:
	lazarus-es-owner en lists.lazarus.freepascal.org

Si responde a algún contenido de este mensaje, por favor, edite la
linea del asunto (subject) para que el texto sea mas especifico que:
"Re: Contents of Lazarus-es digest...". Además, por favor, incluya en
la respuesta sólo aquellas partes del mensaje a las que está
respondiendo.


Asuntos del día:

   1. TStringList (Omar D. González R.)
   2. Re: TStringList (Carlos Enrique Rodriguez)
   3. Re: TStringList (José Mejuto)
   4. Re: TStringList (Maxi)
   5. string, error raro (Paola Bruccoleri)


----------------------------------------------------------------------

Message: 1
Date: Tue, 19 Feb 2013 08:46:53 -0300
From: "Omar D. González R." 	<omar.gonzalez en novacomp.cl>
Subject: [Lazarus-es] TStringList
To: lazarus-es en lists.lazarus.freepascal.org
Message-ID: <5123662D.30907 en novacomp.cl>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Hola amigos,
Me gustaría saber si el TStringList tiene un límite de filas, que está 
dado por las características del componente o está limitado por el 
programa del equipo donde se usa.
Estoy intentando leer un archivo de texto de 3.100.000 registros y se 
cae por problemas de memoria. Lo pregunto para ver si resuelvo el 
problema disponibilizando mas memoria para la aplicación.




------------------------------

Message: 2
Date: Tue, 19 Feb 2013 09:24:34 -0300
From: Carlos Enrique Rodriguez <cer en racss.com.ar>
Subject: Re: [Lazarus-es] TStringList
To: Spanish version of Lazarus List
	<lazarus-es en lists.lazarus.freepascal.org>
Message-ID: <51236F02.4040403 en racss.com.ar>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

El 19/02/13 08:46, "Omar D. González R." escribió:
> Hola amigos,
> Me gustaría saber si el TStringList tiene un límite de filas, que está 
> dado por las características del componente o está limitado por el 
> programa del equipo donde se usa.
> Estoy intentando leer un archivo de texto de 3.100.000 registros y se 
> cae por problemas de memoria. Lo pregunto para ver si resuelvo el 
> problema disponibilizando mas memoria para la aplicación.

TstringList hereda de Tlist, que es lo más parecido a "listas enlazadas 
(con punteros de memoria)"  que hay, así que si, es un tema de memoria 
el tuyo.
Ahora una pregunta. Si bien se que la tendencia actual es volcar todo en 
memoria, no son muchos elementos? No es más conveniente tenerlos en 
algún archivo y levantar a memoria el subgrupo con el que vas a 
trabajar? De curioso nomás pregunto.


Nos vemos
Carlos





------------------------------

Message: 3
Date: Tue, 19 Feb 2013 14:06:42 +0100
From: José Mejuto <joshyfun en gmail.com>
Subject: Re: [Lazarus-es] TStringList
To: Spanish version of Lazarus List
	<lazarus-es en lists.lazarus.freepascal.org>
Message-ID: <512378E2.2040708 en gmail.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

El 19/02/2013 12:46, "Omar D. González R." escribió:
> Hola amigos,
> Me gustaría saber si el TStringList tiene un límite de filas, que está
> dado por las características del componente o está limitado por el
> programa del equipo donde se usa.
> Estoy intentando leer un archivo de texto de 3.100.000 registros y se
> cae por problemas de memoria. Lo pregunto para ver si resuelvo el
> problema disponibilizando mas memoria para la aplicación.
>

Hola,

Técnicamente 2000 millones de lineas, pero eso es imposible de alcanzar 
en un equipo de 32 bits ya que cada linea (con contenido) ocupa el 
contenido de la linea, más la configuración de los bloques de memoria 
para cada string, más la información de control de las lineas y lo peor, 
la fragmentación que genera en la memoria.

Si las lineas son todas de la misma longitud mejor leerlas todas en un 
solo bloque de memoria.

Si no tienen longitud fija y necesitas acceder a todas en memoria, 
cargas todas las lineas en un bloque de memoria, luego haces un array 
dinámico de "pointer" o "integer" (según convenga) que vas haciendo 
crecer en bloques de 1000 o 10000 elementos y buscas donde empieza cada 
linea y lo apuntas en ese array.

En el sistema todo dependerá de que necesitas hacer con las lineas una 
vez cargadas, leerlas, reordenarlas, borrar, añadir, insertar....

-- 




------------------------------

Message: 4
Date: Tue, 19 Feb 2013 10:50:26 -0300
From: Maxi <maximiliano.duarte en gmail.com>
Subject: Re: [Lazarus-es] TStringList
To: Spanish version of Lazarus List
	<lazarus-es en lists.lazarus.freepascal.org>
Message-ID:
	<CAOL=nAp_xMfPAi=naimXG4+XLj68mKTHWpksb6s4DvC92VO5cg en mail.gmail.com>
Content-Type: text/plain; charset="utf-8"

El 19 de febrero de 2013 08:46, "Omar D. González R." <
omar.gonzalez en novacomp.cl> escribió:

> Hola amigos,
> Me gustaría saber si el TStringList tiene un límite de filas, que está
> dado por las características del componente o está limitado por el programa
> del equipo donde se usa.
> Estoy intentando leer un archivo de texto de 3.100.000 registros y se cae
> por problemas de memoria. Lo pregunto para ver si resuelvo el problema
> disponibilizando mas memoria para la aplicación.
>
>
> ______________________________**_________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org>
> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>
>

y cuanta memoria tiene el equipo en cuestion? tamaño habilitado para
memoria virtual y temporales?

-- 
El que pregunta aprende, y el que contesta aprende a responder.

No a la obsolecencia programada:
http://dimensionargentina.blogspot.com/2011/01/todo-esta-disenado-para-romperse.html

Linux User #495070
http://domonetic.com/blog
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130219/91204b9b/attachment-0001.html>

------------------------------

Message: 5
Date: Tue, 19 Feb 2013 17:22:00 -0200
From: Paola Bruccoleri <pbruccoleri en adinet.com.uy>
Subject: [Lazarus-es] string, error raro
To: Lista Lazarus <lazarus-es en lists.lazarus.freepascal.org>
Message-ID: <5123D0D8.8010107 en adinet.com.uy>
Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"

Hola todos..

hace rato que estoy con esto y me está enloqueciendo.
Tengo una variable csql: string a la que le asigno esto:

          cSql:= 'select c.id, c.numero, c.idinquilino, c.idinmueble, 
c.finicio,';
          cSql+= ' c.ffin, c.meses, c.importe, c.acuerdo, c.idformapago, 
c.idtipopago,';
          cSql+= ' c.comision, c.idagenteretencion, c.comisionagente,';
          cSql+= ' c.fechaajuste, c.porcentajeajuste, c.activo, 
c.idmoneda,';
          cSql+= ' c.ultmespago, c.ultanopago, c.detalle,';
          cSql+= ' c.nomgarantia1, c.dirgarantia1, c.telgarantia1,';
          cSql+= ' c.nomgarantia2, c.dirgarantia2, c.telgarantia2,';
          cSql+= ' c.librecontratacion,';
          cSql+= ' i.nombre as inqnom, i.id as inqid, i.direccion as 
inqdireccion,';
          cSql+= ' inm.id, inm.direccion as inmdireccion, inm.localidad, 
inm.iddepartamento,';
          cSql+= ' inm.barrio, inm.cp, inm.ose, inm.ute, inm.idtipo,';
          cSql+= ' inm.idzona, inm.padrones, inm.ph, inm.idpais, ';
          cSql+= ' m.nombre as nommoneda, ';
          cSql+= ' a.nombre as nomagenteretencion, ';
          cSql+= ' tp.nombre as nomtipopago,';
          cSql+= ' fp.nombre as nomformapago ';
          cSql+= 'from contratos c ';
          cSql+= 'inner join inquilinos i on c.idinquilino = i.id ';
          cSql+= 'inner join inmuebles inm on c.idinmueble = inm.id ';
          cSql+= 'inner join agentes_retencion a on c.idagenteretencion 
= a.id ';
          cSql+= 'inner join monedas m on c.idmoneda = m.id ';
          cSql+= 'inner join tipos_pago tp on c.idtipopago = tp.id ';
          cSql+= 'inner join formas_pago fp on c.idformapago = fp.id ';
          cSql+= 'where activo = '+ QuotedStr('S');
          cSql+= ' order by inqnom';

pues cuando hago un showmessage(csql) para corroborar (ya que me estaba 
dando error de sintaxis la consulta), SOLO queda con una partecita...



es de locos... esa misma consulta la uso en otro form, por tanto, copié 
y pegué... en el otro form hago un showmessage y se ve toda completa..

o estoy ciega y no veo que es lo que está mal, o no sé que pasa...

(no coloqué la consulta en el mismo componente tzquery porque es un form 
donde tengo un filtro, por tanto, la consulta es diferente según lo que 
se elija)

agradezco alguna pista..
byeeeeeeeee



------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130219/6731b888/attachment.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: moz-screenshot-5.png
Type: image/png
Size: 8220 bytes
Desc: no disponible
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20130219/6731b888/attachment.png>

------------------------------

_______________________________________________
Lazarus-es mailing list
Lazarus-es en lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es


Fin de Resumen de Lazarus-es, Vol 65, Envío 10
**********************************************
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20130219/44f0a66f/attachment-0002.html>


More information about the Lazarus-es mailing list