Desativar um botão via código

Boa noite a todos.

Eu estou com uma dúvida referente a botão de comando. Abaixo vou sitar minha dúvida:

Eu tenho dois campos (Entrada, Saida), e dois botões (Entrada, e Saida.)

O que eu quero é: Quando eu clicar no botão entrada ele fica inativo para não correr o risco de dar entrada novamente. Quando for dar saída, o botão saida ficarar inativo. E caso eu for efetuar a saida sem dar entrada exibisse uma mensagem para efetuar a entrada primeiro.

Segue meu bd em anexo:Entrada e Saida.odb


Desculpas meu caro, enviei o arqui errado.Entrada e Saida.odb

segue o arquivo correto.

obrigado

Não encontrei os botões (Entrada e Saida) no seu arquivo.

Boa tarde,

Além de alterar as subrotinas cmdEntrada e cmdSaida, foi preciso incluir um código no evento “Apos a Alteração do Registro” do Formulário MainForm para os botões se comportarem adequadamente.


Arquivo alterado: Entrada_e_Saida_Novo.odb


REM  *****  BASIC  *****


Sub Apos_AlteracaoRegistro( oEvento )
Dim oSubForm as Object, ocmdEntrada as Object, ocmdSaida as Object
Dim otxtEntrada as Object, otxtSaida as Object

   ' Garantir que a fonte do evento é um Form'
   If oEvento.Source.ImplementationName <> "com.sun.star.comp.forms.ODatabaseForm" Then Exit Sub

   'Carregar os objetos'
   oSubForm = oEvento.Source
   ocmdEntrada = oSubForm.getByName( "Bt_Entrada" )
   ocmdSaida = oSubForm.getByName( "Bt_Saida" )
   otxtEntrada = oSubForm.getByName( "Entrada" )
   otxtSaida = oSubForm.getByName( "Saida" )
   
   'Habilitar/desabilitar o botão Entrada'
   If otxtEntrada.BoundField.String = "" then
      ocmdEntrada.Enabled = True
   Else 
      ocmdEntrada.Enabled = False
   End If
   
   'Habilitar/desabilitar o botão Saída'
   If otxtSaida.BoundField.String = "" then
      ocmdSaida.Enabled = True
   Else 
      ocmdSaida.Enabled = False
   End If      
End Sub


Sub cmdEntrada( oEvento )
Dim ocmdEntrada as Object, oSubForm as Object
Dim otxtEntrada as Object, otxtSaida as Object

   ocmdEntrada = oEvento.Source.Model
   oSubForm = ocmdEntrada.Parent
   otxtEntrada = oSubForm.getByName( "Entrada" )
   otxtSaida = oSubForm.getByName( "Saida" )
  
   otxtEntrada.BoundField.Value = Time
   'Desabilitar o botao entrada'
   ocmdEntrada.Enabled = False
End Sub


Sub cmdSaida( oEvento )
Dim ocmdSaida as Object, oSubForm as Object
Dim otxtEntrada as Object, otxtSaida as Object

   ocmdSaida = oEvento.Source.Model
   oSubForm = ocmdSaida.Parent
   otxtEntrada = oSubForm.getByName( "Entrada" )
   otxtSaida = oSubForm.getByName( "Saida" )
   
   'Alertar quando o campo entrada estiver vazio'
   If otxtEntrada.BoundField.String = "" then 
     MsgBox "Antes de prosseguir, efetue a 'entrada'.", 16
     Exit Sub
   End If
   
   oTxtSaida.BoundField.Value = Time
   'Desabilitar o botão saída'
   ocmdSaida.Enabled = False
End Sub

Espero ter ajudado.

Atte,

Boa tarde Granfeno.
Perfeito, atendeu perfeitamente as minhas necessidade da minha aplicação.

Obrigado mais uma vez.