From b76acf49a5e4eb9f7888abea2c7aede67d37a9ef Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 4 Mar 2024 19:17:59 -0700 Subject: [PATCH 1/8] Ferretera. Sincronizar marcas --- App_Code/ClsProductosServicios.vb | 7 +++-- General/CatMarcas.aspx.vb | 49 +++++++++++++++++++++---------- 2 files changed, 39 insertions(+), 17 deletions(-) diff --git a/App_Code/ClsProductosServicios.vb b/App_Code/ClsProductosServicios.vb index 5fcda2cf9..fa3deb688 100644 --- a/App_Code/ClsProductosServicios.vb +++ b/App_Code/ClsProductosServicios.vb @@ -1545,7 +1545,7 @@ Public Class ClsProductosServicios - Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean + Public Function AddMarcas(Marca As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer, Optional ActualizarFranquicias As Boolean = False) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Gral_MarcasAdd") @@ -1555,6 +1555,7 @@ Public Class ClsProductosServicios .Add("@Estatus", SqlDbType.Bit).Value = Estatus .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@ActualizarFranquicias", SqlDbType.Bit).Value = ActualizarFranquicias End With Try @@ -1597,7 +1598,7 @@ Public Class ClsProductosServicios - Public Function UpdateMarca(Marca As String, CveMarca As Integer, Estatus As Boolean) As Boolean + Public Function UpdateMarca(Marca As String, CveMarca As Integer, Estatus As Boolean, CveEmpresa As Integer, Optional ActualizarFranquicias As Boolean = False) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Gral_MarcasUpdate") @@ -1605,6 +1606,8 @@ Public Class ClsProductosServicios .Add("@Marca", SqlDbType.VarChar).Value = Marca .Add("@CveMarca", SqlDbType.Int).Value = CveMarca .Add("@Estatus", SqlDbType.Bit).Value = Estatus + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@ActualizarFranquicias", SqlDbType.Bit).Value = ActualizarFranquicias End With Try diff --git a/General/CatMarcas.aspx.vb b/General/CatMarcas.aspx.vb index ec1df2c15..4537b919b 100644 --- a/General/CatMarcas.aspx.vb +++ b/General/CatMarcas.aspx.vb @@ -62,23 +62,42 @@ Partial Class General_CatMarcas DivEstatus.Visible = False UpModal.Update() RegistraScript("$('#DModalMarca').modal()") End Sub Protected Sub BtnGuardar_Click(sender As Object, e As EventArgs) - Dim ObjPS As New ClsProductosServicios - If Modalidad = "A" Then - If ObjPS.AddMarcas(TxtMarca.Text, True, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then - RegistraScript("$('#DModalMarca').modal('hide')") - Alert("La Marca se agregó correctamente.", TipoMensaje.MsgInformacion) - CargaDatos() - GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing - End If - ElseIf Modalidad = "U" Then - If ObjPS.UpdateMarca(TxtMarca.Text, CveMarca, ChkEstatus.Checked) Then - RegistraScript("$('#DModalMarca').modal('hide')") - Alert("La Marca se actualizo correctamente.", TipoMensaje.MsgInformacion) - CargaDatos() - GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing - End If + Dim ActualizarFranquicias As Boolean = False + + If UsuarioActual.Empresa.Funcionalidad(563) <> "" AndAlso UsuarioActual.Empresa.Funcionalidad(109) = "1" Then + ActualizarFranquicias = True End If + + Dim ObjPS As New ClsProductosServicios + ObjPS.IniciaTransacSQL() + + Dim TieneError As Boolean = False + Try + If Modalidad = "A" Then + If Not ObjPS.AddMarcas(TxtMarca.Text, True, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, ActualizarFranquicias:=ActualizarFranquicias) Then + TieneError = True + End If + ElseIf Modalidad = "U" Then + If Not ObjPS.UpdateMarca(TxtMarca.Text, CveMarca, ChkEstatus.Checked, UsuarioActual.CveEmpresa, ActualizarFranquicias:=ActualizarFranquicias) Then + TieneError = True + End If + End If + Catch ex As Exception + TieneError = True + End Try + + If TieneError Then + ObjPS.RollBack() + Else + ObjPS.Commit() + End If + ObjPS.Dispose() + + GlobalDTGralMarcas(UsuarioActual.CveEmpresa) = Nothing + CargaDatos() + + RegistraScript("$('#DModalMarca').modal('hide')") End Sub #End Region From b63ce5381564fc4a34fc52be393c5b3368da382c Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 4 Mar 2024 20:10:32 -0700 Subject: [PATCH 2/8] Ferretera. cambios en la generacion de codigo de barras. --- Compras/PopUpVerFactura.aspx.vb | 98 +++++++++++++++++++++++++++++++ Ventas/ProductosServicios.aspx.vb | 11 +++- 2 files changed, 107 insertions(+), 2 deletions(-) diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index 2e73e1c62..fd3c9db42 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -10,6 +10,7 @@ Imports iText.Barcodes.Dmcode Imports Microsoft.Reporting.WebForms Imports Modelos Imports Stimulsoft.Base.Context +Imports ZXing Partial Class PopUpVerFactura @@ -6039,6 +6040,13 @@ Partial Class PopUpVerFactura ObjVentas.Dispose() If DtPrecios IsNot Nothing Then + + DtPrecios.Columns.Add(New DataColumn("CBBase64", GetType(String))) + + For Each Row As DataRow In DtPrecios.Rows + Row("CBBase64") = Convert.ToBase64String(GeneraCodigoQR(Row("CodigoBarras").ToString(), 40, 150, 0, "CODE_39", True)) + Next + Dim DirectorioArchivo As String = "Empresas/Grales/Formatos/Etiqueta.mrt" If System.IO.File.Exists(UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt") Then DirectorioArchivo = UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt" @@ -6153,4 +6161,94 @@ Partial Class PopUpVerFactura #End Region + + Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String, Optional PureBacode As Boolean = False) As Byte() + + Dim barcodeWriter As New BarcodeWriter + Dim opciones As New ZXing.Common.EncodingOptions + Dim FormatoBar As New BarcodeFormat + 'Dim Respuesta As Byte() + + opciones.Height = Alto + opciones.Width = Largo + opciones.Margin = Margen + opciones.PureBarcode = PureBacode + barcodeWriter.Options = opciones + + Select Case Formato + Case "All_1D" + barcodeWriter.Format = BarcodeFormat.All_1D + Exit Select + Case "AZTEC" + barcodeWriter.Format = BarcodeFormat.AZTEC + Exit Select + Case "CODABAR" + barcodeWriter.Format = BarcodeFormat.CODABAR + Exit Select + Case "CODE_128" + barcodeWriter.Format = BarcodeFormat.CODE_128 + Exit Select + Case "CODE_39" + barcodeWriter.Format = BarcodeFormat.CODE_39 + Exit Select + Case "CODE_93" + barcodeWriter.Format = BarcodeFormat.CODE_93 + Exit Select + Case "DATA_MATRIX" + barcodeWriter.Format = BarcodeFormat.DATA_MATRIX + Exit Select + Case "EAN_13" + barcodeWriter.Format = BarcodeFormat.EAN_13 + Exit Select + Case "EAN_8" + barcodeWriter.Format = BarcodeFormat.EAN_8 + Exit Select + Case "IMB" + barcodeWriter.Format = BarcodeFormat.IMB + Exit Select + Case "ITF" + barcodeWriter.Format = BarcodeFormat.ITF + Exit Select + Case "MAXICODE" + barcodeWriter.Format = BarcodeFormat.MAXICODE + Exit Select + Case "MSI" + barcodeWriter.Format = BarcodeFormat.MSI + Exit Select + Case "PDF_417" + barcodeWriter.Format = BarcodeFormat.PDF_417 + Exit Select + Case "PLESSEY" + barcodeWriter.Format = BarcodeFormat.PLESSEY + Exit Select + Case "QR_CODE" + barcodeWriter.Format = BarcodeFormat.QR_CODE + Exit Select + Case "RSS_14" + barcodeWriter.Format = BarcodeFormat.RSS_14 + Exit Select + Case "RSS_EXPANDED" + barcodeWriter.Format = BarcodeFormat.RSS_EXPANDED + Exit Select + Case "UPC_A" + barcodeWriter.Format = BarcodeFormat.UPC_A + Exit Select + Case "UPC_E" + barcodeWriter.Format = BarcodeFormat.UPC_E + Exit Select + Case "UPC_EAN_EXTENSION" + barcodeWriter.Format = BarcodeFormat.UPC_EAN_EXTENSION + Exit Select + + End Select + + Dim imgCod As Drawing.Bitmap = barcodeWriter.Write(CodigoBarras) + Dim memoriStream As New System.IO.MemoryStream + imgCod.Save(memoriStream, Drawing.Imaging.ImageFormat.Bmp) + + 'Respuesta = Convert.ToBase64String(memoriStream.ToArray()) + + Return memoriStream.ToArray() + + End Function End Class diff --git a/Ventas/ProductosServicios.aspx.vb b/Ventas/ProductosServicios.aspx.vb index 8294ff03c..1721e2c10 100644 --- a/Ventas/ProductosServicios.aspx.vb +++ b/Ventas/ProductosServicios.aspx.vb @@ -2208,7 +2208,7 @@ Partial Class ProductosyServicios #Region "Codigo Barras" 'Codigo barras/QR se retorna como una imagen bmp - Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String) As Byte() + Private Function GeneraCodigoQR(CodigoBarras As String, Alto As Integer, Largo As Integer, Margen As Integer, Formato As String, Optional PureBacode As Boolean = False) As Byte() Dim barcodeWriter As New BarcodeWriter Dim opciones As New ZXing.Common.EncodingOptions @@ -2218,7 +2218,7 @@ Partial Class ProductosyServicios opciones.Height = Alto opciones.Width = Largo opciones.Margin = Margen - + opciones.PureBarcode = PureBacode barcodeWriter.Options = opciones Select Case Formato @@ -3582,6 +3582,13 @@ Partial Class ProductosyServicios ObjVentas.Dispose() If DtPrecios IsNot Nothing Then + + DtPrecios.Columns.Add(New DataColumn("CBBase64", GetType(String))) + + For Each Row As DataRow In DtPrecios.Rows + Row("CBBase64") = Convert.ToBase64String(GeneraCodigoQR(Row("CodigoBarras").ToString(), 40, 150, 0, "CODE_39", True)) + Next + Dim DirectorioArchivo As String = "Empresas/Grales/Formatos/Etiqueta.mrt" If System.IO.File.Exists(UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt") Then DirectorioArchivo = UsuarioActual.Empresa.Ruta + "Formatos/Etiqueta.mrt" From 33cac7e4c160c71f4c6736542cf9cb90f6105b2a Mon Sep 17 00:00:00 2001 From: AbrahamCastilloV Date: Tue, 5 Mar 2024 08:13:30 -0700 Subject: [PATCH 3/8] =?UTF-8?q?--Implementaci=C3=B3n=20de=20carga=20y=20de?= =?UTF-8?q?scarga=20de=20pdfs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App_Code/ClsContratos.vb | 8 +-- Transportes/RepContratoDetalle.aspx | 39 ++++++++----- Transportes/RepContratoDetalle.aspx.vb | 76 +++++++++++++++++++------- Transportes/RepViajes.aspx.vb | 26 ++------- 4 files changed, 91 insertions(+), 58 deletions(-) diff --git a/App_Code/ClsContratos.vb b/App_Code/ClsContratos.vb index 4846346b8..6a8fe4e01 100644 --- a/App_Code/ClsContratos.vb +++ b/App_Code/ClsContratos.vb @@ -420,7 +420,7 @@ Public Class ClsContratos Public Function UpdateContratos(CveContrato As Integer, NumeroContrato As String, DescripcionContrato As String, NumeroLicitacion As String, CveProveedor As Integer, CveCliente As Integer, CveProspecto As Integer, FechaInicial As DateTime, FechaFinal As DateTime, Ubicacion As String, Responsable As String, CveSubProyecto As Integer, PorIVA As Double, PorAnticipo As Double, PorAmortizacionAnticipo As Double, PorGarantia As Double, Archivo As String, Geom As String, CveContratoPadre As Integer, CveUsuario As Integer, CveEmpresa As Integer, EsPresupuestal As Boolean, Minimo As Double, Maximo As Double, Importe As Double, CveMoneda As Integer, ModalidadDetalle As Integer, - Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = 1.0, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1, + Optional CveContratosEstatus As Integer = -1, Optional CveContratoTipo As Integer = -1, Optional TipoCambio As Double = -1, Optional CveSucursalCliente As Integer = -1, Optional CveAlmacenOrigen As Integer = -1, Optional CveAlmacenDestino As Integer = -1, Optional PorcentajeComision As Integer = -1, Optional TipoGarantia As Integer = -1, Optional Folio As Integer = -1, Optional FechaVenc As Date = Nothing, Optional EstatusFianza As Integer = -1, Optional CveContratoPlantilla As Integer = -1, Optional CveCuentaEquipo As Integer = -1, Optional CveVendedor As Integer = -1, Optional Observaciones As String = "", Optional CveDireccionEnvio As Integer = -1, Optional AplicaImpuestosLocales As Boolean = False, Optional CorreoNotificacionPedDev As String = "", Optional FacturacionCicilica As Boolean = False, Optional FacturacionCiclicaAutomatico As Boolean = False, Optional DiaMesFacturacion As Integer = 1, Optional CvePeriodo As Integer = -1, Optional ObservacionesGenerales As String = "", Optional CveTipoAF As Integer = Nothing, Optional CveChofer As Integer = Nothing, Optional CveChofer2 As Integer = Nothing, Optional CveAF As Integer = Nothing, Optional CantidadPasajeros As Integer = Nothing, Optional CvePartida As Integer = Nothing, Optional CveDestino As Integer = Nothing, Optional CveMasivo As Integer = Nothing) As Boolean @@ -450,8 +450,8 @@ Public Class ClsContratos .Add("@CveContratoPadre", SqlDbType.Int).Value = CveContratoPadre .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa - .Add("@EsPresupuestal", SqlDbType.Int).Value = EsPresupuestal - .Add("@CveContratoTipo", SqlDbType.SmallInt).Value = CveContratoTipo + .Add("@EsPresupuestal", SqlDbType.Bit).Value = EsPresupuestal + .Add("@CveContratoTipo", SqlDbType.Int).Value = CveContratoTipo .Add("@ImporteMin", SqlDbType.Money).Value = Minimo .Add("@ImporteMax", SqlDbType.Money).Value = Maximo .Add("@Importe", SqlDbType.Money).Value = Importe @@ -471,7 +471,7 @@ Public Class ClsContratos .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor .Add("@Observaciones", SqlDbType.VarChar).Value = Observaciones .Add("@CveDireccionEnvio", SqlDbType.Int).Value = CveDireccionEnvio - .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = If(AplicaImpuestosLocales, 1, 0) + .Add("@AplicaImpuestosLocales", SqlDbType.Bit).Value = AplicaImpuestosLocales .Add("@CorreoNotificacionPedDev", SqlDbType.VarChar).Value = CorreoNotificacionPedDev .Add("@FacturacionCicilica", SqlDbType.Bit).Value = FacturacionCicilica .Add("@FacturacionCiclicaAutomatico", SqlDbType.Bit).Value = FacturacionCiclicaAutomatico diff --git a/Transportes/RepContratoDetalle.aspx b/Transportes/RepContratoDetalle.aspx index 895ad85c7..4e6d9163e 100644 --- a/Transportes/RepContratoDetalle.aspx +++ b/Transportes/RepContratoDetalle.aspx @@ -114,7 +114,7 @@
- +
@@ -273,16 +273,26 @@
- Descargar - - - +
+
+ + + + Descargar + + + + + + + + + +
+
@@ -400,7 +410,7 @@
<%-- Datos del Boleto --%>
- +
@@ -851,9 +861,10 @@ diff --git a/Transportes/RepContratoDetalle.aspx.vb b/Transportes/RepContratoDetalle.aspx.vb index 99b9d0e52..75150f974 100644 --- a/Transportes/RepContratoDetalle.aspx.vb +++ b/Transportes/RepContratoDetalle.aspx.vb @@ -19,6 +19,14 @@ Partial Class RepContratoDetalle ViewState("CveContrato") = value End Set End Property + Private Property ArchivoUpdate As String + Get + Return ViewState("ArchivoUpdate").ToString + End Get + Set(value As String) + ViewState("ArchivoUpdate") = value + End Set + End Property Private Property CveContratoTipo As Integer Get Return CType(ViewState("CveContratoTipo"), Integer) @@ -27,6 +35,14 @@ Partial Class RepContratoDetalle ViewState("CveContratoTipo") = value End Set End Property + Private Property CveContratoEstatus As Integer + Get + Return CType(ViewState("CveContratoEstatus"), Integer) + End Get + Set(value As Integer) + ViewState("CveContratoEstatus") = value + End Set + End Property Private Property CveMasivo As Integer Get Return CType(ViewState("CveMasivo"), Integer) @@ -88,6 +104,8 @@ Partial Class RepContratoDetalle CargaDatos() AsientoSeleccionado = "" CveViajePasajero = 0 + Session("FileExtension") = "" + ArchivoUpdate = "" End If End Sub @@ -95,7 +113,7 @@ Partial Class RepContratoDetalle 'Lista Tipo AF DdlTipoAF.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa) DdlTipoAF.DataBind() - DdlTipoAF.Items.Insert(0, New ListItem("-", "")) + DdlTipoAF.Items.Insert(0, New ListItem("-", "0")) End Sub Private Sub CargaDatos() 'Información General @@ -120,11 +138,14 @@ Partial Class RepContratoDetalle TxtDolares.Text = Contrato.Rows(0)("Importe").ToString TxtPesos.Text = Contrato.Rows(0)("ImporteMax").ToString TxtAnticipo.Text = Contrato.Rows(0)("ImporteMin").ToString - If Not String.IsNullOrEmpty(Contrato.Rows(0)("Archivo").ToString) Then - BtnDescargar.Visible = True - LbArchivo.Text = Contrato.Rows(0)("Archivo").ToString - LbArchivo.Visible = True + CveContratoEstatus = Contrato.Rows(0)("CveContratosEstatus").ToString.ToEntero + If Not IsDBNull(ObjContratos.Archivo) AndAlso ObjContratos.Archivo <> "" AndAlso ObjContratos.Archivo <> "-1" AndAlso ObjContratos.Archivo <> $"{ObjContratos.CveContrato}." Then ViewState("FUrl") = Path.Combine(UsuarioActual.Empresa.Ruta, "CONTRATOS", ObjContratos.Archivo) + 'A2.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=CONTRATO&CveEmpresa={0}&Archivo={1}", ObjContratos.CveEmpresa, ViewState("FUrl").ToString))) + BtnDescargar.Visible = True + Else + BtnDescargar.Visible = False + A1.Visible = True End If 'Boletos Vendidos If Contrato.Rows(0)("CveContratoTipo").ToString() = "35" Then @@ -144,12 +165,13 @@ Partial Class RepContratoDetalle Response.Redirect($"~/Transportes/RepContratos.aspx") End If ObjContratos.Dispose() + UpTabContainer.Update() End Sub #End Region #Region "Información General" - Protected Sub GuardarArchivo(sender As Object, e As EventArgs) + Protected Sub BtnGuardarArchivo_Click1(sender As Object, e As EventArgs) Handles BtnGuardarArchivo.Click Dim FileExtension As String = "-1" Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos Dim Filename As String = "" @@ -165,7 +187,7 @@ Partial Class RepContratoDetalle For Each fileItem As Archivo In Filesgral - FileExtension = IO.Path.GetExtension($"{AppDomain.CurrentDomain.BaseDirectory}Temp\{fileItem.filename}").Replace(".", "") + FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "") Session("FileExtension") = FileExtension Dim tempArray() As String tempArray = fileItem.filename.ToString().Split("-".ToCharArray()) @@ -180,15 +202,18 @@ Partial Class RepContratoDetalle 'ImgArchivo.Src = "/imagenes/accept.png" Next - UpTabContainer.Update() + UPAFUL.Update() + RegistraScript("$('#ModalUpload').modal('hide')", "hidemodal1") - Button1.Visible = True + A1.Visible = True If Not FileExtension = "-1" Then BtnDescargar.Visible = True End If - UpdateContrato(sender, e) End Sub - Protected Sub DescargarArchivo(sender As Object, e As EventArgs) + Private Sub BtnDescargar_Click(sender As Object, e As EventArgs) Handles BtnDescargar.Click + DescargarArchivo() + End Sub + Private Sub DescargarArchivo() Dim File As New FileInfo(ViewState("FUrl").ToString) If File.Exists Then 'set appropriate headers @@ -212,18 +237,25 @@ Partial Class RepContratoDetalle End If 'nothing in the URL as HTTP GET End Sub Protected Sub UpdateContrato(sender As Object, e As EventArgs) + Dim ArchivoUpdate As String = "-1" + + If Session("FileExtension").ToString <> "" Then + ArchivoUpdate = "." & Session("FileExtension").ToString + Else + End If + Dim ObjContratos As New ClsContratos + ObjContratos.IniciaTransacSQL() Try - If ObjContratos.UpdateContratos(CveContrato, LbFolio.Text, TxtDescripcion.Text, "", -1, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", LbCveSubProyecto.Text.ToEntero, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, -1, -1) Then + 'ObjContratos.AddContratos(LbFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", 10, -1, -1, -1, -1, LbArchivo.Text, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, DdlMoneda.SelectedValue.ToEntero, 0, CveContratoTipo:=34, CveContratosEstatus:=50, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CantidadPasajeros:=TxtCantidadPasajeros.Text.ToEntero, Observaciones:=TxtObservaciones.Text) + If ObjContratos.UpdateContratos(CveContrato, LbFolio.Text, TxtDescripcion.Text, "", UsuarioActual.CveProveedor, DdlClientes.SelectedValue.ToEntero, -1, TxtFechaSalida.Text.ToDate, TxtFechaRegreso.Text.ToDate, TxtUbicacion.Text, "", LbCveSubProyecto.Text.ToEntero, -1, -1, -1, -1, ArchivoUpdate, "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, TxtAnticipo.Text.ToDecimal, TxtPesos.Text.ToDecimal, TxtDolares.Text.ToDecimal, -1, 0, CveContratoTipo:=CveContratoTipo, CveTipoAF:=DdlTipoAF.SelectedValue.ToEntero, CveContratosEstatus:=CveContratoEstatus) Then Alert("Contrato actualizado correctamente") End If ObjContratos.Commit() - Catch ex As Exception - Alert($"Ocurrió un ocurrió un error al actualizar su boleto", TipoMensaje.MsgError) + Alert("Ocurrió un ocurrió un error al actualizar su boleto", TipoMensaje.MsgError) ObjContratos.RollBack() Finally - Alert("Contrato actualizado correctamente") ObjContratos.Dispose() CargaDatos() End Try @@ -270,7 +302,7 @@ Partial Class RepContratoDetalle AsientoSeleccionado = buttonID TxtAsiento.Text = buttonID.Substring(1) - UpBoletos.Update() + UpTabContainer.Update() RegistraScript(String.Format("$('#{0}').modal('show');", "ModalEditar")) End Sub Protected Sub UpdateBoleto(sender As Object, e As EventArgs) @@ -295,8 +327,12 @@ Partial Class RepContratoDetalle Finally Alert("Su asiento fue actualizado correctamente") ObjTransportes.Dispose() - CargaDatos() + End Try + RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalEditar")) + UpTabContainer.Update() + UpPasajeros.Update() + CargaDatos() End Sub Protected Sub OnChangeRuta(sender As Object, e As EventArgs) Dim ObjTransportes As New ClsTransportes @@ -363,7 +399,6 @@ Partial Class RepContratoDetalle End Sub Protected Sub CambiarBoleto(sender As Object, e As EventArgs) - DdlRuta.ClearSelection() PnEditarViaje.Visible = True PnEditarUsuario.Visible = False Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) @@ -387,14 +422,15 @@ Partial Class RepContratoDetalle If ObjContratos.GetContratosReporte(UsuarioActual.CveEmpresa, MinFecha, MaxFecha, -1, CveEstatus:=-1, CveTipoContrato:=35) Then For Each row As DataRow In ObjContratos.DtResultados.Rows Dim fecha As DateTime = row("FechaInicial").ToString.ToDateTime - ' Asigna los valores de la columna deseada al ListItem + 'Asigna los valores de la columna deseada al ListItem Dim listItem As New ListItem(row("SubProyecto").ToString() + " - " + fecha.ToShortDateString + " - " + fecha.ToShortTimeString, row("CveContrato").ToString()) - ' Agrega el ListItem al DropDownList + 'Agrega el ListItem al DropDownList DdlRuta.Items.Add(listItem) Next End If DdlRuta.SelectedValue = GvRow.DataKey("CveViaje") ObjContratos.Dispose() + UpTabContainer.Update() RegistraScript(String.Format("$('#{0}').modal('show');", "ModalEditar")) End Sub Protected Sub BtnCancelar_Click(sender As Object, e As EventArgs) diff --git a/Transportes/RepViajes.aspx.vb b/Transportes/RepViajes.aspx.vb index d7983b520..069d08ef9 100644 --- a/Transportes/RepViajes.aspx.vb +++ b/Transportes/RepViajes.aspx.vb @@ -1,8 +1,8 @@ Option Explicit On Option Strict On Imports System.Data +Imports Extensiones Imports Extensiones.ModExtensiones - Partial Class ListadoViajes Inherits ClsPaginas @@ -24,6 +24,8 @@ Partial Class ListadoViajes End Set End Property #End Region + +#Region "Carga Página" Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then @@ -38,18 +40,7 @@ Partial Class ListadoViajes DdlRutas.DataBind() Dim ObjRutas As New ClsTransportes() - 'If ObjRutas.GetRutas(-1, -1, -1, "", True, DateTime.Now) Then - ' If ObjRutas.DtResultados.Rows.Count > 0 Then - ' DdlRutas.DataSource = ObjRutas.DtResultados - ' DdlRutas.DataBind() - ' DdlRutas.Items.Insert(0, New ListItem("Seleccione Ruta", "")) - ' End If - 'End If - 'DdlRutas.DataSource = ObjRutas.DtResultados - ' DdlRutas.DataBind() - ' DdlRutas.Items.Insert(0, New ListItem("Seleccione Ruta", "")) - 'Lista Destinos' If ObjRutas.GetDestinos() Then If ObjRutas.DtResultados.Rows.Count > 0 Then @@ -73,17 +64,12 @@ Partial Class ListadoViajes End If ObjContratos.Dispose() GvContratos.DataBind() - 'If ObjContratos.GetContratos(-1, UsuarioActual.CveEmpresa, TipoContrato:=35) Then - ' GvContratos.DataSource = ObjContratos.DtResultados - ' GvContratos.DataBind() - 'End If End Sub - +#End Region Private Sub LBAgregarViaje_Click(sender As Object, e As EventArgs) Handles LBAgregarViaje.Click MostrarModal() End Sub - Public Sub MostrarModal() 'Generar Folio Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero @@ -104,7 +90,6 @@ Partial Class ListadoViajes RegistraScript(String.Format("$('#{0}').modal('show');", "ModalAgregar")) End Sub - Protected Sub AddViaje(sender As Object, e As EventArgs) 'Generador de Viajes Masivos Dim CveSubProyecto As Integer = DdlRutas.SelectedValue.ToEntero 'GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero @@ -140,6 +125,7 @@ Partial Class ListadoViajes ObjContratos.Commit() End If 'Actualizamos Folio + ObjFolio.IniciaTransacSQL() If ObjFolio.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then ObjFolio.Dispose() End If @@ -183,6 +169,7 @@ Partial Class ListadoViajes TxtFechaViaje.Text = "" 'Actualizamos Folio Dim ObjFolios As New ClsGralFolios + ObjFolios.IniciaTransacSQL() If ObjFolios.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then ObjFolios.Dispose() End If @@ -192,7 +179,6 @@ Partial Class ListadoViajes End Try End If End Sub - Protected Sub ToggleMasivo(sender As Object, e As EventArgs) DivFechaMasivo.Visible = IsMasivo.Checked RegistraScript(String.Format("$('#{0}').modal('show');", "ModalAgregar")) From b59061dc843f0996d5e0788b086d7edede090485 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Tue, 5 Mar 2024 13:18:49 -0700 Subject: [PATCH 4/8] EMD - Mejoras Propuestas - Sayri, pendiente verificar correo --- Compras/Compras.aspx | 18 ++++++- Compras/Compras.aspx.vb | 66 ++++++++++++++++++++++++ OC/OC.aspx | 109 +++++++++++++++++++++++++++++++++++++++- OC/OC.aspx.vb | 103 +++++++++++++++++++++++++++++++++++++ 4 files changed, 294 insertions(+), 2 deletions(-) diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index 7ab6aed8c..7fcdf4e14 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -921,7 +921,23 @@ -
+
+ + + + +
+
+ + Atención! + El Proveedor tiene Saldo a favor pendiente por aplicar +
+
+
+
+ + +
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 032328419..2bb05d1a2 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -714,6 +714,18 @@ Partial Class Compras_Compras ViewState("CveMetodoPago") = value End Set End Property + + Private Property MetodoPagoOC As Integer + Get + If ViewState("MetodoPagoOC") Is Nothing Then + ViewState("MetodoPagoOC") = -1 + End If + Return ViewState("MetodoPagoOC").ToString.ToEntero + End Get + Set(value As Integer) + ViewState("MetodoPagoOC") = value + End Set + End Property Private Property TipoCambio As Decimal Get Return ViewState("TipoCambio").ToString.ToDecimal @@ -1018,6 +1030,20 @@ Partial Class Compras_Compras End Set End Property + Private Property CveIEAnticipo As Integer + Get + If ViewState("CveIEAnticipo") Is Nothing Then + ViewState("CveIEAnticipo") = -1 + End If + Return ViewState("CveIEAnticipo").ToString.ToEntero + End Get + Set(value As Integer) + ViewState("CveIEAnticipo") = value + End Set + End Property + + + Public Property FechaCompraOriginal As Date Get Return ViewState("FechaCompraOriginal").ToString.ToDate @@ -3967,6 +3993,11 @@ Partial Class Compras_Compras '------------------ INICIA VALIDACIONES ------------------ + If MetodoPagoOC = 0 AndAlso RBLPago.SelectedValue.ToEntero <> 2 Then + Alert("La orden de compra se definió de contado, favor de especificar la compra de contado.", TipoMensaje.MsgAdvertencia) + Exit Sub + End If + Dim CveSubProyectoPrincipal As Integer = AsignarSubProyectoPrincipal() If Not CveSubProyectoPrincipal > 0 Then @@ -13656,6 +13687,7 @@ Partial Class Compras_Compras CargaOC() End Sub Private Sub CargaOC() + MetodoPagoOC = -1 Dim EntregaDirecta As Integer = 0 DivOCSolicitudAnticipo.Visible = False DivOCSolicitudAnticipoModal.Visible = False @@ -13694,6 +13726,7 @@ Partial Class Compras_Compras HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString) HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString) EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0) + MetodoPagoOC = OC.DtResultados.Rows(0)("EntregaDirecta").ToString.ToEntero End If End If Next @@ -13709,6 +13742,7 @@ Partial Class Compras_Compras HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString) HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString) EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0) + MetodoPagoOC = OC.DtResultados.Rows(0)("EntregaDirecta").ToString.ToEntero End If End If Next @@ -13751,7 +13785,9 @@ Partial Class Compras_Compras Protected Sub BtnVOC_Click(sender As Object, e As EventArgs) VinculaOC() End Sub + Private Sub VinculaOC() + CveIEAnticipo = -1 If TxtOC.Text <> "" Then 'VARIABLES @@ -13798,6 +13834,7 @@ Partial Class Compras_Compras If ObjOC.DtResultados.Rows(0)("CveIEAnticipo").ToString.ToEntero > 0 Then FoliosOCAnticipo += $"{ObjOC.DtResultados.Rows(0)("FolioOC").ToString}," FoliosOCAnticipoIE += $"{ObjOC.DtResultados.Rows(0)("FolioIEAnticipo").ToString}," + CveIEAnticipo = ObjOC.DtResultados.Rows(0)("CveIEAnticipo").ToString.ToEntero DivOCSolicitudAnticipo.Visible = True DivOCSolicitudAnticipoModal.Visible = True End If @@ -13889,6 +13926,9 @@ Partial Class Compras_Compras If DivOCSolicitudAnticipo.Visible And FoliosOCAnticipo.Length > 0 Then LtSolicitudAnticipoFoliosOC.Text = $"La(s) siguiente(s) OC: {FoliosOCAnticipo.Substring(0, FoliosOCAnticipo.Length - 1)}. tienen vinculado un anticipo" LtSolicitudAnticipoFoliosIE.Text = $" {FoliosOCAnticipoIE.Substring(0, FoliosOCAnticipoIE.Length - 1)}" + + DVAtencionOCAnticipo.Visible = True + UpDVAtencionOCAnticipo.Update() End If 'PROMOCIONES @@ -14436,13 +14476,39 @@ Partial Class Compras_Compras 'ANTICIPO OC If DivOCSolicitudAnticipo.Visible Then + + If CveIEAnticipo > 0 Then + DVAtencionOCAnticipo.Visible = True + UpDVAtencionOCAnticipo.Update() + End If + + Dim scripsSeccion As String = "" + For Each gvRow As GridViewRow In GVAnticipos.Rows + If gvRow.DataKey("CveIE").ToEntero = CveIEAnticipo Then + Dim Chk As CheckBox = gvRow.FCCheckBox("Chk") + scripsSeccion = scripsSeccion & $"$('#{Chk.ClientID}').click();" + 'RegistraScript($"$('#{Chk.ClientID}').click();", "100") + End If + Next + RegistraScript("MuestraAnticipos();", "MuestaAnticiposOC") + RegistraScript(" + setTimeout(function() { + " & scripsSeccion & " + }, 200) + ") UpAnticipos.Update() + End If CalculaTotales() CompraEstaVinculadaOC = True + + If MetodoPagoOC = 0 AndAlso RBLPago.SelectedValue.ToEntero <> 2 Then + Alert("La orden de compra se definió de contado, favor de especificar la compra de contado.", TipoMensaje.MsgAdvertencia) + End If + End Sub Private Sub VinculacionAsync(Optional VinculacionCompleta As Boolean = False) diff --git a/OC/OC.aspx b/OC/OC.aspx index eaf90f554..a0f785195 100644 --- a/OC/OC.aspx +++ b/OC/OC.aspx @@ -455,7 +455,7 @@ Método de pago: - + @@ -1563,6 +1563,89 @@
+ + + +
+ + + +
+
+
+ + Anticipos +
+
+ +
+
+
+ +
+ +
+
+ + + + + + % + +
+
+
+
+ +
+
+ + + + + + $ + +
+ +
+
+
+
+
+
+ +
+ + + +
+
+
+ +
+ +
+
+
+ +
+ + + + + + +
+
+
+ + +
@@ -2912,10 +2995,34 @@ $('#<%= TxtSAImPorcentaje.ClientID%>').val(FormatoNumero(importe, 2).replace(/,/g, "")); }); + + <%--$('#<%= TxtSAImPorcentajeContado.ClientID%>').keyup(function () { + console.log($(this).val()); + var importe = (ToDouble($(this).val()) / 100) * ToDouble($get("LblTotal").value.replace(/,/g, '')); + $('#<%= TxtSAImporteContado.ClientID%>').val( FormatoNumero(importe, 2).replace(/,/g, "") ); + }); + $('#<%= TxtSAImporteContado.ClientID%>').keyup(function () { + var importe = (100 * ToDouble($(this).val())) / ToDouble($get("LblTotal").value.replace(/,/g, "")); + $('#<%= TxtSAImPorcentajeContado.ClientID%>').val(FormatoNumero(importe, 2).replace(/,/g, "")); + });--%> + + + $get('HdnWidth').value = $("#DivConceptosContenido").width(); }); + + function SAImPorcentajeContadokeyup() { + var importe = (ToDouble($('#TxtSAImPorcentajeContado').val()) / 100) * ToDouble($get("LblTotal").value.replace(/,/g, '')); + $('#TxtSAImporteContado').val(FormatoNumero(importe, 2).replace(/,/g, "")); + } + + function SAImporteContadokeyup() { + var importe = (100 * ToDouble($('#TxtSAImporteContado').val())) / ToDouble($get("LblTotal").value.replace(/,/g, "")); + $('#TxtSAImPorcentajeContado%>').val(FormatoNumero(importe, 2).replace(/,/g, "")); + } + function showDivEC(CveCotizacion) { $('#<%=TxtMotivoEliminacion.ClientID%>').val(""); $('#divEliminarCotizacion').modal(); diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index ad8408dbc..5f11e2541 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -2,6 +2,7 @@ Option Strict On Imports System.Data +Imports System.Data.SqlClient Imports System.IO Imports Extensiones Imports GemBox.Spreadsheet @@ -2820,6 +2821,15 @@ Partial Class OC_OC End If + If Not TieneError AndAlso DdlMetodoPago.SelectedValue.ToEntero = 0 AndAlso TipoOC = "OC" Then + + If Not GeneraAnticpoContado(CveOrdenCompra, OC.IniciaTransacSQL()) Then + TieneError = True + End If + + End If + + If Not TieneError Then If Conta IsNot Nothing Then Conta.Commit() OC.Commit() @@ -3207,6 +3217,15 @@ Partial Class OC_OC + + 'If Not TieneError AndAlso DdlMetodoPago.SelectedValue.ToEntero = 0 AndAlso TipoOC = "OC" Then + + ' If Not GeneraAnticpoContado(CveOrdenCompra, OC.IniciaTransacSQL()) Then + ' TieneError = True + ' End If + + 'End If + 'COMMIT If Not TieneError Then 'If MonedaTexto <> DdlMoneda.SelectedItem.Text Then @@ -3258,6 +3277,9 @@ Partial Class OC_OC End If End If + + + 'TERMINA TODO POR SI OCURRIÓ ALGO RARO If TieneError Then If OC IsNot Nothing Then OC.RollBack() @@ -5379,7 +5401,12 @@ Partial Class OC_OC End Sub Private Sub EnviaCorreoSolicitudAnticipo(CveEvento As Integer) Dim Param As New List(Of String) + Dim DtPara As DataTable = GlobalDTUsuarios(DdlSAUsuario.SelectedValue.ToString.ToEntero, CveEmpresaActual) + If DdlMetodoPago.SelectedValue.ToEntero = 0 Then + DtPara = GlobalDTUsuarios(DdlSAUsuarioContado.SelectedValue.ToString.ToEntero, CveEmpresaActual) + End If + Param.Add(DtPara.Rows(0)("Correo").ToString()) 'Para Param.Add("Solicitud de anticipo de Orden de Compra") 'Asunto Param.Add(GeneraCorreoAnticipo(lblFolio.Text, DtPara.Rows(0)("Nombre").ToString(), String.Format("http://sig.adssistemas.mx/OI/EventoDetalle.aspx?CveTipoEvento=1&CveEvento={0}", CveEvento), TxtSAImporte.Text, DdlProveedores.SelectedText)) @@ -8846,4 +8873,80 @@ Partial Class OC_OC End Sub + + Protected Sub DdlMetodoPago_SelectedIndexChanged(sender As Object, e As EventArgs) + + DVAnticposContado.Visible = False + + If DdlMetodoPago.SelectedValue.ToEntero = 0 Then + DVAnticposContado.Visible = True + DdlSAUsuarioContado.DataSource = GlobalDTUsuarios(-1, CveEmpresaActual).FiltraParametros("CvePlataforma = 1", "Nombre") + DdlSAUsuarioContado.DataBind() + DdlSAUsuarioContado.Items.Insert(0, New ListItem("Seleccione", "-1")) + 'CargaAnticiposSolicitudesContado() + End If + + UpPanelDVAnticiposContado.Update() + End Sub + + + Protected Function GeneraAnticpoContado(CveOrdenCompraContado As Integer, ByRef transaccionSql As SqlTransaction) As Boolean + + Dim respuesta As Boolean = False + + If TxtSAImporteContado.Text.ToDecimal > LblTotal.Text.ToDecimal Then + Alert("El importe solicitado supera el saldo de la orden de compra", TipoMensaje.MsgAdvertencia) + Return False + End If + + Dim Descripcion As New StringBuilder + Descripcion.AppendFormat("Importe anticipo : ${0} ({1}%) - Pagar anticipo - Observacion: {2} ", TxtSAImporteContado.Text.FormatoNumero, TxtSAImPorcentajeContado.Text, CveOrdenCompraContado, TxtSAObservacionesContado.Text) + Descripcion.AppendFormat("Orden de compra : {0} - Ir a la orden de compra - Imprimir OC", Folio, CveOrdenCompraContado, Encripta(String.Format("OP=OC&CVEOC={0}", CveOrdenCompraContado))) + + + Dim Asunto As String = $"{lblFolio.Text} - Solicitud de anticipo " + Dim ObjOC As New ClsOC(transaccionSql) + Dim ObjOI As New ClsOIEventos(ObjOC.IniciaTransacSQL) + Dim TieneError As Boolean = False + + If ObjOI.AddEventoTarea(Asunto, Descripcion.ToString, 1, UsuarioActual.CveUsuario, DdlSAUsuarioContado.SelectedValue.ToString.ToEntero, NowADS(), NowADS().AddMinutes(15), -1, 1, -1, "-1", -1, -1, -1, -1, -1, CveOrdenCompraContado.ToEntero, -1, -1, UsuarioActual.CveUsuario, -1, CveEmpresaActual) Then + If Not ObjOC.AddSolicitudAnticipo(CveOrdenCompraContado, TxtSAImporteContado.Text.ToDecimal, CveEmpresaActual) Then + TieneError = True + End If + Else + TieneError = True + End If + + If Not ObjOI.AddEventoBitacora($"Solicitud de anticipo de orden de compra por ${TxtSAImporteContado.Text.FormatoNumero}", "-1", UsuarioActual.CveUsuario, CveEmpresaActual, CveOC:=CveOrdenCompraContado) Then + TieneError = True + End If + + If Not TieneError Then + EnviaCorreoSolicitudAnticipo(ObjOI.CveEvento) + 'LIMPIA + DdlSAUsuarioContado.SelectedValue = "-1" + TxtSAImporteContado.Text = "" + TxtSAObservacionesContado.Text = "" + TxtSAImPorcentajeContado.Text = "" + Alert("La solicitud de anticipo ha sido enviada correctamente.", TipoMensaje.MsgInformacion) + Else + Alert("Ocurrió un error al hacer la solicitud de anticipo.", TipoMensaje.MsgError) + End If + + + If TieneError Then + respuesta = False + Else + respuesta = True + End If + + Return respuesta + + End Function + + + + + End Class + From 07aca135316fb653a34926625fb1291fef470d3b Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 5 Mar 2024 14:34:55 -0700 Subject: [PATCH 5/8] Ferretera. Validacion de existencia, cambio de vigencia --- Inventarios/EntradasSalidas.aspx.vb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb index 9823c5e99..c89c8e8a7 100644 --- a/Inventarios/EntradasSalidas.aspx.vb +++ b/Inventarios/EntradasSalidas.aspx.vb @@ -4398,7 +4398,7 @@ Partial Class Inventarios_EntradasSalidas If Valido Then Dim CveClasificacion As Integer - Dim CveUM As Double + Dim CveUM As Integer Dim CodigoPS As String = "" Dim PS As String = "" @@ -4415,6 +4415,14 @@ Partial Class Inventarios_EntradasSalidas PS = dr("PS").ToString.ToString End If + Dim CantidadExistencia = GetExistencias(CvePS, CveUM, UsuarioActual.CveEmpresa, DdlAlmacenCambioVigencias.SelectedValue.ToEntero, CveSeccionAlmacen, Serie, Lote, Caducidad.ToDateTime()) + + If Cantidad > CantidadExistencia Then + Dim msg = $"El producto {PS} no tiene existencia. " + If(Serie.Length > 0, $"Serie: {Serie} ", "") + If(Lote.Length > 0, $"Lote: {Lote} ", "") + If(Caducidad.ToDateTime() > MinFecha, $"Caducidad: {Caducidad} ", "") + Alert(msg, TipoMensaje.MsgAdvertencia) + Exit Sub + End If + Dim registro As DataRow = DtMovimientosCambioVigencias.NewRow registro.Item("Cantidad") = Cantidad registro.Item("CveUM") = CveUM From 44f6d1415c4158cb78f23f660489ad052e6b5516 Mon Sep 17 00:00:00 2001 From: AbrahamCastilloV Date: Tue, 5 Mar 2024 16:39:24 -0700 Subject: [PATCH 6/8] --Se implementa rowdatabound para poder imprimir boletos --- Transportes/RepContratoDetalle.aspx | 3 ++- Transportes/RepContratoDetalle.aspx.vb | 13 ++++++++----- Transportes/RepViajes.aspx.vb | 10 ++++++---- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/Transportes/RepContratoDetalle.aspx b/Transportes/RepContratoDetalle.aspx index 4e6d9163e..8dd15d431 100644 --- a/Transportes/RepContratoDetalle.aspx +++ b/Transportes/RepContratoDetalle.aspx @@ -313,7 +313,8 @@ + data-sort="true" DataKeyNames="CveViajePasajero, CveViaje, CveDestinoFinal, CveVendedor, Importe, Asiento, Nombre, Visa, Celular, Observacion, Estatus, CveUsuario, FechaIng, Sexo, Partida, Destino, Vendedor, Agencia, TelefonoAgencia" + OnRowDataBound="GvViajesPasajeros_RowDataBound"> diff --git a/Transportes/RepContratoDetalle.aspx.vb b/Transportes/RepContratoDetalle.aspx.vb index 75150f974..38b93f235 100644 --- a/Transportes/RepContratoDetalle.aspx.vb +++ b/Transportes/RepContratoDetalle.aspx.vb @@ -369,6 +369,7 @@ Partial Class RepContratoDetalle ViajeActual = dt End Sub Protected Sub ImprimirBoleto(sender As Object, e As EventArgs) + Dim dtResult As New DataTable() Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) Dim Fecha As Date = GvRow.DataKey("FechaIng").ToDate @@ -385,15 +386,17 @@ Partial Class RepContratoDetalle New ReportParameter("Celular", GvRow.DataKey("Celular")), New ReportParameter("Importe", Math.Round(Importe, 1).ToString), New ReportParameter("TipoBoleto", "Tipo Boleto"), - New ReportParameter("Agencia", GvRow.DataKey("Agencia")), - New ReportParameter("TelefonoAgencia", GvRow.DataKey("TelefonoAgencia")), + New ReportParameter("Agencia", "Agencia"), + New ReportParameter("TelefonoAgencia", "TelefonoAgencia"), New ReportParameter("Asiento", GvRow.DataKey("Asiento")) } ImprimirPDFStimul($"{UsuarioActual.Empresa.Ruta}Formatos\Boleto.mrt", dtResult, params, NombreArchivo:="Boleto") - 'Empresas/Grales/Formatos/EntradaSalida.mrt - 'Empresas/188/Formatos/Boleto.mrt - + End Sub + Protected Sub GvViajesPasajeros_RowDataBound(sender As Object, e As GridViewRowEventArgs) + If e.Row.RowType = DataControlRowType.DataRow Then + ScriptManager.GetCurrent(Me).RegisterPostBackControl(e.Row.FCLinkButton("BtnImprimir")) + End If End Sub Protected Sub EditarBoleto(sender As Object, e As EventArgs) diff --git a/Transportes/RepViajes.aspx.vb b/Transportes/RepViajes.aspx.vb index 069d08ef9..b99816534 100644 --- a/Transportes/RepViajes.aspx.vb +++ b/Transportes/RepViajes.aspx.vb @@ -92,7 +92,7 @@ Partial Class ListadoViajes End Sub Protected Sub AddViaje(sender As Object, e As EventArgs) 'Generador de Viajes Masivos - Dim CveSubProyecto As Integer = DdlRutas.SelectedValue.ToEntero 'GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero + Dim CveSubProyecto As Integer = GlobalDTSubProyectos(-1, -1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", "TipoSucursal = 1").ToEntero If IsMasivo.Checked = True Then If TxtFechaInicial.Text = "" Or TxtFrecuencia.Text = "" Then Alert("Es necesario agregar la fecha inicial y la frecuencia", TipoMensaje.MsgAdvertencia) @@ -121,14 +121,15 @@ Partial Class ListadoViajes End If 'Agregamos contrato ObjContratos.IniciaTransacSQL() - If ObjContratos.AddContratos(LbFolio.Text, "", "", UsuarioActual.CveProveedor, -1, -1, fecha, fecha, "", "", CveSubProyecto, -1, -1, -1, -1, "", "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, -1, 0, CveContratoTipo:=35, CveContratosEstatus:=50, CvePartida:=DdlPartida.SelectedValue.ToEntero, CveDestino:=DdlDestino.SelectedValue.ToEntero, CveMasivo:=CveMasivo, CveVendedor:=UsuarioActual.CveVendedor) > 0 Then + If ObjContratos.AddContratos(LbFolio.Text, "", "", UsuarioActual.CveProveedor, -1, -1, fecha, fecha, "", "", DdlRutas.SelectedValue.ToEntero, -1, -1, -1, -1, "", "", -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, -1, 0, CveContratoTipo:=35, CveContratosEstatus:=50, CvePartida:=DdlPartida.SelectedValue.ToEntero, CveDestino:=DdlDestino.SelectedValue.ToEntero, CveMasivo:=CveMasivo, CveVendedor:=UsuarioActual.CveVendedor) > 0 Then ObjContratos.Commit() End If 'Actualizamos Folio ObjFolio.IniciaTransacSQL() If ObjFolio.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then - ObjFolio.Dispose() + ObjFolio.Commit() End If + ObjFolio.Dispose() Next Alert("Viajes Masivos generados correctamente.") Catch ex As Exception @@ -171,8 +172,9 @@ Partial Class ListadoViajes Dim ObjFolios As New ClsGralFolios ObjFolios.IniciaTransacSQL() If ObjFolios.UpdateFolioActual(CveSubProyecto, "Con", True, UsuarioActual.CveEmpresa) Then - ObjFolios.Dispose() + ObjFolios.Commit() End If + ObjFolios.Dispose() ObjContratos.Dispose() CargaDatos() From 50e68673413ada653d67b33cf0446b54ddc578b1 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Tue, 5 Mar 2024 16:45:16 -0700 Subject: [PATCH 7/8] FIX. -- Correcion de asignacion de variable "MetodoPagoOC" --- Compras/Compras.aspx.vb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 2bb05d1a2..163bd8c57 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -13726,7 +13726,7 @@ Partial Class Compras_Compras HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString) HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString) EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0) - MetodoPagoOC = OC.DtResultados.Rows(0)("EntregaDirecta").ToString.ToEntero + MetodoPagoOC = OC.DtResultados.Rows(0)("MetodoPagoOC").ToString.ToEntero End If End If Next @@ -13742,7 +13742,7 @@ Partial Class Compras_Compras HdnVCveOC.Value += String.Format("{0}{1}", If(HdnVCveOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveOrdenCompra").ToString) HdnCveEstatusOC.Value += String.Format("{0}{1}", If(HdnCveEstatusOC.Value <> "", ",", ""), OC.DtResultados.Rows(0)("CveEstatusSiguiente").ToString) EntregaDirecta += If(OC.DtResultados.Rows(0)("EntregaDirecta").ToString = "True", 1, 0) - MetodoPagoOC = OC.DtResultados.Rows(0)("EntregaDirecta").ToString.ToEntero + MetodoPagoOC = OC.DtResultados.Rows(0)("MetodoPagoOC").ToString.ToEntero End If End If Next From a16d48836c263ebf00bd51d6d8a9f05131c30128 Mon Sep 17 00:00:00 2001 From: rakcsle Date: Tue, 5 Mar 2024 19:54:53 -0700 Subject: [PATCH 8/8] Retro EMD - Mejoras Propuestas - Sayri --- Compras/Compras.aspx.vb | 6 +----- General/SaldosIniciales.aspx.vb | 3 ++- OC/OC.aspx | 18 +++++++++--------- OC/OC.aspx.vb | 13 ++++++++++--- 4 files changed, 22 insertions(+), 18 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 163bd8c57..3855b52f3 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -3998,6 +3998,7 @@ Partial Class Compras_Compras Exit Sub End If + Dim CveSubProyectoPrincipal As Integer = AsignarSubProyectoPrincipal() If Not CveSubProyectoPrincipal > 0 Then @@ -14504,11 +14505,6 @@ Partial Class Compras_Compras CalculaTotales() CompraEstaVinculadaOC = True - - If MetodoPagoOC = 0 AndAlso RBLPago.SelectedValue.ToEntero <> 2 Then - Alert("La orden de compra se definió de contado, favor de especificar la compra de contado.", TipoMensaje.MsgAdvertencia) - End If - End Sub Private Sub VinculacionAsync(Optional VinculacionCompleta As Boolean = False) diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb index 21187f697..51bc19045 100644 --- a/General/SaldosIniciales.aspx.vb +++ b/General/SaldosIniciales.aspx.vb @@ -2502,7 +2502,8 @@ Partial Class General_SaldosIniciales For Each nuevaEntrada As DataRow In dt.FiltraParametros($"TRIM(Almacen) = '{almacenActual}'").Rows contadorMovimientos += 1 - Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS")}' ") + 'Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS").ToString.Trim}' ") + Dim RowPS As DataRow = ProductosServiciosRef.FiltroPrimero($"Codigo = '{nuevaEntrada("CodigoPS").ToString.Trim(" "c)}' ") If RowPS IsNot Nothing Then Dim CvePS As Integer = RowPS("CvePS").ToString().ToEntero() diff --git a/OC/OC.aspx b/OC/OC.aspx index a0f785195..f6003cce7 100644 --- a/OC/OC.aspx +++ b/OC/OC.aspx @@ -1584,9 +1584,9 @@
-
-
- +
+
+ @@ -1598,9 +1598,9 @@
-
-
- +
+
+ @@ -1613,7 +1613,7 @@
-
+
@@ -1621,7 +1621,7 @@
-
+

@@ -3020,7 +3020,7 @@ function SAImporteContadokeyup() { var importe = (100 * ToDouble($('#TxtSAImporteContado').val())) / ToDouble($get("LblTotal").value.replace(/,/g, "")); - $('#TxtSAImPorcentajeContado%>').val(FormatoNumero(importe, 2).replace(/,/g, "")); + $('#TxtSAImPorcentajeContado').val(FormatoNumero(importe, 2).replace(/,/g, "")); } function showDivEC(CveCotizacion) { diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index 5f11e2541..38415f4f5 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -5399,7 +5399,7 @@ Partial Class OC_OC End If End Sub - Private Sub EnviaCorreoSolicitudAnticipo(CveEvento As Integer) + Private Sub EnviaCorreoSolicitudAnticipo(CveEvento As Integer, Optional ImporteAnticipo As Decimal = 0) Dim Param As New List(Of String) Dim DtPara As DataTable = GlobalDTUsuarios(DdlSAUsuario.SelectedValue.ToString.ToEntero, CveEmpresaActual) @@ -5409,7 +5409,14 @@ Partial Class OC_OC Param.Add(DtPara.Rows(0)("Correo").ToString()) 'Para Param.Add("Solicitud de anticipo de Orden de Compra") 'Asunto - Param.Add(GeneraCorreoAnticipo(lblFolio.Text, DtPara.Rows(0)("Nombre").ToString(), String.Format("http://sig.adssistemas.mx/OI/EventoDetalle.aspx?CveTipoEvento=1&CveEvento={0}", CveEvento), TxtSAImporte.Text, DdlProveedores.SelectedText)) + + + If ImporteAnticipo = 0 Then + ImporteAnticipo = TxtSAImporte.Text.ToDecimal + End If + + + Param.Add(GeneraCorreoAnticipo(lblFolio.Text, DtPara.Rows(0)("Nombre").ToString(), String.Format("http://sig.adssistemas.mx/OI/EventoDetalle.aspx?CveTipoEvento=1&CveEvento={0}", CveEvento), ImporteAnticipo.ToString, DdlProveedores.SelectedText)) Param.Add(String.Format("{0}PDF\OC-{1}.pdf", UsuarioActual.Empresa.Ruta, CveOrdenCompra)) Dim Hilo As New Threading.Thread(AddressOf MandaCorreoAnticipo) Hilo.Start(Param) @@ -8922,7 +8929,7 @@ Partial Class OC_OC End If If Not TieneError Then - EnviaCorreoSolicitudAnticipo(ObjOI.CveEvento) + EnviaCorreoSolicitudAnticipo(ObjOI.CveEvento, TxtSAImporteContado.Text.ToDecimal) 'LIMPIA DdlSAUsuarioContado.SelectedValue = "-1" TxtSAImporteContado.Text = ""