Matou a pau, eheh. Vou guardar essa dica no caderninho.

Abração

2009/7/1 Edelson Regis de Lima <edre...@ig.com.br>:
>
>
> Fala Guionardo, tranquilo?
>
> Então, eu acabei resolvendo esse problema com um TClientDataSet mesmo, ao
> invés de um TList. Ficou muito mais simples.
> Eu uso um campo do tipo blob (TBlobField) para armazenar outros
> TClientDataSets já convertidos em TMemoryStream.
> Ou seja, cada registro desse TClientDataSet contem outro TClientDataSet. E
> eu ainda posso criar outros campos para servir como passagem de parametros.
> E no final eu dou um TClientDataSet.SaveToStream, e obtenho a minha stream
> com todos os TClientDataSets embutidos.
> Ficou bem mais simples dessa maneira.
>
> Mas valew pela dica assim mesmo!
>
> Abraços,
>
> Edelson.
>
> 2009/6/30 Guionardo Furlan <guiona...@gmail.com>
>
>>
>>
>> Minha sugestão.
>> Mantenha a estrutura do TList de ClientDataSets.
>> Crie um TMemoryStream (MS)
>> Faça um loop para varrer o TList.
>> Para cada item:
>> - vc escreve um LongInt (N) (representando o tamanho dos dados [Data,
>> acho que é essa propriedade que guarda os dados do CDS] do CDS
>> respectivo) no MS
>> - escreve o conteúdo do Data do CDS no MS
>>
>> Quando for ler, é só varrer o MS obtendo o tamanho dos dados pelo
>> primeiro longint (N) e ler N bytes para a propriedade Data do CDS. Se
>> ainda houver dados no MS, repita o procedimento, criando novo CDS.
>>
>> São quase 11 horas da noite, eheh. Deu pra entender a minha idéia?
>>
>> 2009/6/23 Edelson Regis de Lima <edre...@ig.com.br <edregis%40ig.com.br>>:
>>
>> >
>> >
>> > Boa tarde!
>> >
>> > Pesssoal, alguem sabe se tem como gerar um TMemoryStream a partir de um
>> > TList?
>> > O TStringList até tem um SaveToStream, porém não salva os objetos
>> contidos
>> > na lista, somente strings.
>> >
>> > Basicamente é o seguinte... preciso transportar vários ClientDataSets, e
>> a
>> > melhor maneira é transformar em Stream primeiro.
>> > Só que eu não quero transportar um a um, eu quero "empacotar" todos os
>> > ClientDataSets numa Stream só.
>> >
>> > Aí pensei em colocar todos os ClientDataSets em um TList (ou algo do
>> > genero), e transformar esse TList em Stream. Só que o TList não tem o
>> > SaveToStream.
>> > Alguém sabe?
>> > Ou se alguem tiver alguma outra sugestão de fazer esse empacotamento,
>> > sem
>> > usar Lists, também será bem vinda...
>> >
>> > Até mais,
>> >
>> > Edelson.
>> >
>> > [As partes desta mensagem que não continham texto foram removidas]
>> >
>> >
>>
>> --
>> Timeo hominem unius libri
>> Cogito ergo sum - Carpe diem
>>
>> []s
>> Guionardo Furlan
>> http://guionardo.blogspot.com
>> http://www.guionardofurlan.com.br
>>
>>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 



-- 
Timeo hominem unius libri
Cogito ergo sum - Carpe diem

[]s
Guionardo Furlan
http://guionardo.blogspot.com
http://www.guionardofurlan.com.br

Responder a