Correciones en traspasos de apartados
This commit is contained in:
@@ -106,7 +106,7 @@
|
||||
<div class="col-md-12">
|
||||
<asp:UpdatePanel ID="UpDatos" UpdateMode="Conditional" runat="server">
|
||||
<ContentTemplate>
|
||||
<asp:GridView ID="GvDatos" runat="server" data-sort="true" AutoGenerateColumns="False" DataKeyNames="CvePS,Serie,CveCliente,CveVendedor" EmptyDataText="No se encontraron datos con los filtros seleccionados" ToolTip="Listado de Movimientos" CssClass="Widthall table table-striped table-hover ScrollAD" GridLines="None">
|
||||
<asp:GridView ID="GvDatos" runat="server" data-sort="true" AutoGenerateColumns="False" DataKeyNames="CvePS,Serie,CveCliente,CveVendedor,CveMovimientoDetalleEntrada" EmptyDataText="No se encontraron datos con los filtros seleccionados" ToolTip="Listado de Movimientos" CssClass="Widthall table table-striped table-hover ScrollAD" GridLines="None">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Producto" DataField="GPO" />
|
||||
<asp:BoundField HeaderText="Fecha" DataField="FechaMovto" DataFormatString="{0:d}" />
|
||||
@@ -175,5 +175,29 @@
|
||||
</div>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
|
||||
<script type="text/javascript">
|
||||
function LimitaCantidad(TxtCantidad, CantidadMaxima) {
|
||||
var Cantidad = 0;
|
||||
|
||||
if (TxtCantidad.value.includes('.')) {
|
||||
return;
|
||||
}
|
||||
if (TxtCantidad.value.includes(',')) {
|
||||
return;
|
||||
}
|
||||
|
||||
var regex = new RegExp("^[-+]?[0-9]+\.[0-9]+$");
|
||||
|
||||
if (TxtCantidad.value != '') {
|
||||
Cantidad = parseInt(TxtCantidad.value);
|
||||
}
|
||||
|
||||
if (Cantidad > CantidadMaxima) {
|
||||
TxtCantidad.value = FormatoNumero(CantidadMaxima, 0);
|
||||
} else {
|
||||
TxtCantidad.value = FormatoNumero(Cantidad, 0);;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</asp:Content>
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user