From 6482fa0ce95c3f5282ae3e13a040e3c5902a9429 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 20 Nov 2024 00:39:59 -0700 Subject: [PATCH 1/4] VYAa remision presupuestal Rep contratos y detalle --- Transportes/RepContratoDetalle.aspx | 7 ++ Transportes/RepContratoDetalle.aspx.vb | 167 +++++++++++++++---------- Transportes/RepContratos.aspx | 19 +-- Transportes/RepContratos.aspx.vb | 4 +- 4 files changed, 123 insertions(+), 74 deletions(-) diff --git a/Transportes/RepContratoDetalle.aspx b/Transportes/RepContratoDetalle.aspx index 4d1b16a83..04151d1a5 100644 --- a/Transportes/RepContratoDetalle.aspx +++ b/Transportes/RepContratoDetalle.aspx @@ -343,6 +343,13 @@ +
+ +
+ + +
+
diff --git a/Transportes/RepContratoDetalle.aspx.vb b/Transportes/RepContratoDetalle.aspx.vb index 74e695078..1f1950308 100644 --- a/Transportes/RepContratoDetalle.aspx.vb +++ b/Transportes/RepContratoDetalle.aspx.vb @@ -254,6 +254,8 @@ Partial Class RepContratoDetalle If CveVentaRemision > 0 Then DVFactura.Visible = True + ChkEsPresupuestal.Enabled = False + ChkEsPresupuestal.Checked = False End If End If @@ -326,6 +328,8 @@ Partial Class RepContratoDetalle HypRemision.Text = Contrato.Rows(0)("RemisionSerieFolio").ToString HypRemision.NavigateUrl = $"/Ventas/Ventas.aspx?CveVenta={ CveVentaRemision}" + ChkEsPresupuestal.Checked = Boolean.Parse(Contrato.Rows(0)("EsPresupuestal").ToString) + If Contrato.Rows(0)("RemisionSaldo").ToString.ToDecimal > 0 Then LblSaldo.Text = $"Saldo { Contrato.Rows(0)("RemisionSaldo").ToString.ToDecimal.ToString("###,###,###.00")}" Else @@ -449,22 +453,7 @@ Partial Class RepContratoDetalle End Sub - 'Protected Sub CargarArchivo(ByVal sender As Object, ByVal e As AjaxControlToolkit.AsyncFileUploadEventArgs) Handles AFU.UploadedComplete - ' If AFU.HasFile Then - - ' Dim UploadFolder As String = String.Format("{0}\Temp\", UsuarioActual.Empresa.Ruta) - ' UploadFolder.DirectoryExistsCreate() - ' Dim Extension As String = System.IO.Path.GetExtension(AFU.PostedFile.FileName) - - ' If File.Exists(String.Format("{0}{1}{2}", UploadFolder, UsuarioActual.CveUsuario.ToString, Extension)) Then File.Delete(String.Format("{0}{1}{2}", UploadFolder, UsuarioActual.CveUsuario.ToString, Extension)) - - ' AFU.SaveAs(UploadFolder & UsuarioActual.CveUsuario.ToString & Extension) - ' Session("FileUpload") = UploadFolder & UsuarioActual.CveUsuario.ToString & Extension - ' Session("FileExtension") = Extension - ' Session("FileFolder") = UploadFolder - ' End If - 'End Sub Protected Sub DownloadFile(ByVal sender As Object, ByVal e As EventArgs) Dim filePath As String = String.Format("{0}{1}", UsuarioActual.Empresa.Ruta, CType(sender, LinkButton).CommandArgument) Dim Archivo As New System.IO.FileInfo(filePath) @@ -526,16 +515,8 @@ Partial Class RepContratoDetalle BtnDescargar.Visible = True End If End Sub - 'Private Sub BtnDescargar_Click(sender As Object, e As EventArgs) Handles BtnDescargar.Click - ' Dim File As New FileInfo(ViewState("FUrl").ToString) - ' Dim Url As String = $"{ObtenerUrlCompleta()}Compras/PopUpVerFactura.aspx?ArchivoContrato={Encripta(File.FullName)}" - ' If File.Exists Then - ' RegistraScript($"window.open({Url}, ""_blank"");") - ' End If - 'End Sub - Public Function ObtenerUrlCompleta() As String Dim Solicitud As HttpRequest = HttpContext.Current.Request @@ -555,31 +536,7 @@ Partial Class RepContratoDetalle Return url End Function - 'Private Sub DescargaArchivo(urlArchivo As String) - ' Dim File As New FileInfo(urlArchivo) - - ' If File.Exists Then 'set appropriate headers - - ' Response.Clear() - ' Response.ClearHeaders() - ' Response.ClearContent() - ' Response.AddHeader("Content-Disposition", "inline; filename=" & TxtFolio.Text & $"{File.Extension}") - ' Response.AddHeader("Content-Length", File.Length.ToString()) - ' 'Response.ContentType = "text/plain" - ' Response.ContentType = "application/octet-stream" - ' Response.Flush() - ' ' Response.TransmitFile(File.FullName) - ' Response.WriteFile(File.FullName) - ' Response.End() - - ' Else - - ' Alert("Ocurrio un error al descargar el archivo", TipoMensaje.MsgAdvertencia, "window.close()") - - ' End If - - 'End Sub Protected Sub UpdateContrato(sender As Object, e As EventArgs) Dim ArchivoUpdate As String = "-1" @@ -597,7 +554,7 @@ Partial Class RepContratoDetalle If Not ObjContratos.UpdateContratos(CveContrato, TxtFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", - DdlSubProyecto.SelectedValue.ToEntero, -1, -1, -1, -1, ArchivoUpdate, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, -1, TxtImporte.Text.ToDecimal, + DdlSubProyecto.SelectedValue.ToEntero, -1, -1, -1, -1, ArchivoUpdate, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkEsPresupuestal.Checked, TxtAnticipo.Text.ToDecimal, -1, TxtImporte.Text.ToDecimal, DdlMoneda.SelectedValue.ToEntero, 0, CveContratoTipo:=CveContratoTipo, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CveContratosEstatus:=CveContratoEstatus, Observaciones:=TxtObservaciones.Text) Then ErrorProceso = True End If @@ -617,6 +574,24 @@ Partial Class RepContratoDetalle End If End If + If Not ErrorProceso AndAlso Not CveVentaRemision > 0 AndAlso ChkEsPresupuestal.Checked = False Then + 'CveVentaRemision + Dim ObsRemisionPartida As String = $"{DdlTipoAF.SelectedItem.Text}-{ TxtDescripcion.Text}-{TxtFolio.Text}" + + Dim Respuesta As New RespuestaFacturacion() + Dim CvePS As Integer = 907784 + Respuesta = GeneraRemision(CveContrato, ObsRemisionPartida, TxtImporte.Text.ToDecimal, CvePS, ObjContratos.IniciaTransacSQL, DdlSubProyecto.SelectedValue.ToEntero) + + If Respuesta.CveVenta > 0 Then + CveVentaRemision = Respuesta.CveVenta + 'SerieFolioRemision = Respuesta.SerieFolio + ErrorProceso = False + Else + ErrorProceso = True + Alert("se presento un error al generar la remisión", TipoMensaje.MsgAdvertencia) + End If + End If + If Not ErrorProceso Then ObjContratos.Commit() @@ -796,23 +771,7 @@ Partial Class RepContratoDetalle New ReportParameter("FechaImpresion", Date.Now.ToString("dd/MM/yyyy HH:mm:ss")), New ReportParameter("Usuario", UsuarioActual.Nombre) } - 'New ReportParameter("Folio", TxtFolio.Text), - ' New ReportParameter("Cliente", DdlClientes.SelectedText), - ' New ReportParameter("Servicio", TxtDescripcion.Text), - ' New ReportParameter("Observaciones", TxtObservaciones.Text), - ' New ReportParameter("Ubicacion", TxtUbicacion.Text), - ' New ReportParameter("FechaSalida", TxtFechaSalida.Text.ToDate.ToString("dd/MM/yyyy")), - ' New ReportParameter("FechaRegreso", TxtFechaRegreso.Text.ToDate.ToString("dd/MM/yyyy")), - ' New ReportParameter("CantidadPasajeros", TxtCantidadPasajeros.Text), - ' New ReportParameter("TipoAF", DdlTipoAF.SelectedItem.ToString()), - ' New ReportParameter("Pesos", Math.Round(TxtImporte.Text.ToDecimal, 2).ToString), - ' New ReportParameter("Moneda", DdlMoneda.SelectedItem.ToString), - ' New ReportParameter("Anticipo", Math.Round((TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal), 2).ToString), - ' New ReportParameter("Total", Math.Round((TxtImporte.Text.ToDecimal - (TxtAnticipo.Text.ToDecimal * TxtImporte.Text.ToDecimal)), 2).ToString), - ' New ReportParameter("DiaSalida", $"{TxtFechaSalida.Text.ToDate.Hour}:{TxtFechaSalida.Text.ToDate.Minute} "), - ' New ReportParameter("TelefonoEmpresa", TelefonoEmpresa), - ' New ReportParameter("FechaImpresion", Date.Now.ToString("dd/MM/yyyy HH:mm:ss")), - ' New ReportParameter("Usuario", UsuarioActual.Nombre) + ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos\Contrato.mrt", dtResult, params, NombreArchivo:=TxtFolio.Text) End Sub @@ -1114,7 +1073,85 @@ Partial Class RepContratoDetalle #End Region +#Region " R E M I S I O N " + Private Function GeneraRemision(CveContrato As Integer, ObsPartida As String, Importe As Decimal, CvePS As Integer, ByRef TransaccionSQL As SqlClient.SqlTransaction, CveSubProyecto As Integer) As RespuestaFacturacion + Dim Respuesta As New RespuestaFacturacion() + Dim CveRemisionGenerada As Integer = -1 + Dim ObjVentas As New ClsVentas(TransaccionSQL) + Dim ProcesoOK As Boolean = True + Dim CveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero + + Dim ObjFactura As Modelos.Factura = Modelos.Factura.CrearVentaNueva(UsuarioActual, CveSubProyecto, DdlClientes.SelectedValue.ToEntero, CveMoneda, "Rem") + + If ObjFactura IsNot Nothing AndAlso ProcesoOK Then + + ObjFactura.CveMoneda = CveMoneda + ObjFactura.CveContrato = CveContrato + ObjFactura.Observaciones = ObsPartida + ObjFactura.CveFormaPago33 = 20 ' por definir + If CveMoneda > 1 Then + ObjFactura.TipoCambio = GlobalTipoCambio(DateTime.Now).ToDecimal + End If + + Dim TmpDTMat As New DataTable + TmpDTMat.Columns.Add("Consec", GetType(Integer)) + TmpDTMat.Columns.Add("CvePS", GetType(Integer)) + TmpDTMat.Columns.Add("CveUM", GetType(Integer)) + TmpDTMat.Columns.Add("Cantidad", GetType(Integer)) + TmpDTMat.Columns.Add("PU", GetType(Decimal)) + TmpDTMat.Columns.Add("Lote", GetType(String)) + TmpDTMat.Columns.Add("FechaCaducidad", GetType(Date)) + TmpDTMat.Columns.Add("CveVentaDetalle", GetType(Integer)) + + Dim CantidadRegistro As Decimal = 1 + Dim PorcentajeIVA As Decimal = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyecto).FiltroPrimeroValor("IVA").ToDecimal + Dim SubTotal As Decimal = (Importe / (1D + PorcentajeIVA)) + Dim PU As Decimal = SubTotal + Dim Descuento As Decimal = 0 + Dim Obs As String = ObsPartida + + If CantidadRegistro > 0 Then + If ObjFactura.AgregarPS(CvePS, CantidadRegistro, PU, Descuento, Obs, CveSubProyecto:=CveSubProyecto, PorcentajeIVA:=PorcentajeIVA) Then + Dim drp As DataRow = TmpDTMat.NewRow + drp("CvePS") = CvePS + drp("Cantidad") = CantidadRegistro + drp("PU") = PU + TmpDTMat.Rows.Add(drp) + Else + Alert("Error al agregar producto", TipoMensaje.MsgAdvertencia) + ProcesoOK = False + End If + End If + + If ProcesoOK Then + ObjFactura.CalculaTotales() + Dim Resp As New Modelos.Factura.MMensajeFactura + Resp = ObjFactura.EmitirFactura(False, Transac:=TransaccionSQL) + + If Resp.CveVenta > 0 Then + Respuesta.CveVenta = Resp.CveVenta + Respuesta.SerieFolio = Resp.SerieFolio + Respuesta.dtdetalle = TmpDTMat + Else + ProcesoOK = False + End If + End If + Else + ProcesoOK = False + End If + Return Respuesta + + End Function + Friend Class RespuestaFacturacion + Public Property CveVenta As Integer = -1 + Public Property SerieFolio As String = "-1" + Public Property dtdetalle As DataTable = Nothing + Public Sub New() + + End Sub + End Class +#End Region End Class diff --git a/Transportes/RepContratos.aspx b/Transportes/RepContratos.aspx index 4878f656f..b1f82b7f8 100644 --- a/Transportes/RepContratos.aspx +++ b/Transportes/RepContratos.aspx @@ -257,14 +257,10 @@
- - <%----%> +
- - - - -
+ +
@@ -488,6 +484,15 @@
+ + +
+ +
+ +
+
+
diff --git a/Transportes/RepContratos.aspx.vb b/Transportes/RepContratos.aspx.vb index 3572a912e..2a132f422 100644 --- a/Transportes/RepContratos.aspx.vb +++ b/Transportes/RepContratos.aspx.vb @@ -137,7 +137,7 @@ Partial Class ListadoContratos Dim ObjFolios As New ClsGralFolios(ObjContratos.IniciaTransacSQL()) CveContrato = ObjContratos.AddContratos(LbFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDateTime, TxtFechaRegreso.Text.ToDateTime, TxtUbicacion.Text, "", - DdlSubProyectoModal.SelectedValue.ToEntero, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, -1, TxtImporte.Text.ToDecimal, + DdlSubProyectoModal.SelectedValue.ToEntero, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ChkEsPresupuestal.Checked, TxtAnticipo.Text.ToDecimal, -1, TxtImporte.Text.ToDecimal, DdlMoneda.SelectedValue.ToEntero, 0, CveContratoTipo:=34, CveContratosEstatus:=50, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CantidadPasajeros:=TxtCantidadPasajeros.Text.ToEntero, Observaciones:=TxtObservaciones.Text, CveVendedor:=UsuarioActual.CveVendedor) @@ -180,7 +180,7 @@ Partial Class ListadoContratos End If Anexo.Text = "" - If ErrorProceso = False Then + If ErrorProceso = False AndAlso Not ChkEsPresupuestal.Checked Then Dim ObsRemisionPartida As String = $"{DdlTipoAF.SelectedItem.Text}-{ TxtDescripcion.Text}-{LbFolio.Text}" From a0072d59316fa6a10e63e6f0c33f866a4b6d444e Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 20 Nov 2024 12:04:40 -0700 Subject: [PATCH 2/4] Compras ajuste mensaje validacion Lote Fecha Caducidad --- Compras/Compras.aspx | 8 ++--- Compras/Compras.aspx.vb | 74 ++++++++++++++++++++++++++++++++--------- 2 files changed, 63 insertions(+), 19 deletions(-) diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index 0a205a1e2..925554a71 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -1306,7 +1306,7 @@ - <%--0--%> @@ -1342,7 +1342,7 @@ <%--3--%> - + <%--4--%> <%--5--%> @@ -1382,8 +1382,8 @@ - - + <%-- + --%> diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index e71797684..7355670af 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -12,10 +12,10 @@ Imports Extensiones Imports MoreLinq Imports System.Data.SqlClient Imports ClsPaginas -Imports System.Activities.Expressions -Imports Microsoft.Data.Edm.Expressions -Imports Telerik.Web.UI -Imports DocumentFormat.OpenXml.Math +Imports Microsoft.Owin.Security.Provider + + + Partial Class Compras_Compras Inherits ClsPaginas @@ -4315,7 +4315,9 @@ Partial Class Compras_Compras Exit Sub End If - + If Not ValidaLoteFechaCaducidad() Then + Exit Sub + End If Dim TotalRealDevolucion As Decimal = 0 @@ -5735,8 +5737,8 @@ Partial Class Compras_Compras Dim Lote As String = Dr("Lote").ToString Dim FechaCaducidad As Date = If(Dr("FechaCaducidad").ToString.ToDate <= MinFecha, MinFecha, Dr("FechaCaducidad").ToString.ToDate) - Dim AplicaLote As Boolean = Boolean.Parse(Dr("AplicaLote").ToString) - Dim AplicaCaducidad As Boolean = Boolean.Parse(Dr("AplicaCaducidad").ToString) + Dim AplicaLote As Boolean = If(Dr("AplicaLote").ToString.Trim = "", False, Boolean.Parse(Dr("AplicaLote").ToString)) + Dim AplicaCaducidad As Boolean = If(Dr("AplicaCaducidad").ToString.Trim = "", False, Boolean.Parse(Dr("AplicaCaducidad").ToString)) Dim CodigoPS As String = Dr("CodigoPS").ToString If Dr("CveMetodoInventario").ToString.ToEntero = 5 Then @@ -5747,7 +5749,7 @@ Partial Class Compras_Compras Dim fechaDetalle As Date = drr("FechaCaducidad").ToString.ToDate - If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, 1, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=drr("Serie").ToString, FechaCaducidad:=drr("FechaCaducidad").ToString.ToDate, CostoIndirecto:=Dr("CostoIndirectoAlmacen").ToString.ToDecimal, CveCompraDetalle:=Dr("CveCompraDetalle").ToString.ToEntero, CveOrdenCompraDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero, Lote:=Lote) Then + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, 1, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, -1, Serie:=drr("Serie").ToString, FechaCaducidad:=drr("FechaCaducidad").ToString.ToDate, CostoIndirecto:=Dr("CostoIndirectoAlmacen").ToString.ToDecimal, CveCompraDetalle:=Dr("CveCompraDetalle").ToString.ToEntero, CveOrdenCompraDetalle:=Dr("CveOrdenCompraDetalle").ToString.ToEntero) Then ErrorMovInv = True Exit For End If @@ -5777,12 +5779,12 @@ Partial Class Compras_Compras If AplicaLote And Lote.Trim = "" Then ErrorMovInv = True - Alert($"Porducto {CodigoPS} requiere Lote.") + Alert($"Porducto {CodigoPS} requiere Lote.", TipoMensaje.MsgAdvertencia) Exit For End If - If AplicaCaducidad And FechaCaducidad = MinFecha And Lote.Trim = "" Then + If AplicaCaducidad And FechaCaducidad <= MinFecha Then ErrorMovInv = True - Alert($"Porducto {CodigoPS} requiere fecha de caducidad.") + Alert($"Porducto {CodigoPS} requiere fecha de caducidad.", TipoMensaje.MsgAdvertencia) Exit For End If @@ -8026,6 +8028,45 @@ Partial Class Compras_Compras End Function + Private Function ValidaLoteFechaCaducidad() As Boolean + Dim Respuesta As Boolean = True + Dim sbErrores As New StringBuilder + If UsuarioActual.Empresa.UsaInventarios AndAlso DdlTipoCompra.SelectedValue <> "13" Then 'And UsuarioActual.Empresa.UsaAC = False + For Each gvRow As GridViewRow In GvInv.Rows + Dim Chk As CheckBox = gvRow.FCCheckBox("cbInv") + + If Chk.Checked Then + + Dim Ps As String = gvRow.DataKey("PS") + Dim AplicaLote As Boolean = If(gvRow.DataKey("AplicaLote").Trim = "", False, Boolean.Parse(gvRow.DataKey("AplicaLote"))) + Dim AplicaCaducidad As Boolean = If(gvRow.DataKey("AplicaCaducidad").Trim = "", False, Boolean.Parse(gvRow.DataKey("AplicaCaducidad"))) + Dim Lote As String = gvRow.FCTextBox("TxtLote").Text + Dim FechaCaducidad As Date = gvRow.FCTextBox("TxtCaducidad").Text.ToDate + + If AplicaLote AndAlso Lote.Trim = String.Empty Then + sbErrores.Append($"Producto {Ps} requiere Lote.
") + Respuesta = False + End If + + If AplicaCaducidad AndAlso (FechaCaducidad <= MinFecha) Then + sbErrores.Append($"Producto {Ps} requiere Fecha de Caducidad.
") + Respuesta = False + End If + + End If + + Next + End If + + If Not Respuesta Then + Alert($"Los siguientes productos requieren que se les especifique Lote o Fecha de Caducidad.
{sbErrores.ToString}", TipoMensaje.MsgAdvertencia) + End If + + + Return Respuesta + + End Function + Private Function AjustaCombustibles() As Boolean Dim Respuesta As Boolean = False @@ -11093,6 +11134,9 @@ Partial Class Compras_Compras If dRow("UUIDRow").ToString.Trim = "" Then dRow("UUIDRow") = Guid.NewGuid().ToString() End If + Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero + dRow("AplicaLote") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) + dRow("AplicaCaducidad") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) Next TmpDT.AcceptChanges() @@ -11106,9 +11150,9 @@ Partial Class Compras_Compras For Each dRow As DataRow In DtInv.Rows - Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero - Dim AplicaLote As Boolean = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) - Dim AplicaCaducidad As Boolean = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + 'Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero + Dim AplicaLote As Boolean = Boolean.Parse(dRow("AplicaLote").ToString) 'Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) + Dim AplicaCaducidad As Boolean = Boolean.Parse(dRow("AplicaCaducidad").ToString) 'Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) GvInv.Columns(7).Visible = AplicaLote GvInv.Columns(8).Visible = AplicaCaducidad @@ -21852,7 +21896,7 @@ Partial Class Compras_Compras - + End Class From 79e50a87784dc336a7937db7bf301bec63ccc201 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 20 Nov 2024 15:50:56 -0700 Subject: [PATCH 3/4] =?UTF-8?q?Correci=C3=B3n=20Compras=20Aplica=20Lote=20?= =?UTF-8?q?ps=20no=20encontrado,=20Vya=20Contrato=20Contrato=20detalle=20m?= =?UTF-8?q?ensajes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/Compras.aspx.vb | 21 +++++++++++++++++---- Transportes/RepContratoDetalle.aspx.vb | 15 ++++++++++++--- Transportes/RepContratos.aspx.vb | 8 +++++++- 3 files changed, 36 insertions(+), 8 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 7355670af..3115445a3 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -11135,8 +11135,15 @@ Partial Class Compras_Compras dRow("UUIDRow") = Guid.NewGuid().ToString() End If Dim CvePS As Integer = dRow("CvePS").ToString.ToEntero - dRow("AplicaLote") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) - dRow("AplicaCaducidad") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + + dRow("AplicaLote") = False + dRow("AplicaCaducidad") = False + + If CvePS > 0 Then + dRow("AplicaLote") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) + dRow("AplicaCaducidad") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + End If + Next TmpDT.AcceptChanges() @@ -11229,8 +11236,14 @@ Partial Class Compras_Compras Dim CvePS As Integer = e.Row.DataKey("CvePS").ToEntero - Dim AplicaLote As Boolean = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) - Dim AplicaCaducidad As Boolean = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + Dim AplicaLote As Boolean = False + Dim AplicaCaducidad As Boolean = False + + If CvePS > 0 Then + AplicaLote = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) + AplicaCaducidad = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + End If + If AplicaLote Then e.Row.FCTextBox("TxtLote").Visible = True diff --git a/Transportes/RepContratoDetalle.aspx.vb b/Transportes/RepContratoDetalle.aspx.vb index 1f1950308..a48b2d8b4 100644 --- a/Transportes/RepContratoDetalle.aspx.vb +++ b/Transportes/RepContratoDetalle.aspx.vb @@ -541,6 +541,8 @@ Partial Class RepContratoDetalle Protected Sub UpdateContrato(sender As Object, e As EventArgs) Dim ArchivoUpdate As String = "-1" Dim ErrorProceso As Boolean = False + Dim SeGeneroRemision As Boolean = False + Dim SerieFolioRemision As String = "" If Session("FileExtension").ToString <> "" Then 'ArchivoUpdate = $"{CveContrato.ToString}.{ Session("FileExtension")}" @@ -584,8 +586,9 @@ Partial Class RepContratoDetalle If Respuesta.CveVenta > 0 Then CveVentaRemision = Respuesta.CveVenta - 'SerieFolioRemision = Respuesta.SerieFolio + SerieFolioRemision = Respuesta.SerieFolio ErrorProceso = False + SeGeneroRemision = True Else ErrorProceso = True Alert("se presento un error al generar la remisión", TipoMensaje.MsgAdvertencia) @@ -593,10 +596,16 @@ Partial Class RepContratoDetalle End If If Not ErrorProceso Then - ObjContratos.Commit() AgregarABitacora($"Actualización del contrato {CveContrato}") - Alert("Contrato actualizado correctamente") + + If SeGeneroRemision Then + Alert($"Contrato actualizado correctamente..
Remisión Generada {SerieFolioRemision}", TipoMensaje.MsgInformacion, "window.location.reload();") + Else + Alert("Contrato actualizado correctamente", TipoMensaje.MsgInformacion, "window.location.reload();") + End If + + Else Alert("Ocurrió un ocurrió un error al actualizar su boleto", TipoMensaje.MsgError) ObjContratos.RollBack() diff --git a/Transportes/RepContratos.aspx.vb b/Transportes/RepContratos.aspx.vb index 2a132f422..754c713f5 100644 --- a/Transportes/RepContratos.aspx.vb +++ b/Transportes/RepContratos.aspx.vb @@ -211,7 +211,13 @@ Partial Class ListadoContratos If Not ErrorProceso Then ObjContratos.Commit() - Alert($"Agregado Correctamente.
Remisión Generada {SerieFolioRemision}") + + If CveVentaRemision > 0 Then + Alert($"Agregado Correctamente.
Remisión Generada {SerieFolioRemision}") + Else + Alert($"Agregado Correctamente") + End If + Else ObjContratos.RollBack() Alert("Se presento un error al guardar el contrato.", TipoMensaje.MsgAdvertencia) From 6ce42e33282c9e005cc8f8f9df3a37d1ded2ebd1 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Wed, 20 Nov 2024 16:55:29 -0700 Subject: [PATCH 4/4] Compras validacion aplica Aplica Lote y aplica Fecha de caducidad --- Compras/Compras.aspx.vb | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 3115445a3..77875fccb 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -11140,8 +11140,13 @@ Partial Class Compras_Compras dRow("AplicaCaducidad") = False If CvePS > 0 Then - dRow("AplicaLote") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) - dRow("AplicaCaducidad") = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + Dim drPS As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimero($"CvePS={CvePS}") + If drPS IsNot Nothing Then + dRow("AplicaLote") = If(drPS("AplicaLote").ToString = "", False, Boolean.Parse(drPS("AplicaLote").ToString)) + dRow("AplicaCaducidad") = If(drPS("AplicaCaducidad").ToString = "", False, Boolean.Parse(drPS("AplicaCaducidad").ToString)) + 'Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + End If + End If Next @@ -11240,8 +11245,11 @@ Partial Class Compras_Compras Dim AplicaCaducidad As Boolean = False If CvePS > 0 Then - AplicaLote = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) - AplicaCaducidad = Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + Dim drPS As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimero($"CvePS={CvePS}") + If drPS IsNot Nothing Then + AplicaLote = If(drPS("AplicaLote").ToString = "", False, Boolean.Parse(drPS("AplicaLote").ToString)) 'Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaLote", $"CvePS={CvePS}")) + AplicaCaducidad = If(drPS("AplicaCaducidad").ToString = "", False, Boolean.Parse(drPS("AplicaCaducidad").ToString)) 'Boolean.Parse(GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("AplicaCaducidad", $"CvePS={CvePS}")) + End If End If @@ -11330,7 +11338,7 @@ Partial Class Compras_Compras e.Row.FCDropDownList("ddlAlmacenConsignacion").SelectedValueExist(e.Row.DBCampo("CveAlmacenConsignacion")) End If ''CARGA CONSIGNACIONES - e.Row.FCDropDownList("DdlVinculaConsignacion").DataSource = DtConsignaciones.FiltraParametros(String.Format("CveAlmacenSalida = {0} OR {0} = '-1'", e.Row.FCDropDownList("ddlAlmacenConsignacion").SelectedValue)) + e.Row.FCDropDownList("DdlVinculaConsignacion").DataSource = DtConsignaciones.FiltraParametros(String.Format("CveAlmacenSalida = {0} Or {0} = '-1'", e.Row.FCDropDownList("ddlAlmacenConsignacion").SelectedValue)) e.Row.FCDropDownList("DdlVinculaConsignacion").DataBind() e.Row.FCDropDownList("DdlVinculaConsignacion").Items.Insert(0, New ListItem("Seleccione", "-1"))