From 1a5d6c1e1b57c9d0a6b97b2caffb290bd0d2a64e Mon Sep 17 00:00:00 2001 From: rrene Date: Mon, 21 Apr 2025 12:39:18 -0700 Subject: [PATCH] =?UTF-8?q?--activaci=C3=B3n=20de=20lote/caducidad=20en=20?= =?UTF-8?q?armado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Inventarios/PaquetesArmadoDesarmado.aspx.vb | 76 ++++++--------------- 1 file changed, 19 insertions(+), 57 deletions(-) diff --git a/Inventarios/PaquetesArmadoDesarmado.aspx.vb b/Inventarios/PaquetesArmadoDesarmado.aspx.vb index 30f4d5d8d..ea9f75b27 100644 --- a/Inventarios/PaquetesArmadoDesarmado.aspx.vb +++ b/Inventarios/PaquetesArmadoDesarmado.aspx.vb @@ -200,7 +200,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Private Sub InicializaValores() CreaDtSeriesDesarmado() - 'CARGA PS PAQUETES DdlPaqueteArmado.DataSource = GlobalDTPS(UsuarioActual.CveEmpresa).FiltraParametros("CvePSPaquete > 0") DdlPaqueteArmado.DataBind() @@ -278,9 +277,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Dim ObjProductosServicios As New ClsProductosServicios DtDatosArmado = New DataTable - Dim drP As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPaqueteArmado.SelectedValue.ToEntero).FiltroPrimero("") + Dim drP As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=DdlPaqueteArmado.SelectedValue.ToEntero).FiltroPrimero("") - Dim CveUMTemp As Integer = drP("CveUM").ToString.ToEntero + Dim CveUMTemp As Integer = drP("CveUnidadMedida").ToString.ToEntero If ObjProductosServicios.GetPaqueteDetalle(DdlPaqueteArmado.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, CveUMTemp, TxtCantidadArmado.Text.ToDouble, DdlAlmacenArmado.SelectedValue.ToEntero, TxtFechaArmado.Text.ToDate, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente)) Then DtDatosArmado = ObjProductosServicios.DtResultados.FiltraParametros("CveTipoPS = 2").Copy Else @@ -296,7 +295,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado CveVendedor = If(RowApartadosArmado.Visible, DdlVendedorArmado.SelectedValue.ToEntero, -1) CveCliente = If(RowClienteArmado.Visible, DdlClienteArmado.SelectedValue.ToEntero, -1) - If DtDatosArmado.Rows.Count > 0 Then For Each Dr As DataRow In DtDatosArmado.Rows Dr("Cantidad") = Dr("Cantidad").ToString.ToDecimal * TxtCantidadArmado.Text.ToDecimal @@ -323,8 +321,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado End If - - If AplicaSeriePaquete Or AplicaLotePaquete Or AplicaCaducidadPaquete Then DivSeriesPaqueteArmado.Visible = True Dim Dt As New DataTable @@ -403,10 +399,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado GvSeriesPaqueteDesarmado.DataBind() BtnAgregarSerieDesarmado.Enabled = True + Dim drP As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=DdlPaqueteDesarmado.SelectedValue.ToEntero).FiltroPrimero("") - Dim drP As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPaqueteDesarmado.SelectedValue.ToEntero).FiltroPrimero("") - - Dim CveUMTemp As Integer = drP("CveUM").ToString.ToEntero + Dim CveUMTemp As Integer = drP("CveUnidadMedida").ToString.ToEntero CveVendedor = If(RowApartadosDesarmado.Visible, DdlVendedorDesarmado.SelectedValue.ToEntero, -1) CveCliente = If(RowClienteDesarmado.Visible, DdlClienteDesarmado.SelectedValue.ToEntero, -1) Dim FechaFin As String = TxtFechaDesarmado.Text.ToDateTime.ToString("yyyy/MM/dd 23:59") @@ -506,7 +501,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Alert("No hay ningun registro para generar el movimiento. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) Exit Sub End If - Guardar(1) End Sub @@ -568,7 +562,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Alert("Es necesario ingresas todos las fechas de caducidad de los componentes.", TipoMensaje.MsgAdvertencia) Exit Sub End If - End If Else @@ -580,23 +573,17 @@ Partial Class Inventarios_PaquetesArmadoDesarmado End If If gvr.DataKey("AplicaCaducidad") = "True" Then - If gvr.FCTextBox("TxtCaducidad").Text.ToDate <= MinFecha Then Alert("Es necesario ingresas todos las fechas de caducidad de los componentes.", TipoMensaje.MsgAdvertencia) Exit Sub End If - End If End If - - - Next Case 2 ' DESARMADO For Each gvr As GridViewRow In GvDatosDesarmado.Rows If gvr.DataKey("AplicaSerie") = "True" Then - 'If gvr.DataKey("AplicaSerie") = "True" Then ' 'If gvr.DataKey("Cantidad").ToEntero <> DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec"))).Rows.Count Then ' ' Alert("Es necesario ingresas todas las series de los componentes.", TipoMensaje.MsgAdvertencia) @@ -619,15 +606,11 @@ Partial Class Inventarios_PaquetesArmadoDesarmado End If If gvr.DataKey("AplicaCaducidad") = "True" Then - If gvr.FCTextBox("TxtCaducidad").Text.ToDate <= MinFecha Then Alert("Es necesario ingresas todos las fechas de caducidad de los componentes.", TipoMensaje.MsgAdvertencia) Exit Sub End If - End If - - Next End Select @@ -683,26 +666,20 @@ Partial Class Inventarios_PaquetesArmadoDesarmado For Each GvRow As GridViewRow In GvDatosArmado.Rows - FechaCaducidad = If(CBool(GvRow.DataKey("AplicaCaducidad")) AndAlso GvRow.FCTextBox("TxtCaducidad").ToString().ToDate > MinFecha, GvRow.FCTextBox("TxtCaducidad").Text.ToDate, MinFecha) + FechaCaducidad = If(CBool(GvRow.DataKey("AplicaCaducidad")) AndAlso GvRow.FCTextBox("TxtCaducidad").Text.ToDate > MinFecha, GvRow.FCTextBox("TxtCaducidad").Text.ToDate, MinFecha) Lote = If(CBool(GvRow.DataKey("AplicaLote")), GvRow.FCTextBox("TxtLote").Text.Trim, "-1") - If UsuarioActual.Empresa.Funcionalidad(578).ToEntero = 1 Then - - Dim DdlCaducidadProducto As DropDownList = GvRow.FCDropDownList("DdlCaducidadProducto") - Dim ArrayCaducidad As String() = DdlCaducidadProducto.SelectedValue.Split("|"c) + If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then + Dim ArrayCaducidad As String() = GvRow.FCDropDownList("DdlCaducidadProducto").SelectedValue.Split("|"c) Lote = ArrayCaducidad(0) FechaCaducidad = ArrayCaducidad(1).ToDate - End If Dim Existencia As Decimal = ObjInventarioVal.GetExistenciasPS(GvRow.DataKey("CvePS").ToEntero, GvRow.DataKey("CveUM").ToEntero, UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenArmado.SelectedValue.ToEntero(), FechaMovto:=TxtFechaArmado.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:="-1", Lote:=Lote, FechaCaducidad:=FechaCaducidad) - If GvRow.DataKey("Cantidad").ToDecimal > Existencia Then TieneErrorExistencia = True - TextoError.AppendFormat(" - {0} Existencia: {1:#,##0.##}
", GvRow.DataKey("CodigoPS"), Existencia) - End If ''If Dr("CantidadGV").ToString().ToDecimal > 0 Then @@ -758,16 +735,10 @@ Partial Class Inventarios_PaquetesArmadoDesarmado RegistraScript("playsonidito('142608__autistic-lucario__error.wav')") Exit Sub End If - End If - - - - Dim ObjInventario As New ClsInventarios Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL()) - Dim TieneError As Boolean = False Dim MensajeError As String = "" @@ -801,13 +772,10 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Dim Lote As String = If(Gvr.FCTextBox("TxtLote").Text = "", "-1", Gvr.FCTextBox("TxtLote").Text) Dim FechaCaducidad As String = If(Gvr.FCTextBox("TxtCaducidad").Text = "", "-1", Gvr.FCTextBox("TxtCaducidad").Text) - If UsuarioActual.Empresa.Funcionalidad(578).ToEntero = 1 Then - - Dim DdlCaducidadProducto As DropDownList = Gvr.FCDropDownList("DdlCaducidadProducto") - Dim ArrayCaducidad As String() = DdlCaducidadProducto.SelectedValue.Split("|"c) + If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then + Dim ArrayCaducidad As String() = Gvr.FCDropDownList("DdlCaducidadProducto").SelectedValue.Split("|"c) Lote = ArrayCaducidad(0) FechaCaducidad = ArrayCaducidad(1) - End If Dim CveSeccionAlmacen As Integer = Gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero() @@ -826,11 +794,7 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Exit For End If Next - - If TieneError Then - Exit For - End If - + If TieneError Then Exit For Else If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Gvr.DataKey("Cantidad").ToString.ToDecimal, Gvr.DataKey("CveUM").ToString.ToEntero, Gvr.DataKey("CvePS").ToString.ToEntero, 0, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote, @@ -860,16 +824,15 @@ Partial Class Inventarios_PaquetesArmadoDesarmado PUTemp = PUTemp / TxtCantidadArmado.Text.ToDecimal Dim CvePSTemp = CvePaqueteArmado Dim CveSeccionAlmacen As Integer = -1 - Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteArmado).FiltroPrimero("") + Dim Drp As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteArmado).FiltroPrimero("") - Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero + Dim CveUMTemp As Integer = Drp("CveUnidadMedida").ToString.ToEntero Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion")) If AplicaSeccion Then CveSeccionAlmacen = GlobalDTInvPSSeccionesAlmacen(UsuarioActual.CveEmpresa, CveAlmacenArmado, CvePaqueteArmado).FiltroPrimeroValor("CveSeccionAlmacen").ToEntero End If - - If AplicaSeriePaquete Then + If AplicaSeriePaquete Or AplicaLotePaquete Or AplicaCaducidadPaquete Then Dim ContadorPaquete = 1 Dim DtSeriesComponentes As New DataTable For Each Gvr As GridViewRow In GvSeriesPaqueteArmado.Rows @@ -900,7 +863,6 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Next End If Next - ContadorPaquete = ContadorPaquete + 1 Next Else @@ -934,7 +896,7 @@ Partial Class Inventarios_PaquetesArmadoDesarmado Dim CvePSTemp As Integer = CvePaqueteDesarmado Dim CveSeccionAlmacen As Integer = -1 - Dim Drp As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimero("") + Dim Drp As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimero("") Dim CveUMTemp As Integer = Drp("CveUM").ToString.ToEntero 'Dim AplicaSeccion As Boolean = CBool(Drp("AplicaSeccion")) @@ -1070,9 +1032,9 @@ Partial Class Inventarios_PaquetesArmadoDesarmado If Not TieneError Then Dim Msg As New StringBuilder - Msg.AppendFormat("
El Movimiento de salida se registro con el Folio: {1}", CveMovimientoSalida, FolioSalida) + Msg.AppendFormat("
El Movimiento de salida se registro con el Folio: {1}", CveMovimientoSalida, FolioSalida) Msg.AppendFormat("
Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalida))) - Msg.AppendFormat("


El Movimiento de entrada se registro con el Folio: {1}", CveMovimientoEntrada, FolioEntrada) + Msg.AppendFormat("

El Movimiento de entrada se registro con el Folio: {1}", CveMovimientoEntrada, FolioEntrada) Msg.AppendFormat("
Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoEntrada))) Alert(Msg.ToString, TipoMensaje.MsgInformacion) ObjInventario.Commit() @@ -1659,8 +1621,8 @@ Partial Class Inventarios_PaquetesArmadoDesarmado End If Dim AplicaCaducidad = False - If GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSSerieLote).FiltraParametros("").Rows(0) IsNot Nothing Then - AplicaCaducidad = If(GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSSerieLote).FiltraParametros("").Rows(0)("AplicaCaducidad").ToString = "True", True, False) + If GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePSSerieLote).FiltraParametros("").Rows(0) IsNot Nothing Then + AplicaCaducidad = If(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePSSerieLote).FiltraParametros("").Rows(0)("AplicaCaducidad").ToString = "True", True, False) End If Row("ConsecId") = CveConsecSerieLote @@ -1754,7 +1716,7 @@ Partial Class Inventarios_PaquetesArmadoDesarmado 'VERIFICA EXISTENCIAS Dim ObjInventarios As New ClsInventarios - Dim CveUMTemp = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimeroValor("CveUM").ToEntero + Dim CveUMTemp = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePaqueteDesarmado).FiltroPrimeroValor("CveUM").ToEntero Dim Existencia = ObjInventarios.GetExistenciasPS(CvePaqueteDesarmado, CveUMTemp, UsuarioActual.CveEmpresa, CveAlmacenDesarmado, FechaMovto:=TxtFechaDesarmado.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), Serie:=Serie, CveVendedor:=CveVendedor, CveCliente:=If(UsuarioActual.Empresa.Funcionalidad(146) = "1", -1, CveCliente), Lote:=Lote, FechaCaducidad:=FechaCaducidad)