Manejo de error en reporte de access

Expertos.

Tengo un formulario que ejecuta un informe de acuerdo a una consulta.

En un equipo de computo funciona perfectamente.

Al ejecutar el mismo informe en otro equipo (copia de toda la base de datos en otro equipo) me sale un error.

Lo adjunto para ver como puedo solucionar este inconveniente.

Respuesta
1

Cuando un reporte filtrado no cumpla las condiciones de un filtro o la consulta origen de datos del reporte retorne Null, se origina el error 2501. Puede capturar el error con este código de ejemplo.

Private Sub cmdImprime_Click()
On Error GoTo Err_cmdImprime_Click
    Dim stDocName As String
    Dim stCriterio As String
    If Me.cboGrupos > 0 Then
       stCriterio = "IdGrupo=" & Me.cboGrupos
    Else
       stCriterio = ""
    End If
stDocName = "rptMaestroArticulos01"  'Inventario Mostrador
    If stCriterio = "" Then
      DoCmd.OpenReport stDocName, acPreview
    Else
      DoCmd.OpenReport stDocName, acPreview, , stCriterio
Exit_cmdImprime_Click:
    Exit Sub
Err_cmdImprime_Click:
    If Err.Number = 2501 Then
      MsgBox "No hay registros que cumplan la condición", vbInformation, "SIFACAR"
    Else
      MsgBox Err.Description, vbInformation, "SIFACAR"
    End If
    Resume Exit_cmdImprime_Click
End Sub

Me falta un IF.

Private Sub cmdImprime_Click()
On Error GoTo Err_cmdImprime_Click
    Dim stDocName As String
    Dim stCriterio As String
    If Me.cboGrupos > 0 Then
       stCriterio = "IdGrupo=" & Me.cboGrupos
    Else
       stCriterio = ""
    End If
stDocName = "rptMaestroArticulos01"  'Inventario Mostrador
    If stCriterio = "" Then
      DoCmd.OpenReport stDocName, acPreview
    Else
      DoCmd.OpenReport stDocName, acPreview, , stCriterio
    End If
Exit_cmdImprime_Click:
    Exit Sub
Err_cmdImprime_Click:
    If Err.Number = 2501 Then
      MsgBox "No hay registros que cumplan la condición", vbInformation, "SIFACAR"
    Else
      MsgBox Err.Description, vbInformation, "SIFACAR"
    End If
    Resume Exit_cmdImprime_Click
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas