No logro comprender el comportamiento de este procedimiento.
Lo que intento hacer es rellenar una tabla con una serie de registros,
y en el caso de que se produzca un excepción porque se intenta
insertar un registro duplicado en una tabla con clave, el bloque
Try-Cach permita que le bucle For-Next sigua ejecutandose ,y en los
siguientes pasos intente insertar los siguientes registros.
Pues bien, funciona, pero sólo hasta que se produce la primera
excepcion y salta al Catch, porque a partir de entonces vuelve al Catch
todas las veces hasta el final del bucle, aunque en los siguientes
pasos del mismo, los registros que se intentan insertar no existan en
la tabla.
Por más vueltas que le doy no encuentro el problema.
Gracias de antemano.
El procedimiento en cuestión.
Public Sub AsignacionContadoresInicialesEmpresa(ByVal PEmpresa As
Integer)
Dim ContadorDocumentoDS As
WindowsApplication1.ContadorDocumentoDS
Dim Contador_DocumentoTableAdapter As
WindowsApplication1.ContadorDocumentoDSTableAdapters.Contador_DocumentoTableAdapter
Dim Contador_DocumentoBindingSource As
System.Windows.Forms.BindingSource
Dim ValorFila(4) As Object
Dim N As Byte
ContadorDocumentoDS = New
WindowsApplication1.ContadorDocumentoDS
Contador_DocumentoTableAdapter = New
WindowsApplication1.ContadorDocumentoDSTableAdapters.Contador_DocumentoTableAdapter
Contador_DocumentoBindingSource = New
System.Windows.Forms.BindingSource
For N = 0 To 100
Select Case N
Case 0, 10, 20, 30, 50, 60, 70, 80
Try
ValorFila(0) = PEmpresa
ValorFila(1) = N
ValorFila(2) = 0
ValorFila(3) = 1
ValorFila(4) = "SIN SERIE"
Contador_DocumentoBindingSource.AddNew()
ContadorDocumentoDS.Tables("Contador_Documento").Rows.Add(ValorFila)
Contador_DocumentoTableAdapter.Update(ContadorDocumentoDS.Contador_Documento)
Catch ex As System.Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
End Select
Next N
End Sub
Miguel Moreno
Leer las respuestas