Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/08/2013, 11:17
PatricioGalarzaR
 
Fecha de Ingreso: agosto-2013
Ubicación: Machala, El Oro, Ecuador
Mensajes: 7
Antigüedad: 10 años, 8 meses
Puntos: 0
Sumar registros repetidos de un datagridview en otro

Hola, gracias de antemano por la ayuda.

mi inquietud es la siguiente, quiero sumar los registros repetidos de mi tabla REQUISICION_PRODUCTO para agregarlos a la tabla ORDEN_COMPRA:
--------------------------------------
- REQUISICION_PRODUCTO -
--------------------------------------
Nº ITEM CANT ESTADO
001 005 10 2
002 010 02 2
003 005 01 2
004 007 15 2
005 010 11 2

-------------------------------------------
- ORDEN_COMPRA -
-------------------------------------------
Nº ITEM CANT VALOR U VALOR T
001 005 11 1.5 16.5
002 010 13 2.7 08.1
003 007 15 3.0 45.0

No lo hago directo desde la base de datos porque necesito identificar los registros de la REQUISICION DE PRODUCTO para cambiar su estado a 3, que seria aprobado y no se me listen en una nueva ORDEN DE COMPRA.

Lo he estado intentando sin exito de la siguiente forma, se el bucle se vuelve infinito:
Public Sub cargarDetalleOrdenCompra()
Try
'Aqui cargo el primer DataGridView
dgvDetalleRequisicionPS.DataSource = objetoOrdenCompra.buscarDetalleRequisicionProducto ServicioXIdProveedor(lblIdProveedorGeneral.Text)
'Aqui intento pasar los datos al otro Datagridview
For Each Fila1 As DataGridViewRow In dgvDetalleRequisicionPS.Rows

Dim Añadir As Boolean = True

For Each Fila2 As DataGridViewRow In dgvDetalleOrdenCompra.Rows
If Fila2.Cells("idItem").Value = Fila1.Cells("ID_SECUENCIAL_ITEM").Value.ToString Then
Fila2.Cells("cantidadProductoServicio").Value = CType(Fila2.Cells("cantidadProductoServicio").Valu e, Integer) + CType(Fila1.Cells("CANTIDAD").Value, Integer)
Añadir = False
End If
If Añadir = True Then
'los dos últimos campos los envió como "" porque los valores unitarios se los ingresa manualmente y el valor total se calcula de forma automática dgvDetalleOrdenCompra.Rows.Add(Fila1.Cells("ID_SEC UENCIAL_ITEM").Value.ToString, Fila1.Cells("UMEDIDA_DETALLE_REQUISICION_PS").Valu e.ToString, Fila1.Cells("CANTIDAD").Value.ToString, "", "")
End If
Next
Next
Catch ex As Exception
MsgBox("CARGAR DETALLE ORDEN DE COMPRA." & vbNewLine & ex.Message.ToString, MsgBoxStyle.Critical, "MENSAJE DE EXCEPCIÓN")
End Try
End Sub

Última edición por PatricioGalarzaR; 06/08/2013 a las 11:27