LUIZ_
|
SAO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/08/2011 07:45 hs
Galera
Tenho o seguinte problema, fiz esta condiçao para que seja validado uma data da seguinte forma:
If Format(Vf_Vigencia_Anterior, "DD/MM/AAAA") <> dtp_dt_associacao_plano.value And chk_ID_INATIVO.value = vbUnchecked And VG_FORMS(Me.Name).Situacao = cesAlterar Then Call valida_data_vigencia
Ao entrar nesta function "valida_data_vigencia" sera feita a seguinte verificaçao:
Function valida_data_vigencia() Dim vl_dia_sist As Integer
vl_dia_sist = DateDiff("d", dtp_dt_associacao_plano.value, Date) 'Luiz Pedro If vl_dia_sist > 90 Then Beep SSTab1.Tab = 3 MsgBox "Atenção ! Data de vigência superior a 90 dias", vbExclamation dtp_dt_associacao_plano.SetFocus Exit Function End If
End Function
O problema é que apos a verificaçao, quero que ele pare todo o processo e desta forma que esta ai nao esta acontecendo, como faço para que caso a data seja superior a 90 dias, apos aparecer a mensagem o programa pare ?
|
|
|
|
|
Postada em 09/08/2011 10:56 hs
apos a mensagem vc coloca End 'finaliza o programa, mais antes recomendo vc fechar as conexoes abertas ao banco
MsgBox "Atenção ! Data de vigência superior a 90 dias", vbExclamation End 'aqui finaliza e fecha o programa
se vc quiser usar a função como tipo boolean se for=true quando da a mensagem vc finaliza onde for chamado, caso contrario continua no sistema
Function valida_data_vigencia() as boolean valida_data_vigencia=False Dim vl_dia_sist As Integer
vl_dia_sist = DateDiff("d", dtp_dt_associacao_plano.value, Date) 'Luiz Pedro If vl_dia_sist > 90 Then Beep SSTab1.Tab = 3 MsgBox "Atenção ! Data de vigência superior a 90 dias", vbExclamation valida_data_vigencia=True dtp_dt_associacao_plano.SetFocus Exit Function End If end function
if valida_data_vigencia=True then End ' fecha o programa
|
|
|
LUIZ_
|
SAO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 09/08/2011 11:36 hs
Ola Juan
Ainda nao é bem isso que preciso, precisava que o processo seja encerrado mas sem sair do sistema, para usuario corrigir o erro e começar novamente.
|
|
|
|
Postada em 09/08/2011 20:40 hs
If Format(Vf_Vigencia_Anterior, "DD/MM/AAAA") <> dtp_dt_associacao_plano.value And chk_ID_INATIVO.value = vbUnchecked And VG_FORMS(Me.Name).Situacao = cesAlterar Then Call valida_data_vigencia
Talvez o probelma esteja no que vc tem após esta instrução acima:
If Format(Vf_Vigencia_Anterior, "DD/MM/AAAA") <> dtp_dt_associacao_plano.value And chk_ID_INATIVO.value = vbUnchecked And VG_FORMS(Me.Name).Situacao = cesAlterar Then if valida_data_vigencia = false then Beep SSTab1.Tab = 3 MsgBox "Atenção ! Data de vigência superior a 90 dias", vbExclamation dtp_dt_associacao_plano.SetFocus exit sub end if end if
Function valida_data_vigencia() as boolean valida_data_vigencia = true
Dim vl_dia_sist As Integer
vl_dia_sist = DateDiff("d", dtp_dt_associacao_plano.value, Date) 'Luiz Pedro If vl_dia_sist > 90 Then valida_data_vigencia = false Exit Function End If
End Function
|
|
|
|
Postada em 16/08/2011 15:05 hs
Entendi, se não quiser fechar o sistema, vc poderia fechar a tela ou chamar para una tela de validação; ideias sejam bem-vindas
|
|
|