PROGRAMA EM REDE
Olha...n sei qual a qtde ou volume de informações e acessos que vvc terá nesse programa em rede...e pelo q li o BD é Access.
Aconselho q, se possÃÂÂvel, estude uma possÃÂÂvel migração desse banco pra SQL ou MYSQL...se quiser melhorar performance e segurança de seus dados..
Nada contra access, tenho vários sistemas rodando com ele, mas são coisas pekenas..de certo modo..
só uma sugestão!!
valew e boa sorte
Estou urilizando a codificação abaixo para inserção de registro, também fnciona em rede (em média 30 usuarias estão utlizando o prgrama ao mesmo tempo).
Primeiro o usuário clica no botão novo:
Após redigir os dados nos textbox, o usuário clica no botão cadastrar e as informação vão para o banco de dados.
If Trim(txtrep.Text) = "" Then
MsgBox "Digite o nome do representante!", 64, "Aviso"
txtrep.Text = ""
txtrep.SetFocus
ElseIf Trim(txtlogin.Text) = "" Then
MsgBox "Digite o login", 64, "Aviso"
txtlogin.Text = ""
txtlogin.SetFocus
Else
tbrep![representante] = "" & txtrep.Text ''tb! > localiza a tabela do access
tbrep![login] = "" & txtlogin.Text
tbrep![supervisor] = "" & cbosupervisor.Text
tbrep![grupo] = "" & cbogrupo.Text
tbrep.Update
Call Desabilitar_Tela
Call Habilitar_Botoes
MsgBox "Registro gravado com sucesso!", 64, "Aviso"
End If
End Sub
A codificação acima funciona em inclusão simultanea???
Primeiro o usuário clica no botão novo:
Private Sub cmdnovo_Click()
X = MsgBox("Deseja inserir um novo cadastro?", 36, "Aviso")
If X = vbYes Then
Call Limpar_tela
Call Habilitar_tela
Call Desabilitar_Botoes
tbrep.MoveLast
txtrep.SetFocus
tbrep.AddNew
Label8.Caption = Label8.Caption + 1
End If
End Sub
Após redigir os dados nos textbox, o usuário clica no botão cadastrar e as informação vão para o banco de dados.
If Trim(txtrep.Text) = "" Then
MsgBox "Digite o nome do representante!", 64, "Aviso"
txtrep.Text = ""
txtrep.SetFocus
ElseIf Trim(txtlogin.Text) = "" Then
MsgBox "Digite o login", 64, "Aviso"
txtlogin.Text = ""
txtlogin.SetFocus
Else
tbrep![representante] = "" & txtrep.Text ''tb! > localiza a tabela do access
tbrep![login] = "" & txtlogin.Text
tbrep![supervisor] = "" & cbosupervisor.Text
tbrep![grupo] = "" & cbogrupo.Text
tbrep.Update
Call Desabilitar_Tela
Call Habilitar_Botoes
MsgBox "Registro gravado com sucesso!", 64, "Aviso"
End If
End Sub
A codificação acima funciona em inclusão simultanea???
Respondendo parte de suas dúvidas...
A INSTALAÇÃO do sistema (pra que ele copie as DLLÂÂ's, OCX) terá que ser feita MÃÂÂQUINA a MÃÂÂQUINA, e o EXECUTÃÂÂVEL depois de instalado, irá apontar a abertura pra um caminho da rede conforme já citado acima por outros amigos.
Quanto a problemas de performance, ou então, se o sistema irá trabalhar certinho com inclusões/alterações simultâneas, isso só com o tempo rodando o seu sistema que VC irá deparar com estes problemas. Primeiro, faça o que foi indicado pra que fizesse aquàneste tópico. Depois com o tempo, vai verificar outros possÃÂÂveis erros e daàdepois VC os trata.
A INSTALAÇÃO do sistema (pra que ele copie as DLLÂÂ's, OCX) terá que ser feita MÃÂÂQUINA a MÃÂÂQUINA, e o EXECUTÃÂÂVEL depois de instalado, irá apontar a abertura pra um caminho da rede conforme já citado acima por outros amigos.
Quanto a problemas de performance, ou então, se o sistema irá trabalhar certinho com inclusões/alterações simultâneas, isso só com o tempo rodando o seu sistema que VC irá deparar com estes problemas. Primeiro, faça o que foi indicado pra que fizesse aquàneste tópico. Depois com o tempo, vai verificar outros possÃÂÂveis erros e daàdepois VC os trata.
Bom.. estou enfrentando o mesmo problema que o nosso amigo TETO...
ainda não chegou a hora de colocar o banco no servidor mas pelo q entendi vc faz o seguinte:
1 - Salve ele no Servidor
2 - Modifique a estrutura de onde vc vai upar o banco tirando o App.path e coloque o caminho do banco...
3 - Instale o prog em cada máquina separadamente e cadastre as OCX, DLL
4 - Rode e espere dar pau!!!
ainda não chegou a hora de colocar o banco no servidor mas pelo q entendi vc faz o seguinte:
1 - Salve ele no Servidor
2 - Modifique a estrutura de onde vc vai upar o banco tirando o App.path e coloque o caminho do banco...
3 - Instale o prog em cada máquina separadamente e cadastre as OCX, DLL
4 - Rode e espere dar pau!!!
Fazer, sistema com acess via rede e com acesso de varios usuários ao mesmo, eu acho meio arriscado.
o servidor que vai estar armazenando o DB vai aguentar se o 30 usuários entrarem ao mesmo tempo. veja cada um que abrir o programa, vai criar um sessão no servidor cada sessão vai pegar um espaço na memória e por ai vai.
Muita gente acessando, o sistema o DB Acess ao mesmo tempo pode corromper os DB. Outra coisa complicada vai ver o fluxo disso, tipo um user não vai poder excluir um dado que outro esteja usando, e assim por diante.
As x só se pensa em compartilhar um programa via rede mais não tem a preocupação de garantir a integridade dos dados e da rede.
De uma linda sobre regras Cliente - Servidor essas coisas.
Digo isso pois ja me ferrei varias x com esse tipo de situação. Mapei funcionou depois de um certo tempo comesou a sumir dados, rede ficar lentar. e por ai vai.
Hoje uso BD MySQL que permite acesso remoto se ter que ficar mapeando unidade de rede é um SGB mais robusto, fora que tem muito mais recurços. Mais vc pode tb optar por FireBird que tb é muito bom, entre outros.
Fica minha dica e minha sugestão, espero ter ajudado
o servidor que vai estar armazenando o DB vai aguentar se o 30 usuários entrarem ao mesmo tempo. veja cada um que abrir o programa, vai criar um sessão no servidor cada sessão vai pegar um espaço na memória e por ai vai.
Muita gente acessando, o sistema o DB Acess ao mesmo tempo pode corromper os DB. Outra coisa complicada vai ver o fluxo disso, tipo um user não vai poder excluir um dado que outro esteja usando, e assim por diante.
As x só se pensa em compartilhar um programa via rede mais não tem a preocupação de garantir a integridade dos dados e da rede.
De uma linda sobre regras Cliente - Servidor essas coisas.
Digo isso pois ja me ferrei varias x com esse tipo de situação. Mapei funcionou depois de um certo tempo comesou a sumir dados, rede ficar lentar. e por ai vai.
Hoje uso BD MySQL que permite acesso remoto se ter que ficar mapeando unidade de rede é um SGB mais robusto, fora que tem muito mais recurços. Mais vc pode tb optar por FireBird que tb é muito bom, entre outros.
Fica minha dica e minha sugestão, espero ter ajudado
Tópico encerrado , respostas não são mais permitidas