Bases de Datos - No funciona filtro

 
Vista:

No funciona filtro

Publicado por Ivan (1 intervención) el 03/12/2010 19:36:17
Necesito ayuda, tengo este codigo para filtrar registros e irme a la ultimo registro de la lista filtrada y guardo los valores de cada columna y los guardo en variables, me funciona bien en la primera pasada, pero luego trato de guardar otro registro pero no me lo hace me manda un error de duplicacion del indice un campo clave, pero segun yo esta correcto, pero veanlo pueda que hay errores que no veo. Este es el codigo.

If .BOF = False And .EOF = False Then

.Filter = "Codproducto" & " LIKE '*" + Trim$(Me.txtcodproducto.Text) + "*'"
Registrosfiltrados = .RecordCount


If Registrosfiltrados >= 1 Then


MsgBox "Hay registro filtrados"

Set Me.DataGrid1.DataSource = Rsentradas
.MoveLast
Numregistro = Numeroregistro
Cantant = Me.DataGrid1.Columns(11).Text
Costunitant = Me.DataGrid1.Columns(12).Text
Costpromant = Me.DataGrid1.Columns(13).Text
Existmon = Me.DataGrid1.Columns(15).Text



'MsgBox "Registros Filtrados" & Registrosfiltrados
'MsgBox "Numero Registro" & Numregistro
'MsgBox "Cantidad Anterior" & Cantant
'MsgBox "Costo Unitario" & Costunitant
'MsgBox "Costo Promedio" & Costpromant
'MsgBox "Existencia Monetaria" & Existmon



Else

MsgBox "No hay registro filtrados"

Numregistro = Numeroregistro
Cantant = 0
Existmon = 0
Costpromant = 0
Costunitant = 0

End If

.AddNew
!Noentrada = Numregistro + 1
!Codproducto = Me.txtcodproducto.Text
!Codentrada = Me.txtcodentrada.Text
!Idusuario = 1 'Usuarioatiende
!Codproducto = Me.txtcodproducto.Text
!Fechaentrada = Me.DTPfecha.Value
!Horaentrada = Time
!Cantidadentrada = Val(Me.txtcantidad.Text)
!Procedencia = Me.txtprocedencia.Text
!Enviadopor = Me.txtenviadopor.Text
!Observaciones = Me.txtobservacion.Text
!Transporte = Me.txttransporte.Text
!Saldounidades = Val(Me.txtcantidad) + Cantant
!Costounitario = Val(Me.txtcostounit.Text)

If Val(Me.txtcostounit.Text) <> Costunitant Then
'Debe--------------------------------------------->
'Saldo Monetario------------------------------------------------->

!Costopromedio = ((Val(Me.txtcantidad.Text) * Val(Me.txtcostounit.Text)) + Existmon) / (Cantant + Val(Me.txtcantidad.Text))
Else
!Costopromedio = Costpromant
End If

!Debe = Val(Me.txtcantidad.Text) * Val(Me.txtcostounit.Text)
!Saldomonetario = (Val(Me.txtcantidad.Text) * Val(Me.txtcostounit.Text)) + Existmon



End If

Call Limpiar(Me)

.Update


End With
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder