01.Blogs :
Carrara  

Dúvida - Comunicação entre Aplicativos/Banco de dados


Bom dia Galera,

Preciso que me ajudem numa dúvida.

Estou desenvolvendo um Software, na verdade uma segunda versão que eu havia desenvolvido no ano passado porém on-line. A parada é a seguinte, terei um programa com o Módulo Servidor que fará cadastro de clientes e pedidos e outras coisas de um Sistema Comercial de Vendas. Terei um Módulo Mobile, que será instalado no Pocket com banco de dados desconectado SQL Server CE, os dados inseridos na Interface Mobile irão pro Banco do Pocket, ao final do dia eu irei conectar e os dados que estiverem esperando para serão enviados para o servidor terão que ser enviados e o Banco do Pocket ser atualizado automaticamente, porém com apenas algumas tabelas e somente algumas colunas dessas tabelas, ou seja, será um outro BD. A dúvida é:

1º Terei que fazer a comunicação entre Bancos (Replicação, Active Sync)?
Me disseram que só posso aplicar esses recursos quando estou trabalhando remotamente mas com o mesmo Banco (Shadow), o que não é meu caso ou posso fazer replicação somente de algumas tabelas e colunas?

2º Poderia usar Web Service?
A comunicação entre web services é on-line, porém quando conectasse a Interface poderia localizar os dados pendentes e acessar o Web Service do servidor, atualizar o BD do Servidor e esse enviaria uma resposta para atualização do Banco do Mobile, claro, a Interface teria que traduzir os dados em XML para SQL?

3º O que usar então?
Caso as opções acima sejam inviáveis, o que deveria usar então? Qual Tecnologia dentro do .NEt e dentro de Banco de Dados Relacional? Lembrando que estou desenvolvendo em C# no VS2005.

Aguardo Sugestões e Críticas,

Daniel H Carrara
dhcarrara@hotmail.com

posted on Friday, June 03, 2005 1:33 PM by Carrara

# @ Wednesday, June 08, 2005 1:56 PM

Oi Daniel, tudo bem? Vamos lá: 1º - A comunicação nunca é feita através do ActiveSync. É possivel utilizar as APIs de comunicação do ActiveSync mas da um trabalho que só e fica uma coisa muito limitada, pois todo mundo que for sincronizar com o PC deverá possuir o ActiveSync instalado. Se o banco no servidor for SQL Server, tranquilo. Esse seria o cenário perfeito. Você poderia utilizar replicação, mesmo que os bancos não sejam iguais. O sistema de Merge-Replication do SQL Server com o SQL Server CE permite que apenas algumas linhas e algumas colunas de uma determinada tabela sejam sincronizadas. 2º - Você poderia utilizar Web Service sim. Os dados não precisam ser transformados em XML. O Web Service funciona com uma function on-line. Vc passa parâmetros e ele se encarrega de inserir a informação. Você pode fazer com que o Web Service retorne um DataSet por exemplo com as informações de updade para o Pocket. 3º - Dos dois cenários eu ficaria com a merge replication, pois permite que vc tenha um controle sobre o dado que é trafegado. O SQL Server possui mecanismos para checar se o dado que entrou é realmente o dado que esta sendo cadastrado no BD. Espero ter ajudado. Abraços, Max

max


 
03.UPDATE CALENDAR :
<June 2005>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

05.MY LINKS :

07.Subscriptions :

Subscriptions


© Copyright 2005 Microsoft Corporation. All Rights Reserved.
Terms of Use | Privacy Statement | Code of Conduct | Hosted by MaximumASP for Microsoft
WHO-BAR