diff --git a/Inventarios/RepApartados.aspx b/Inventarios/RepApartados.aspx
index c9cbef7a0..36216384a 100644
--- a/Inventarios/RepApartados.aspx
+++ b/Inventarios/RepApartados.aspx
@@ -106,7 +106,7 @@
+
diff --git a/Inventarios/RepApartados.aspx.vb b/Inventarios/RepApartados.aspx.vb
index cb2b86a4d..d2d984085 100644
--- a/Inventarios/RepApartados.aspx.vb
+++ b/Inventarios/RepApartados.aspx.vb
@@ -200,9 +200,10 @@ Partial Class Inventarios_RepApartados
End If
If e.Row.DBCampo("IDGPO").ToString.ToEntero = 3 Then
- If e.Row.DBCampo("CveVendedor").ToEntero() = UsuarioActual.CveVendedor Then
+ If DdlSubProyectos.SelectedValue.ToEntero() > 0 AndAlso e.Row.DBCampo("CveVendedor").ToEntero() = UsuarioActual.CveVendedor Then
e.Row.FCTextBox("TxtCantidad").Visible = True
e.Row.FCRangeValidator("RVCantidad").Visible = True
+ e.Row.FCTextBox("TxtCantidad").Attributes.Add("onkeyup", $"LimitaCantidad({e.Row.FCTextBox("TxtCantidad").ClientID},{e.Row.DBCampo("Cantidad").ToEntero});")
End If
End If
@@ -271,7 +272,7 @@ Partial Class Inventarios_RepApartados
End If
If Not GvDatos.Rows.Cast(Of GridViewRow).Any(Function(gvr) gvr.FCTextBox("TxtCantidad").Text.ToEntero() > 0) Then
- Alert("No se ha seleccionado ningun cliente", TipoMensaje.MsgAdvertencia)
+ Alert("No se ha seleccionado ningun producto para realizar el traspaso", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
@@ -298,6 +299,10 @@ Partial Class Inventarios_RepApartados
'CUADRA LOS LOS PRODUCTOS CON LO QUE SE PUEDE DESAPARTAR
Dim DtDetalleTraspasar As DataTable = CuadrarMovimientosApartado(CveAlmacenApartado, Row("CveCliente").ToString().ToEntero(), Row("CveVendedor").ToString().ToEntero(), DtPSTraspasar, ObjInventario)
+ If DtDetalleTraspasar.Rows.Count = 0 Then
+ ErrorMovInv = True
+ Mensaje.Append("No se encontraron productos para realizar el traspaso.")
+ End If
DtPSTraspasar.Dispose()
Dim MovSalida = GenerarMovimientoAlmacen(CveAlmacenApartado, 8, Row("CveVendedor").ToString().ToEntero(), Row("CveCliente").ToString().ToEntero(), -1, TxtObs.Text.Trim(), DtDetalleTraspasar, ObjInventario, "RepApar/1")
@@ -316,8 +321,12 @@ Partial Class Inventarios_RepApartados
If Not ErrorMovInv Then
EntradasAlmacen.Add(MovEntrada)
+ Else
+ Mensaje.Append("No se pudo generar el movimiento de apartado.")
End If
-
+ Else
+ Mensaje.Append("No se pudo generar el movimiento de desapartado.")
+ Exit For
End If
Next
@@ -367,19 +376,24 @@ Partial Class Inventarios_RepApartados
End If
If DtRetorno IsNot Nothing Then
- For Each RowCantidad As DataRow In DtPSTraspasar.Rows
+ For Each RowTraspasar As DataRow In DtPSTraspasar.Rows
Dim Filtro As New StringBuilder
- Filtro.AppendFormat("CvePS={0}", RowCantidad("CvePS"))
+ Filtro.AppendFormat("CvePS={0}", RowTraspasar("CvePS"))
'SI TIENE SERIE LA AGREGA AL FILTRO
- If Not String.IsNullOrEmpty(RowCantidad("Serie").ToString()) Then
- Filtro.AppendFormat("AND Serie='{0}'", RowCantidad("Serie"))
+ If Not String.IsNullOrEmpty(RowTraspasar("Serie").ToString()) Then
+ Filtro.AppendFormat(" AND Serie='{0}'", RowTraspasar("Serie"))
Else
- Filtro.AppendFormat("AND ISNULL(Serie,'') = ''")
+ Filtro.AppendFormat(" AND ISNULL(Serie,'') = ''")
+ End If
+
+ 'FILTRA EL MOVIMIENTO DE APARTADO ORIGINAL
+ If Not String.IsNullOrEmpty(RowTraspasar("CveMovimientoDetalleEntrada").ToString()) Then
+ Filtro.AppendFormat(" AND CveMovimientoDetalle={0}", RowTraspasar("CveMovimientoDetalleEntrada"))
End If
Dim RowDesapartado As DataRow = DtDesapartado.Select(Filtro.ToString()).FirstOrDefault()
- RowDesapartado("Cantidad") = RowCantidad("Cantidad")
+ RowDesapartado("Cantidad") = RowTraspasar("Cantidad")
DtRetorno.Rows.Add(RowDesapartado.ItemArray)
Next
@@ -396,6 +410,7 @@ Partial Class Inventarios_RepApartados
Dt.Columns.Add(New DataColumn("Serie", GetType(String)))
Dt.Columns.Add(New DataColumn("CveCliente", GetType(Integer)))
Dt.Columns.Add(New DataColumn("CveVendedor", GetType(Integer)))
+ Dt.Columns.Add(New DataColumn("CveMovimientoDetalleEntrada", GetType(Integer)))
For Each GvRow As GridViewRow In GvDatos.Rows.Cast(Of GridViewRow).Where(Function(gvr) gvr.FCTextBox("TxtCantidad").Text.ToEntero() > 0)
Dim Row As DataRow = Dt.NewRow
@@ -405,6 +420,7 @@ Partial Class Inventarios_RepApartados
Row("Serie") = GvRow.DataKey("Serie")
Row("CveCliente") = GvRow.DataKey("CveCliente").ToEntero()
Row("CveVendedor") = GvRow.DataKey("CveVendedor").ToEntero()
+ Row("CveMovimientoDetalleEntrada") = GvRow.DataKey("CveMovimientoDetalleEntrada").ToEntero()
Dt.Rows.Add(Row)
Next