changecoun do ClintDataSet . Teste nos seus MyBase

Delphi

31/03/2007

Primeiro quero dizer que estou trabalhando com Arquivos Locais , isto é
estou usando o [u:85eb3a7f8d][color=darkblue:85eb3a7f8d][b:85eb3a7f8d]MyBase[/b:85eb3a7f8d][/color:85eb3a7f8d][/u:85eb3a7f8d]

sempre acreditei no [b:85eb3a7f8d]ChangeCount [/b:85eb3a7f8d]do [b:85eb3a7f8d]ClientDataSet[/b:85eb3a7f8d]

Sempre li a respeito e fiz os exemlos dos textos explicando a utilização do Delta e do Data

Geralmente é assim :

if cds1.changecount > 0 Then cds2.Data:=cds1.delta;


so que precisei de criar algo que guardasse em um Arquivo XML todos os Deltas que ocooresse na aplicação.. Isto serverá para depurar o programa .. < Programa perdendo dados >

[b:85eb3a7f8d]Surpreza[/b:85eb3a7f8d] eu tive , quando usei o .[b:85eb3a7f8d]changecount[/b:85eb3a7f8d] nos Arquivos XML que [b:85eb3a7f8d]eu tenho [/b:85eb3a7f8d]no programa... O simples fato de usar o Open o valor de [color=darkblue:85eb3a7f8d][u:85eb3a7f8d][b:85eb3a7f8d]ChangeCount era maior que zero[/b:85eb3a7f8d][/u:85eb3a7f8d][/color:85eb3a7f8d]


:arrow:

Começei a rastrear o Problema e verifiquei que quando usava um Arquivo XML por exemplo do diretório : [b:85eb3a7f8d]C:\Arquivos de programas\Arquivos comuns\Borland Shared\Data[/b:85eb3a7f8d] o valor do [color=darkblue:85eb3a7f8d][u:85eb3a7f8d][b:85eb3a7f8d]ChangeCount[/b:85eb3a7f8d][/u:85eb3a7f8d][/color:85eb3a7f8d] era inicialmente [b:85eb3a7f8d]ZERO[/b:85eb3a7f8d]


:?: :?: :?: :?:
Mas o que que meu Arquivo XML diferente dos Arquivos desses Diretórios
que pudesse retornar um Valor [b:85eb3a7f8d]errado[/b:85eb3a7f8d] para o [b:85eb3a7f8d]ChangeCount[/b:85eb3a7f8d]

Observei que é a Tag: [color=red:85eb3a7f8d][b:85eb3a7f8d]<PARAMS CHANGE_LOG=[/b:85eb3a7f8d][/color:85eb3a7f8d] ja nos arquivos do diretório no Lugar disso eu Tinha [color=darkblue:85eb3a7f8d][b:85eb3a7f8d]<PARAMS LCID=´1033´ />[/color:85eb3a7f8d][/b:85eb3a7f8d]


Observei também que este é o [b:85eb3a7f8d]Padrão[/b:85eb3a7f8d] , quand se esta usando um [b:85eb3a7f8d]Banco de dados[/b:85eb3a7f8d] com ClintDataSet e manda [b:85eb3a7f8d]Salvar[/b:85eb3a7f8d] o Arquivo
:arrow: cds.Svatofile();

Porém , com eu disse no inicio estou usando o [b:85eb3a7f8d]MyBase[/b:85eb3a7f8d] , então , no meu caso não será o Padrão , e quando uso cds.savetofile() o valor do
Tag é <PARAMS CHANGE_LOG=.........>

:idea: :idea:

A [color=red:85eb3a7f8d][b:85eb3a7f8d]saida[/b:85eb3a7f8d][/color:85eb3a7f8d] que encontrei foi Alterar na [color=darkblue:85eb3a7f8d][b:85eb3a7f8d]Mão [/b:85eb3a7f8d][/color:85eb3a7f8d]o Valor de :

<PARAMS CHANGE_LOG= ...... > Para 

<PARAMS  LCID="0" /> 


Pronto , o Problema esta resolvido se não fosse duas coisas

[b:85eb3a7f8d]
1)Primeiro o Porque que isso ocoore , ou se so ocorre comigo etc... 2)se não teria jeito de ao criar um Arquivo MyBase , ele ja viesse com o valor de Tag <PARAMS LCID=´´..´´
[/b:85eb3a7f8d]

muito obrigado e espero ter sido claro......


Marco Salles

Marco Salles

Curtidas 0
POSTAR