sqlserverme

toc

1. Introdução
O novo SGBD para dispositivos móveis da Microsoft chama-se [|Sql Server Mobile Edition]. Uma das grandes novidades é a integração com o Visual Studio 2005 e Sql Server 2005. Todo o desenvolvimento das Bases de Dados são feitas agora no Desktop.

2. Arquitectura
a fazer...

3. Exemplo
O exemplo que se segue modela um sistema de gestão de vendas de produtos.

Fases:


 * 1) Criação de nova conexão e BD (vendas);
 * 2) Criação de tabelas (cliente, produto e venda);
 * 3) Preenchimento de dados fictícios nas tabelas;
 * 4) Actualização do DataSet (vendasDataSet):



5. Criação da parte gráfica e codificação (pouca);

A parte gráfica é composta por:


 * TabControl com 2 páginas:
 * Vendas: formulário para inserção de uma venda;
 * Lista: listagem das vendas até agora efectuadas.

Para gerar o aparecimento do 1º formulário:



Alterar a visão do DataTable para Details e arrastar para a Form (trocar as duas caixas texto id Prod e idCli por 2 combobox) Para __**popular uma combobox com dados de uma tabela**__ fazer:


 * Alterar a propriedade **DataSource** para a DataTable correspondente (dentro do DataSet gerado no projecto);
 * Alterar a propriedade **DisplayMember** para a coluna que deseja visualizar na combobox;
 * Alterar a propriedade **ValueMember** para a coluna que deseja capturar o seu valor após selecção de item na combobox.

No item do menu da esquerda (despoletado pelo softKey da esquerda) colocar o seguinte código:

//Try VendasTableAdapter.Insert(cmbProds.SelectedValue, cmbClis.SelectedValue, Now, txtQtd.Text) Catch ex As ApplicationException MsgBox(ex.Message) End Try//

Chama-se o método //insert// do TableAdapter //VendasTableAdapter// que executa a query SQL Insert gerada automaticamente.

Para a 2ª página vai ser necessário primeiro criar um novo DataTableAdapter para armazenar os nomes (e não as referências) dos produtos e clientes envolvidos nas vendas a listar. Para criar um DataTableAdapter, edita-se o DataSet e faz-se Add->DataTableAdaper. A query associada a esta criação é um JOIN das 3 tabelas:



O DataSet fica assim:



No modo de desenho arrasta o novo DataTable para o dispositivo ficando a seguinte interface:



Por fim, temos apenas de codificar o segundo separador do TabControl.:

//If TabControl1.SelectedIndex = 1 Then DataGrid.DataSource = dtVendasDetalheTableAdapter.GetDataVendas End If//

E já está!