ATUALIZACAO REMOTA
Tenho um aplicação cliente com banco local onde é atualizado constantemente, esses dados são extraÃdos de um banco de dados(access) local, ou seja no servidor da empresa.. zipado e enviado para um FTP online.. onde o cliente atualiza os dados fazendo o download desse arquivo, descompactando e inserindo no BD local.
até aà tudo bem.. funciona bem até hoje. porem em algumas situações algum usuário está atualizando no momento enviar/substituir o aquivo para o FTP online, pois o arquivo está em uso..
alguem teria alguma solução para isso ou outra forma de [Ô]soncronização[Ô]???
Você vai em um browser qualquer e digita algo como:
www.meuservidor.com.br/meuwebservice.asmx/BuscarConfiguracao&Cliente=001
E pronto, os dados que você quer serão exibidos no browser em formato XML que é facinho de se trabalhar...
lembrando que pelo webservice como são muitos registros iria perder performance poderia demorar muito mais..
ainda no aguardo de uma soluçao ou nova ideia.
exemplo:
Inicio:
On Error Goto TrataErro:
[ô]código para atualizar
Exit Sub
TrataErro:
If Err.Number = (numero do erro gerado) Then
Goto Inicio
End If
Citação:Dim strMsg
Dim objFTP As New NIBLACK.ASPFTP
objFTP.sServerName = [Ô]ENDERECO FTP[Ô]
objFTP.sPassword = [Ô]SENHA[Ô]
objFTP.sUserID = [Ô]USER[Ô]
pp = objFTP.bConnect
If pp = False Then
wfunc = [Ô]Erro ao conectar Ftp[Ô]
GoTo trata_Erro
End If
tcaminho = Wcaminho & [Ô]\ArquivoTemp.zip[Ô]
[ô]envia o arquivo para FTP
dfg = objFTP.bPutFile(tcaminho, [Ô]/caminhodoservidorweb/[Ô] & [Ô]/ArquivoTemp.zip[Ô])
If dfg = False Then
wfunc = [Ô]Erro ao enviar arquivo para o Ftp[Ô]
If Err.Number >= 0 Then
registraLogErros Err.Number, Err.Description, wfunc
Err.Clear
End If
End If
Wdel = objFTP.bDeleteFile([Ô]/consulpro/web/pedonline/[Ô] & dcnpj & [Ô]/Exporta.zip[Ô])
If Wdel = False Then
wfunc = [Ô]Erro ao deletar arquivo no Ftp[Ô]
If Err.Number >= 0 Then
registraLogErros Err.Number, Err.Description, wfunc
Text15.Text = Err.Number & Err.Description & wfunc
Err.Clear
End If
End If
df = objFTP.bRename([Ô]/caminhodoservidorweb/[Ô] & [Ô]ArquivoTemp.zip[Ô], [Ô]/caminhodoservidorweb/[Ô] & [Ô]/Arquivo.zip[Ô])
If df = False Then
wfunc = [Ô]Erro ao renomear arquivo no Ftp[Ô]
If Err.Number >= 0 Then
registraLogErros Err.Number, Err.Description, wfunc
Text15.Text = Err.Number & Err.Description & wfunc
Err.Clear
End If
End If
Set objFTP = Nothing