mtsistemas 26/11/2024, 16:14
Passo 1.
Cria uma varivel na seção Geral
Dim SQL as string
'adicione no seu projeto o metodo mencionado.
Private Sub FiltraOpcoes(opcao As String)
If opcao = "Mostrando todos" Then
SQL = "SELECT * FROM viewOrdemServicos ORDER BY DTENTRADA DESC"
Else
SQL = "SELECT * FROM viewOrdemServicos WHERE STATUS = " & "'" & opcao & "'"
SQL = SQL & " ORDER BY DTENTRADA DESC"
End If
End Sub
'NAS OPÇÕES VOCÊ CHAMA O METO E PASSA O TXTSTATUS COMO PARAMENTRO.
If opFiltro = 1 Then
txtSTATUS = "Em aberto"
BotaoAlterar.Visible = True
BotaoExcluir.Visible = True
BotaoExportar.Visible = False
BotaoReabrir.Visible = False
'chama o metodo privado
Call FiltraOpcoes(txtSTATUS)
ElseIf opFiltro = 2 Then
txtSTATUS = "Aguardando peças"
BotaoAlterar.Visible = True
BotaoExcluir.Visible = True
BotaoExportar.Visible = False
BotaoReabrir.Visible = False
'chama o metodo privado
Call FiltraOpcoes(txtSTATUS)
ElseIf opFiltro = 3 Then
txtSTATUS = "Aguardando aprovação"
BotaoAlterar.Visible = True
BotaoExcluir.Visible = True
BotaoExportar.Visible = False
BotaoReabrir.Visible = False
'chama o metodo privado
Call FiltraOpcoes(txtSTATUS)
ElseIf opFiltro = 5 Then
txtSTATUS = "Mostrando todos"
BotaoAlterar.Visible = False
BotaoExcluir.Visible = False
BotaoExportar.Visible = False
BotaoReabrir.Visible = False
'chama o metodo privado
Call FiltraOpcoes(txtSTATUS)
ElseIf opFiltro = 4 Then
txtSTATUS = "Finalizado"
BotaoAlterar.Visible = True
BotaoExcluir.Visible = True
BotaoExportar.Visible = True
BotaoReabrir.Visible = True
'chama o metodo privado
Call FiltraOpcoes(txtSTATUS)
End If
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset(SQL)
If rst.RecordCount = 0 Then
Beep
If opFiltro = 2 Then
MsgBox "Não ordem de serviços aguardando peças!", vbInformation, "Ordem serviços"
ElseIf opFiltro = 3 Then
MsgBox "Não ordem de serviços aguardando aprovação!", vbInformation, "Ordem serviços"
ElseIf opFiltro = 4 Then
MsgBox "Não ordem de serviços finalizadas!", vbInformation, "Ordem serviços"
ElseIf opFiltro = 1 Then
MsgBox "Não ordem de serviços em aberto!", vbInformation, "Ordem serviços"
ElseIf opFiltro = 5 Then
MsgBox "Mostrando todos!", vbInformation, "Ordem serviços"
End If
End If
Me.RecordSource = SQL
infelizmente não sei anexar arquivo aqui no forum
espero ter ajudado