Fórum ClientDataSet com XML ..como importar? #321633
18/05/2006
0
Tenho uma aplicaçao com sqlconnection,sqldataset,datasetprovider,clientedataset e datasource.
Gostaria de implementar na minha aplicacao um siostema de importar dados via xml de um arquivo q foi gerado atraves de outro programinha delphi com somente clientdataset / datasource e dbgrid..
to tendo dificuldades, pois nao sei como jogar os dados do xml para o clientdataser principal e como dar o applyupdates e o principl como nao mandar registros q ja tenha no banco..
Alguem poderia me ajudar?
obrigado
Ectavares
Curtir tópico
+ 0Posts
18/05/2006
Paullsoftware
depois para criar a estrutura do arquivo no seu DataSet clique com o botão direito sobre o seu dataset e escolha a opção CreateDataSet para que seja carregado o arquivo na memória e pronto, coloque um grid um dbnavigator um button com o comando
CDS.ApplyUpdates(0)
espero ter ajudado :wink:
Gostei + 0
18/05/2006
Adriano Santos
Cara siga as instruções do Pall. Fiz um esqueminha aki tb pra te ajudar. Olha só:
[b:f948b0bc18]Exemplo do projeto[/b:f948b0bc18]
[img:f948b0bc18]http://www.doiscliques.com/projeto.jpg[/img:f948b0bc18]
[color=red:f948b0bc18][b:f948b0bc18]O DBGrid de cima é seu XML, e o de baixo o cadastro de clientes principal[/b:f948b0bc18][/color:f948b0bc18]. A idéia é inserir os dados do XML no Clientes.
Não fiz nenhum tipo de checagem como Primary Key por exemplo. Mas isso é boiada.
[quote:f948b0bc18=´Código fonte do botão Importar´]
procedure TForm1.ImportarClick(Sender: TObject); begin //Conecta no banco if not sqlConn.Connected then sqlConn.Connected := True; //Abre o ClientDataSet principal cdsClientes.Active := True; //Abre o ClientDataSetAuxiliar que está linkado com o XML cdsAuxiliar.Active := True; //Faz as inserções cdsAuxiliar.First; while not cdsAuxiliar.EOF do begin with cdsClientes do begin Append; FieldByName(´ID´).AsInteger := cdsAuxiliar.FieldByName(´ID´).AsInteger; FieldByName(´NOME´).AsString := cdsAuxiliar.FieldByName(´NOME´).AsString; FieldByName(´ENDERECO´).AsString := cdsAuxiliar.FieldByName(´ENDERECO´).AsString; FieldByName(´CIDADE´).AsString := cdsAuxiliar.FieldByName(´CIDADE´).AsString; FieldByName(´ESTADO´).AsString := cdsAuxiliar.FieldByName(´ESTADO´).AsString; FieldByName(´CEP´).AsInteger := cdsAuxiliar.FieldByName(´CEP´).AsInteger; Post; cdsAuxiliar.Next; end; cdsClientes.ApplyUpdates(-1); end; end;
[/quote:f948b0bc18]
[b:f948b0bc18]Exemplo do resultdo[/b:f948b0bc18]
[img:f948b0bc18]http://www.doiscliques.com/real.jpg[/img:f948b0bc18]
Se quiser posso disponibilizar o exemplo depois no meu FTP ou te passo por e-mail.
Gostei + 0
18/05/2006
M
Se for possível me enviar ou disponibilizar em arquivo FTP este exemplo de importar com xml
Agradeço desde já
m
Gostei + 0
18/05/2006
Adriano Santos
http://www.doiscliques.com/pub/xml.zip
Gostei + 0
29/05/2006
M
Agradeço pelo exemplo xml postado.
m
Gostei + 0
06/07/2017
Yrece Trench
Tentei baixar o seu exemplo no site http://www.doiscliques.com/pub/xml.zip sobre importação de xml e não consegui.
Agradeço que puder mandar para ytrench@gmail.com
Obrigado
Yrece
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)