diff --git a/App_Code/ClsValidaCFDi.vb b/App_Code/ClsValidaCFDi.vb index 59aebfc3a..02031dff8 100644 --- a/App_Code/ClsValidaCFDi.vb +++ b/App_Code/ClsValidaCFDi.vb @@ -102,8 +102,35 @@ Public Class ClsValidaCFDi EsValida = 2 End If - Catch ex As Exception + 'SI NO PUEDE ENCONTRAR EL ESTATUS UTILIZA EL SERVICIO PARA ESTATUS DE CANCELACION + If EsValida = 0 Then + + Dim Vigencia = Timbrado.VerificarVigenciaSAT(LFolioFiscal.ToUpper, LRFCEmisor, LRFCReceptor, Importe, True) + + If Vigencia IsNot Nothing Then + If Vigencia.EsCancelable.ToUpper() = "NO CANCELABLE" Then + EsValida = 1 + End If + If Vigencia.Estado.ToUpper().Contains("CANCELADO") Then + EsValida = 2 + ElseIf Vigencia.Estado.ToUpper().Contains("VIGENTE") Then + If Vigencia.EstatusCancelacion.ToUpper() = "EN PROCESO" Then + EsValida = 1 + ElseIf Vigencia.EsCancelable.ToUpper() = "CANCELABLE CON ACEPTACIÓN" Then + EsValida = 1 + ElseIf Vigencia.EsCancelable.ToUpper() = "CANCELABLE SIN ACEPTACIÓN" Then + EsValida = 1 + End If + Else + EsValida = 0 + End If + Else + EsValida = 0 + End If + End If + Catch ex As Exception + OnError("Ocurrió un error al consultar la vigencia ante el SAT", ex) End Try End Sub