Gerando XML para um
registros selecionado. ![]()
A XML eXtensible Markup Language é uma linguagem de marcadores como a HTML e foi desenhada para descrever dados , a sua grande vantagem é que ela é extensível , ou seja , você não esta limitado a um certo número de tags , e pode criar as suas próprias tags, assim sendo ela é uma linguagem auto definível . Para descrever os dados a XML usa a DTD Document Type Definition.
Para saber mais sobre o assunto leia em : XML - eXtensible Markup Language - Introdução
Neste artigo vou mostrar como você pode usar os recursos do VB para gerar um documento XML para um registro selecionado em um Data Grid. Vamos usar a ADO para fazer a conexão com a base de dados Nwind.mdb e a seguir exibir os dados em grid usando o controle Data Grid. Ao selecionar um registro e clicar no botão Gerar XML , um arquivo XML será gerado com os dados do registro , sendo exibido no seu navegador padrão. Ao trabalho...
1- Inicie um novo projeto no VB e faça as seguintes referêncais em seu projeto:
![]()
2- No formulário padrão insira : dois botões de comando , um controle Data Grid e um Label, conforme abaixo

3- Agora no na seção General declarations do formulário digite o código para declarar as variáveis objeto usadas:
Option Explicit Private cn As ADODB.Connection Private rs As ADODB.Recordset |
4- No evento Click do botão Conectar insira o código que irá conectar com a base de dados e gerar a grade exibindo os dados:
Private Sub cmdConectar_Click() Set cn = New ADODB.Connection Set rs = New ADODB.Recordset cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & "\teste\NWIND.MDB" cn.CursorLocation = adUseClient cn.Open rs.Open "select ProductID, ProductName, SupplierID from products", cn, adOpenStatic,_ adLockOptimistic Set DataGrid1.DataSource = rs End Sub |
5- A seguir inclua o código abaixo no evento Click do botão - Gerar XML - : Este código irá gerar o arquivo XML para o registro selecionado.
Private Sub cmdXML_Click()
Dim objDOC As DOMDocument
Dim objNodeList As IXMLDOMNodeList
Dim objIE As InternetExplorer
Set objDOC = New DOMDocument
objDOC.Load App.Path & "\nwindprod.xml"
Set objNodeList = objDOC.documentElement.selectNodes("Product")
With objNodeList(0)
.childNodes(0).Text = rs.Fields("ProductID")
.childNodes(1).Text = "" & rs.Fields("ProductName")
.childNodes(2).Text = "" & rs.Fields("SupplierID")
End With
objDOC.save App.Path & "\nwindprod.xml"
Set objIE = New InternetExplorer
objIE.Navigate App.Path & "\nwindprod.xml"
objIE.Visible = True
End Sub
|
6- Para encerrar feche todos os objetos e libera memória:
Private Sub Form_Unload(Cancel As Integer) On Error Resume Next rs.Close cn.Close Set rs = Nothing Set cn = Nothing End Sub |
Ao executar e clicar no botão Conectar você vera a tela a seguir:

Ao selecionar um registro e clicar no botão Gerar XML teremos:

Aguarde mais dicas sobre VB.
Até mais ... ![]()