Bom dia Amigos
Este é o comando de gravar os registos na minha base de dados em rede.
Acontece que tendo eu a BD aberta nos dois PC, e no mesmo formulário, fazendo um registo, esse registo só aparece no PC em que foi feito o registo.
Para aparecer no outro PC tenho que fechar e abrir o dito formulário, e voltar a abrir
Private Sub Comando65_Click()
On Error Resume Next
Dim BCO As Database
Dim Lançamentos As Recordset
Dim LançamentosDatados As Recordset
Set BCO = CurrentDb()
Set Lançamentos = BCO.OpenRecordset("tblmovimento")
Set LançamentosDatados = BCO.OpenRecordset("tblmovimentoData")
If Me.txtData <= Date Then
Lançamentos.AddNew
Lançamentos![IdCaixa] = Me.IdCaixa
Lançamentos![DataMovimento] = Me.txtData
Lançamentos![Historico] = Me.txtHistorico
Lançamentos![Rubrica] = Me.Rubrica
Lançamentos![Entidade] = Me.Entidade
Lançamentos![Doc] = Me.TxtDoc
Lançamentos![ValorMovimento] = ValorMovimento
Lançamentos![Ordenar] = txtData + Time
If Me.TipoMov = "D" Then
Lançamentos![ValorDebito] = ValorMovimento
Lançamentos![ValorCredito] = 0
ElseIf Me.TipoMov = "C" Then
Lançamentos![ValorCredito] = ValorMovimento
Lançamentos![Débito] = 0
End If
End If
If Me.txtData > Date Then
MsgBox "Este Movimento vai Ficar Pendente ! " & vbCrLf & " Até dia " & txtData & " ", vbExclamation, "Aviso"
LançamentosDatados.AddNew
LançamentosDatados![IdCaixa] = Me.IdCaixa
LançamentosDatados![DataMovimento] = Me.txtData
LançamentosDatados![Historico] = Me.txtHistorico
LançamentosDatados![Rubrica] = Me.Rubrica
LançamentosDatados![Entidade] = Me.Entidade
LançamentosDatados![Doc] = Me.TxtDoc
LançamentosDatados![ValorMovimento] = ValorMovimento
LançamentosDatados![Ordenar] = txtData + Time
If Me.TipoMov = "D" Then
LançamentosDatados![ValorDebito] = ValorMovimento
LançamentosDatados![ValorCredito] = 0
ElseIf Me.TipoMov = "C" Then
LançamentosDatados![ValorCredito] = ValorMovimento
LançamentosDatados![Débito] = 0
End If
End If
ValorMovimento = Format(ValorMovimento, "#,##0.00 €")
If MsgBox("Confirma o Registo do Lançamento ?" & vbCrLf & txtData & vbCrLf & Me.txtHistorico & vbCrLf & Me.Rubrica & vbCrLf & Me.Entidade & vbCrLf & "Valor " & ValorMovimento & " ?", vbYesNo, "Gestão Bancária") = vbYes Then
Lançamentos.Update
LançamentosDatados.Update
Call fncAuditar(Me.Name, 0, "Movimentação " & Me!txtHistorico & " - " & Format(ValorMovimento, "#,##0.00 €"))
Else
MsgBox "Registo do Lançamento Cancelado", vbExclamation, "Gestão Bancária"
Lançamentos.CancelUpdate
LançamentosDatados.CancelUpdate
End If
Lançamentos.Close
LançamentosDatados.Close
Call fncMontaSaldo
Call Form_Current
Me.Comando65.Visible = True
Me.Comando96.Visible = False
Me.Comando97.Visible = False
Me.IdCaixa = Null
Me.txtHistorico = Null
Me.Rubrica = Null
Me.Entidade = Null
Me.ValorMovimento = Null
Me.TxtDoc = Null
Me.txtData = Forms.menu.DataMenu
Me.txtData.SetFocus
Me.txtData.SelStart = 0
Me.Recalc
Me.Requery
End Sub
Obrigado
Este é o comando de gravar os registos na minha base de dados em rede.
Acontece que tendo eu a BD aberta nos dois PC, e no mesmo formulário, fazendo um registo, esse registo só aparece no PC em que foi feito o registo.
Para aparecer no outro PC tenho que fechar e abrir o dito formulário, e voltar a abrir
Private Sub Comando65_Click()
On Error Resume Next
Dim BCO As Database
Dim Lançamentos As Recordset
Dim LançamentosDatados As Recordset
Set BCO = CurrentDb()
Set Lançamentos = BCO.OpenRecordset("tblmovimento")
Set LançamentosDatados = BCO.OpenRecordset("tblmovimentoData")
If Me.txtData <= Date Then
Lançamentos.AddNew
Lançamentos![IdCaixa] = Me.IdCaixa
Lançamentos![DataMovimento] = Me.txtData
Lançamentos![Historico] = Me.txtHistorico
Lançamentos![Rubrica] = Me.Rubrica
Lançamentos![Entidade] = Me.Entidade
Lançamentos![Doc] = Me.TxtDoc
Lançamentos![ValorMovimento] = ValorMovimento
Lançamentos![Ordenar] = txtData + Time
If Me.TipoMov = "D" Then
Lançamentos![ValorDebito] = ValorMovimento
Lançamentos![ValorCredito] = 0
ElseIf Me.TipoMov = "C" Then
Lançamentos![ValorCredito] = ValorMovimento
Lançamentos![Débito] = 0
End If
End If
If Me.txtData > Date Then
MsgBox "Este Movimento vai Ficar Pendente ! " & vbCrLf & " Até dia " & txtData & " ", vbExclamation, "Aviso"
LançamentosDatados.AddNew
LançamentosDatados![IdCaixa] = Me.IdCaixa
LançamentosDatados![DataMovimento] = Me.txtData
LançamentosDatados![Historico] = Me.txtHistorico
LançamentosDatados![Rubrica] = Me.Rubrica
LançamentosDatados![Entidade] = Me.Entidade
LançamentosDatados![Doc] = Me.TxtDoc
LançamentosDatados![ValorMovimento] = ValorMovimento
LançamentosDatados![Ordenar] = txtData + Time
If Me.TipoMov = "D" Then
LançamentosDatados![ValorDebito] = ValorMovimento
LançamentosDatados![ValorCredito] = 0
ElseIf Me.TipoMov = "C" Then
LançamentosDatados![ValorCredito] = ValorMovimento
LançamentosDatados![Débito] = 0
End If
End If
ValorMovimento = Format(ValorMovimento, "#,##0.00 €")
If MsgBox("Confirma o Registo do Lançamento ?" & vbCrLf & txtData & vbCrLf & Me.txtHistorico & vbCrLf & Me.Rubrica & vbCrLf & Me.Entidade & vbCrLf & "Valor " & ValorMovimento & " ?", vbYesNo, "Gestão Bancária") = vbYes Then
Lançamentos.Update
LançamentosDatados.Update
Call fncAuditar(Me.Name, 0, "Movimentação " & Me!txtHistorico & " - " & Format(ValorMovimento, "#,##0.00 €"))
Else
MsgBox "Registo do Lançamento Cancelado", vbExclamation, "Gestão Bancária"
Lançamentos.CancelUpdate
LançamentosDatados.CancelUpdate
End If
Lançamentos.Close
LançamentosDatados.Close
Call fncMontaSaldo
Call Form_Current
Me.Comando65.Visible = True
Me.Comando96.Visible = False
Me.Comando97.Visible = False
Me.IdCaixa = Null
Me.txtHistorico = Null
Me.Rubrica = Null
Me.Entidade = Null
Me.ValorMovimento = Null
Me.TxtDoc = Null
Me.txtData = Forms.menu.DataMenu
Me.txtData.SetFocus
Me.txtData.SelStart = 0
Me.Recalc
Me.Requery
End Sub
Obrigado