diff --git a/App_Code/ClsAcumuladores.vb b/App_Code/ClsAcumuladores.vb index cd29409c4..2f7ac71dc 100644 --- a/App_Code/ClsAcumuladores.vb +++ b/App_Code/ClsAcumuladores.vb @@ -875,6 +875,23 @@ Public Class ClsAcumuladores End Try Return Retorno End Function + + Public Function UpdatePolizaVirtual(CvePolizaVirtual As Integer, CveMarca As Integer, FechaUsado As DateTime) As Boolean + Dim Retorno As Boolean = False + SqlDataAdapter("PA_Vta_PolizaVirtualUpdate") + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePolizaVirtual", SqlDbType.Int).Value = CvePolizaVirtual + .Add("@CveMarca", SqlDbType.Int).Value = CveMarca + .Add("@FechaUsado", SqlDbType.DateTime).Value = FechaUsado + End With + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As SqlException + OnError("Ocurrió un al actualizar el envio de la poliza virtual. ", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + Return Retorno + End Function Public Function UpdateEnvioPolizaVirutal(CvePolizaVirtual As Integer, Envio As Boolean, FechaEnvio As DateTime, CodigoUnico As String) As Boolean Dim Retorno As Boolean = False SqlDataAdapter("PA_Vta_PolizaVirtualEnvioUpdate") diff --git a/App_Code/ClsNominas.vb b/App_Code/ClsNominas.vb index fa2e30bf1..308ebb7ed 100644 --- a/App_Code/ClsNominas.vb +++ b/App_Code/ClsNominas.vb @@ -514,6 +514,23 @@ Public Class ClsNominas Return Retorno End Function + Public Function DeleteNom_NominasDetalles(CveConcepto As Integer, CvePersonal As Integer, CvePeriodo As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Nom_NominasDetallesDelete") + SqlAdapter.SelectCommand.Parameters.Add("@CveConcepto", SqlDbType.Int).Value = CveConcepto + SqlAdapter.SelectCommand.Parameters.Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal + SqlAdapter.SelectCommand.Parameters.Add("@CvePeriodo", SqlDbType.Int).Value = CvePeriodo + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + Me.OnError("Ocurrió un error al eliminar el Movimiento de Nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + + Return Retorno + End Function Public Function RemoveNom_NominasDetalles(CveNominaDetalle As Integer) As Boolean Dim Retorno As Boolean = False @@ -2108,13 +2125,14 @@ Public Class ClsNominas Return retorno End Function - Public Function GetCalculoSBC(CveEmpresa As Integer, FechaCalculo As String) As Boolean + Public Function GetCalculoSBC(CveEmpresa As Integer, Tipo As Integer, FechaCalculo As String) As Boolean Dim retorno As Boolean = False Try DTSet = New DataSet() DataAdapter("PA_GetCalculoSBC", CommandType.StoredProcedure) With SqlAdapter.SelectCommand.Parameters .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + .Add("@Tipo", SqlDbType.Int).Value = Tipo .Add("@Fecha", SqlDbType.Date).Value = FechaCalculo End With @@ -2514,6 +2532,97 @@ Public Class ClsNominas End Function #End Region + +#Region "CRUD_RH_TablasValores" + Public Function RH_TablasValoresGet(cveEmpresa As Int32, tipo As Int32) As Boolean + Dim retorno As Boolean = False + Try + DataAdapter("PA_RH_TablasValoresGet", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa + .Add("@Tipo", SqlDbType.Int).Value = tipo + End With + SqlAdapter.Fill(Data) + + retorno = True + Catch sqEx As SqlException + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function RH_TablasValoresAdd(cveEmpresa As Int32, fecha As DateTime, tipo As Int32, valor As Decimal) As Boolean + Dim retorno As Boolean = False + + Try + DataAdapter("PA_RH_TablasValoresAdd", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa + .Add("@Tipo", SqlDbType.Int).Value = tipo + .Add("@fecha", SqlDbType.DateTime).Value = fecha + .Add("@valor", SqlDbType.Money).Value = valor + End With + SqlAdapter.Fill(Data) + + retorno = True + Catch sqEx As SqlException + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function RH_TablasValoresUp(cveEmpresa As Int32, fecha As DateTime, tipo As Int32, valor As Decimal) As Boolean + Dim retorno As Boolean = False + + Try + DataAdapter("PA_RH_TablasValoresUp", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa + .Add("@Tipo", SqlDbType.Int).Value = tipo + .Add("@fecha", SqlDbType.DateTime).Value = fecha + .Add("@valor", SqlDbType.Money).Value = valor + End With + SqlAdapter.Fill(Data) + + retorno = True + Catch sqEx As SqlException + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function + Public Function RH_TablasValoresRemove(cveEmpresa As Int32, fecha As DateTime, tipo As Int32) As Boolean + Dim retorno As Boolean = False + Try + DataAdapter("PA_RH_TablasValoresRemove", CommandType.StoredProcedure) + With SqlAdapter.SelectCommand.Parameters + .Add("@CveEmpresa", SqlDbType.Int).Value = cveEmpresa + .Add("@Tipo", SqlDbType.Int).Value = tipo + .Add("@fecha", SqlDbType.DateTime).Value = fecha + End With + SqlAdapter.Fill(Data) + + retorno = True + Catch sqEx As SqlException + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", sqEx, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + Catch ex As Exception + retorno = False + OnError("Ocurrió un error al obtener las tablas de nomina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + End Try + Return retorno + End Function +#End Region + #Region "IDisposable Support" ' IDisposable Protected Overridable Sub Dispose(ByVal disposing As Boolean) diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb index 79a6ab882..a4549c442 100644 --- a/App_Code/ClsVentas.vb +++ b/App_Code/ClsVentas.vb @@ -1268,17 +1268,19 @@ Public Class ClsVentas Return Retorno End Function - Public Function UpdateVentaDetalleRemision(CveVenta As Integer, CvePS As Integer, Cantidad As Double, PU As Double, IEPS As Double, PorcentajeIEPS As Decimal, Observaciones As String, Optional CveUsuarioModifico As Integer = -1) As Boolean + Public Function UpdateVentaDetalleRemision(CveVenta As Integer, CvePS As Integer, Cantidad As Decimal, PU As Decimal, IEPS As Decimal, PorcentajeIEPS As Decimal, IVA As Decimal, PorcentajeIVA As Decimal, Observaciones As String, Optional CveUsuarioModifico As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_VentasDetalleRemisionUpdate") With SqlAdapter.SelectCommand.Parameters .Add("@CveVentaDetalle", SqlDbType.Int).Value = CveVenta .Add("@CvePS", SqlDbType.Int).Value = CvePS - .Add("@Cantidad", SqlDbType.Float).Value = Cantidad - .Add("@PU", SqlDbType.Float).Value = PU - .Add("@IEPS", SqlDbType.Float).Value = IEPS - .Add("@PorcentajeIEPS", SqlDbType.Float).Value = PorcentajeIEPS + .Add("@Cantidad", SqlDbType.Decimal).Value = Cantidad + .Add("@PU", SqlDbType.Decimal).Value = PU + .Add("@IEPS", SqlDbType.Decimal).Value = IEPS + .Add("@PorcentajeIEPS", SqlDbType.Decimal).Value = PorcentajeIEPS + .Add("@IVA", SqlDbType.Decimal).Value = IVA + .Add("@PorcentajeIVA", SqlDbType.Decimal).Value = PorcentajeIVA .Add("@Observaciones", SqlDbType.VarChar).Value = Observaciones .Add("@CveUsuarioModifico", SqlDbType.Int).Value = CveUsuarioModifico End With diff --git a/Ashx/E141.ashx b/Ashx/E141.ashx index fca4a8b19..4d52b8b02 100644 --- a/Ashx/E141.ashx +++ b/Ashx/E141.ashx @@ -392,22 +392,37 @@ Public Class E141 : Implements IHttpHandler Select Case Metodo Case "CrearActualizarProductos" respuesta = CrearActualizarProductos(If(FiltrarTodos = "1", True, False)) + If respuesta Then + retorno = "True" + Else + retorno = "False" + End If + Case "CrearActualizarProductosJson" + retorno = CrearActualizarProductosJson(If(FiltrarTodos = "1", True, False)) Case "ActualizarPrecios" respuesta = ActualizarPrecios(If(FiltrarTodos = "1", True, False)) + If respuesta Then + retorno = "True" + Else + retorno = "False" + End If Case "ActualizarExistencias" respuesta = ActualizarExistencias() + If respuesta Then + retorno = "True" + Else + retorno = "False" + End If Case "ActualizarVendedores" respuesta = ActualizarVendedores(If(FiltrarTodos = "1", True, False)) + If respuesta Then + retorno = "True" + Else + retorno = "False" + End If End Select - If respuesta Then - retorno = "True" - Else - retorno = "False" - End If End If - - End If context.Response.Write(retorno) @@ -1962,6 +1977,25 @@ Public Class E141 : Implements IHttpHandler Return Retorno End Function + Private Function CrearActualizarProductosJson(Todos As Boolean) As String + Dim payload = New JObject() + + Dim CountPeticiones As Integer = 0, CountPeticionesExitosas As Integer = 0 + + Dim DtPS As DataTable = Nothing + Using ObjPS As New ClsProductosServicios + 'OBTERNER PRECIOS DE PUBLICO GENERAL + If ObjPS.GetProductosModificados(CveEmpresa, 44, If(Todos, -1, 1)) Then + DtPS = ObjPS.DtResultados.Copy() + End If + End Using + + If DtPS IsNot Nothing Then + payload.Add(New JProperty("products", GenerarPayloadProductos(DtPS))) + End If + + Return payload.ToString() + End Function Private Function GenerarPayloadProductos(DtPS As DataTable) As JArray Dim ArrayPS As New JArray For Each RowPS As DataRow In DtPS.Rows diff --git a/Bancos/PopIEVentas.aspx.vb b/Bancos/PopIEVentas.aspx.vb index 9b6ae3795..84d152fbc 100644 --- a/Bancos/PopIEVentas.aspx.vb +++ b/Bancos/PopIEVentas.aspx.vb @@ -718,79 +718,76 @@ Partial Class Bancos_PopIEVentas Validada = True End If - - If Validada Then - - CveCliente = dr("CveCliente").ToString.ToEntero - CveClienteOriginal = dr("CveCliente").ToString.ToEntero - HdnCveCliente.Value = CveCliente.ToString - CargaCliente(CveCliente, "-1") - CveMoneda = dr("CveMoneda").ToString.ToEntero - CveMonedaVenta = dr("CveMoneda").ToString.ToEntero - CveMonedaFiltros = dr("CveMoneda").ToString.ToEntero - NombreCliente = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("Nombre", String.Format("CveCliente = {0}", CveCliente)) - SerieFolio = dr("SerieFolio").ToString - TipoCambioOriginal = dr("TipoCambio").ToString.ToDecimal - CveSubProyectoVenta = dr("CveSubProyecto").ToString.ToEntero - - LblMetodoPAgo.Text = $"{dr("ClaveMetodoPagoSATStr").ToString() }" + CveCliente = dr("CveCliente").ToString.ToEntero + CveClienteOriginal = dr("CveCliente").ToString.ToEntero + HdnCveCliente.Value = CveCliente.ToString + CargaCliente(CveCliente, "-1") + CveMoneda = dr("CveMoneda").ToString.ToEntero + CveMonedaVenta = dr("CveMoneda").ToString.ToEntero + CveMonedaFiltros = dr("CveMoneda").ToString.ToEntero + NombreCliente = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("Nombre", String.Format("CveCliente = {0}", CveCliente)) + SerieFolio = dr("SerieFolio").ToString + TipoCambioOriginal = dr("TipoCambio").ToString.ToDecimal + CveSubProyectoVenta = dr("CveSubProyecto").ToString.ToEntero + + LblMetodoPAgo.Text = $"{dr("ClaveMetodoPagoSATStr").ToString() }" + + 'Configuración de Modalidad Update + + 'Dim RFCCliente As String = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimeroValor("RFC", $"CveCliente = {CveCliente} ") + + If Not UsuarioActual.Empresa.Funcionalidad(536) = "1" Then + If dr("TipoDocto").ToString = "Rem" Then + Alert("Los documentos de tipo Remisión no se permite realizar el pago", TipoMensaje.MsgAdvertencia) + BtnGuardar.Visible = False + End If + End If - 'Configuración de Modalidad Update + MovimientoPagar = New IEMovimiento + MovimientoPagar.SubTotal = dr("SubTotal").ToString.ToDecimal + MovimientoPagar.IVA = dr("IVA").ToString.ToDecimal + MovimientoPagar.RetIVA = dr("RetIVA").ToString.ToDecimal + MovimientoPagar.RetISR = dr("RetISR").ToString.ToDecimal + MovimientoPagar.Total = dr("Total").ToString.ToDecimal + MovimientoPagar.Saldo = dr("Saldo").ToString.ToDecimal + MovimientoPagar.IEPS = dr("IEPS").ToString.ToDecimal + MovimientoPagar.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal - 'Dim RFCCliente As String = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimeroValor("RFC", $"CveCliente = {CveCliente} ") + LtlTitulo.Text = "Cuentas por Cobrar" + LtlTipo2.Text = "Folio de la Venta" + LtlTipo3.Text = "Fecha de la Venta" + LtlSaldo.Text = If(CveMoneda = 1, $"{dr("Saldo").ToString.FormatoNumero}{" MXN"}", $"{dr("Saldo").ToString.FormatoNumero}{" USD"}") + LtlFechaVenta.Text = dr("Fecha").ToString.ToDate.ToShortDateString() + LtlFolio.Text = dr("SerieFolio").ToString + + TxtFolio.Enabled = True + TxtFechaDocumento.Enabled = True + Calendario.Enabled = True + TxtPagueseA.Enabled = False + TxtImporte.Enabled = True + + DdlCuenta.Enabled = True + + DdlTipoTransaccion.Enabled = True + TxtObservaciones.Enabled = True + + RVImporte.Enabled = True + RVImporte.MaximumValue = dr("Saldo").ToString.ToDouble.ToString.FormatoNumero + TxtImporte.Text = dr("Saldo").ToString.ToDouble.FormatoNumero + + FechaVenta = dr("Fecha").ToString.ToDate + SaldoVenta = dr("Saldo").ToString.ToDouble - If Not UsuarioActual.Empresa.Funcionalidad(536) = "1" Then - If dr("TipoDocto").ToString = "Rem" Then - Alert("Los documentos de tipo Remisión no se permite realizar el pago", TipoMensaje.MsgAdvertencia) - BtnGuardar.Visible = False - End If - End If + 'Cortes de Caja + If UsuarioActual.TienePermisoProceso(160) Then + CargaCorteCaja() + End If - - - MovimientoPagar = New IEMovimiento - MovimientoPagar.SubTotal = dr("SubTotal").ToString.ToDecimal - MovimientoPagar.IVA = dr("IVA").ToString.ToDecimal - MovimientoPagar.RetIVA = dr("RetIVA").ToString.ToDecimal - MovimientoPagar.RetISR = dr("RetISR").ToString.ToDecimal - MovimientoPagar.Total = dr("Total").ToString.ToDecimal - MovimientoPagar.Saldo = dr("Saldo").ToString.ToDecimal - MovimientoPagar.IEPS = dr("IEPS").ToString.ToDecimal - MovimientoPagar.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal - - LtlTitulo.Text = "Cuentas por Cobrar" - LtlTipo2.Text = "Folio de la Venta" - LtlTipo3.Text = "Fecha de la Venta" - LtlSaldo.Text = If(CveMoneda = 1, $"{dr("Saldo").ToString.FormatoNumero}{" MXN"}", $"{dr("Saldo").ToString.FormatoNumero}{" USD"}") - LtlFechaVenta.Text = dr("Fecha").ToString.ToDate.ToShortDateString() - LtlFolio.Text = dr("SerieFolio").ToString - - TxtFolio.Enabled = True - TxtFechaDocumento.Enabled = True - Calendario.Enabled = True - TxtPagueseA.Enabled = False - TxtImporte.Enabled = True - - DdlCuenta.Enabled = True - - DdlTipoTransaccion.Enabled = True - TxtObservaciones.Enabled = True - - RVImporte.Enabled = True - RVImporte.MaximumValue = dr("Saldo").ToString.ToDouble.ToString.FormatoNumero - TxtImporte.Text = dr("Saldo").ToString.ToDouble.FormatoNumero - - FechaVenta = dr("Fecha").ToString.ToDate - SaldoVenta = dr("Saldo").ToString.ToDouble - - - 'Cortes de Caja - If UsuarioActual.TienePermisoProceso(160) Then - CargaCorteCaja() - End If + If Not Validada Then + BtnGuardar.Visible = False End If @@ -1388,8 +1385,6 @@ Partial Class Bancos_PopIEVentas #Region "G U A R D A R" Private Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click - - Dim FechaFactura As Date = FechaVenta Dim FechaDocumentoPago As Date = TxtFechaDocumento.Text.ToDate diff --git a/GPS/Rastreo.aspx.vb b/GPS/Rastreo.aspx.vb index 9200f00dd..c6c79fd7c 100644 --- a/GPS/Rastreo.aspx.vb +++ b/GPS/Rastreo.aspx.vb @@ -2091,6 +2091,8 @@ Partial Class GPS_Rastreo DtDatos.Columns.Add("Evento", GetType(String)) DtDatos.Columns.Add("LatLng", GetType(String)) + Dim KMRecorridos = DtPosiciones.SUM("KMRecorridos").ToString + Try Dim Direcciones As JArray = ConsultarDirecciones(DtPosiciones) For Each row As DataRow In DtPosiciones.Rows @@ -2107,6 +2109,12 @@ Partial Class GPS_Rastreo For Each Dir As JObject In Direcciones DtDatos.Rows(Dir("Indice").ToEntero())("Direccion") = Dir("Direccion").ToString() Next + + + DtDatos.Columns("Vehiculo").ColumnName = "Vehículo" + DtDatos.Columns("TiempoDetenido").ColumnName = "Tiempo Detenido" + DtDatos.Columns("Direccion").ColumnName = "Dirección" + Catch ex As Exception GuardaLog(String.Format("Ocurrio un error al generar el reporte RLDC {0}", ex)) End Try @@ -2159,15 +2167,17 @@ Partial Class GPS_Rastreo If FechaI.Length > 0 And FechaF.Length > 0 Then - Dim RangoFechas = worksheet.Cells.GetSubrangeAbsolute(4, celdasConTexto.FirstColumnIndex, 4, celdasConTexto.LastColumnIndex) - RangoFechas.Merged = True - RangoFechas.Value = $"Fechas: {FechaI} a {FechaF}" - RangoFechas.Style.Font.Size = 15 * 20 - RangoFechas.Style.Font.Name = "Calibri Light" - RangoFechas.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center - RangoFechas.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + End If + Dim RangoFechas = worksheet.Cells.GetSubrangeAbsolute(4, celdasConTexto.FirstColumnIndex, 4, celdasConTexto.LastColumnIndex) + RangoFechas.Merged = True + RangoFechas.Value = $"Distancia: {KMRecorridos:N2} KM {If(FechaI.Length > 0 And FechaF.Length > 0, $"Fechas: {FechaI} a {FechaF}", "")}" + RangoFechas.Style.Font.Size = 15 * 20 + RangoFechas.Style.Font.Name = "Calibri Light" + RangoFechas.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center + RangoFechas.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center + For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex diff --git a/Inventarios/RecepcionUsados.aspx b/Inventarios/RecepcionUsados.aspx index 0d136a0fe..6d02158f6 100644 --- a/Inventarios/RecepcionUsados.aspx +++ b/Inventarios/RecepcionUsados.aspx @@ -335,6 +335,45 @@ +
+
+
+ + Apartado Usado +
+
+
+
+
+
+
+
+
+
+
+
+ + + + +
+
+
+ +
+ + + + + + + + +
+
+
+
+
diff --git a/Inventarios/RecepcionUsados.aspx.vb b/Inventarios/RecepcionUsados.aspx.vb index c545620da..ff91f38ce 100644 --- a/Inventarios/RecepcionUsados.aspx.vb +++ b/Inventarios/RecepcionUsados.aspx.vb @@ -317,6 +317,15 @@ Partial Class Inventarios_RecepcionUsados ViewState("DtPorcentajeMarcas") = value End Set End Property + + Private Property TmpDTPolizaVirtual As DataTable + Get + Return If(IsNothing(ViewState("TmpDTPolizaVirtual")), Nothing, CType(ViewState("TmpDTPolizaVirtual"), DataTable)) + End Get + Set(value As DataTable) + ViewState("TmpDTPolizaVirtual") = value + End Set + End Property #End Region Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load @@ -1125,57 +1134,76 @@ Partial Class Inventarios_RecepcionUsados Recibio:=TxtResponsable.Text.Trim, CveCliente:=CveCliente, CveClienteSucursal:=CveClienteSucursal, DepartamentoEntrega:=TxtDepartamentoEntrega.Text, PedidoContrato:=TxtPedidoContrato.Text, CveProveedor:=tCveProveedor, Modulo:="RU/G") If CveMovimiento <= 0 Then - Mensaje = "Error al guardar los movimientos" - ErrorMovInv = True - Else - FolioInv = ObjInventario.Folio.ToString() + Mensaje = "Error al guardar los movimientos" + ErrorMovInv = True + Else + FolioInv = ObjInventario.Folio.ToString() - For Each Dr As DataRow In DtMovimientos.Rows + For Each Dr As DataRow In DtMovimientos.Rows - If CveConcepto = 42 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then - ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(TxtFecha.Text.ToDate).ToDecimal - Else - ImporteConcepto = Dr("PU").ToString.ToDecimal - End If + If CveConcepto = 42 AndAlso DdlMoneda.SelectedValue.ToEntero = 2 Then + ImporteConcepto = Dr("PU").ToString.ToDecimal * GlobalTipoCambio(TxtFecha.Text.ToDate).ToDecimal + Else + ImporteConcepto = Dr("PU").ToString.ToDecimal + End If - If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then - Mensaje = "Error al guardar los movimientos" + If Not ObjInventario.AddMovimientoDetalle(CveMovimiento, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, ImporteConcepto, CveAF:=Dr("CveAF").ToString.ToEntero, Serie:=Dr("Serie").ToString, Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, Observaciones:=Dr("Observaciones").ToString, CveUsuarioModifico:=UsuarioActual.CveUsuario) Then + Mensaje = "Error al guardar los movimientos" + ErrorMovInv = True + Exit For + End If + + If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then + Mensaje = "Error al actualizar el recibo de los usados" + ErrorMovInv = True + Exit For + End If + + 'si es selectedvalue = 42, es entrada ,3 -salida + Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 42, 1, 2) + + If EsDistribuidor AndAlso RBLOpcion.SelectedValue.ToEntero = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then + + If Not ObjAcum.DistribuidorMovtosAdd(DdlClientes.SelectedValue.ToEntero, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario, + UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then + Mensaje = "Error al guardar Movimientos de distribuidor" ErrorMovInv = True Exit For End If - If CveVenta > 0 AndAlso Not ObjVentas.UpdateVentaUsadoRecibido(CveVenta, Dr("CvePS").ToString.ToEntero, True, CveMovimiento) Then - Mensaje = "Error al actualizar el recibo de los usados" - ErrorMovInv = True - Exit For - End If + End If + Next - 'si es selectedvalue = 42, es entrada ,3 -salida - Dim CveConceptoUsados As Integer = If(RBLOpcion.SelectedValue.ToEntero = 42, 1, 2) + 'ACTUALIZA LA POLIZA VIRTUAL DEL LA REMISION + 'If Not ErrorMovInv AndAlso ObjFactura.TipoDocto = "Rem" Then + ' If ObjAcum.GetPolizasVirtuales(ObjFactura.CveVenta) Then + ' Dim DtPoliza As DataTable = ObjAcum.DtResultados.Copy() + ' For Each RowPoliza As DataRow In DtPoliza.Rows + ' If Not ObjAcum.UpdatePolizaVirtual(RowPoliza("CvePolizaVirtual").ToString().ToEntero, DdlMarcaRem.SelectedValue.ToEntero(), TxtFechaVigencia.Text.ToDateTime()) Then + ' Mensaje = "Error al guardar la póliza virtual" + ' ErrorMovInv = True + ' Exit For + ' End If + ' Next - If EsDistribuidor AndAlso RBLOpcion.SelectedValue.ToEntero = 42 AndAlso Dr("CveTamaño").ToString.ToEntero > 0 Then + ' DtPoliza.Dispose() + ' Else + ' Mensaje = "Error al obtener la póliza virtual" + ' ErrorMovInv = True + ' End If + 'End If - If Not ObjAcum.DistribuidorMovtosAdd(DdlClientes.SelectedValue.ToEntero, Dr("Cantidad").ToString.ToEntero(), Dr("CveTamaño").ToString.ToEntero, CveConceptoUsados, CveVenta, UsuarioActual.CveUsuario, - UsuarioActual.CveEmpresa, 0, Dr("Observaciones").ToString, CveMovimiento:=CveMovimiento) Then - Mensaje = "Error al guardar Movimientos de distribuidor" - ErrorMovInv = True - Exit For - End If - - End If - Next - - 'GENERA LA PREPOLIZA DE ALMACEN VS EL CONCEPTO DE RNC - 'If Not ErrorMovInv Then - ' ErrorMovInv = Not GeneraPrePoliza(CveMovimiento, ObjInventario, ObjConta, True) - 'End If - - End If + 'GENERA LA PREPOLIZA DE ALMACEN VS EL CONCEPTO DE RNC + 'If Not ErrorMovInv Then + ' ErrorMovInv = Not GeneraPrePoliza(CveMovimiento, ObjInventario, ObjConta, True) + 'End If End If + End If - If Not ErrorMovInv Then + + If Not ErrorMovInv Then If Resp IsNot Nothing Then For Each mensaje2 As String In Resp.Mensajes Msg.AppendFormat("
{0}", mensaje2) @@ -1473,6 +1501,13 @@ Partial Class Inventarios_RecepcionUsados GvM.DataSource = DtTemp GvM.DataBind() + 'If TmpDTPolizaVirtual IsNot Nothing AndAlso RblUsadosAjuste.SelectedValue = "2" Then + ' TmpDTPolizaVirtual.Clear() + ' For Each Row As DataRow In DtTemp.Rows + ' AddPolizaVirtual(Row("CvePS").ToString().ToEntero()) + ' Next + 'End If + EscondeColumnasGVM(DtTemp) End Sub Private Sub EscondeColumnasGVM(DtTemp As DataTable) @@ -2076,6 +2111,14 @@ Partial Class Inventarios_RecepcionUsados DdlClientes.SelectedValueExist(CveCliente) End If + If Me.ObjFactura IsNot Nothing Then + Me.ObjFactura.Dispose() + Me.ObjFactura = Nothing + End If + + Me.ObjFactura = New Modelos.Factura(UsuarioActual, CveRemisionRecibida, UsuarioActual.CveEmpresa, DirectorioServidor:=ModExtensiones.DirectorioBaseEmpresas) + + 'SI ES DISTRIBUIDOR VAMOS A GENERAR LA REMISION DE NOTA DE CREDITO If EsDistribuidor Then DivCliente.Visible = True @@ -2087,13 +2130,6 @@ Partial Class Inventarios_RecepcionUsados Me.ObjRemisionNC = Nothing End If - If Me.ObjFactura IsNot Nothing Then - Me.ObjFactura.Dispose() - Me.ObjFactura = Nothing - End If - - Me.ObjFactura = New Modelos.Factura(UsuarioActual, CveRemisionRecibida, UsuarioActual.CveEmpresa, DirectorioServidor:=ModExtensiones.DirectorioBaseEmpresas) - If Me.ObjFactura IsNot Nothing Then 'CreaRemisionNC(ObjFactura.CveCliente, ObjFactura.CveSubProyecto, ObjFactura.CveMoneda) DivTotal.Visible = True @@ -2102,12 +2138,17 @@ Partial Class Inventarios_RecepcionUsados 'DivCliente.Visible = False 'DivFactura.Visible = False End If + If ObjVentas.GetVentasUsadosDetalle(CveRemisionRecibida) Then DtUsados = ObjVentas.DtResultados.Copy() End If + ObjVentas.Dispose() If DtUsados IsNot Nothing Then + + 'DivRecepcionApartado.Visible = True + For Each RowUsado As DataRow In DtUsados.Rows Dim CvePS = RowUsado("CvePS").ToString().ToEntero() @@ -2271,6 +2312,10 @@ Partial Class Inventarios_RecepcionUsados Me.ObjRemisionNC.PedidoContrato = "" Me.ObjRemisionNC.ObservacionesAlmacen = "" + 'If TmpDTPolizaVirtual IsNot Nothing Then + ' Me.ObjRemisionNC.DtPolizasVirtuales = TmpDTPolizaVirtual + 'End If + End Sub Private Function AddPSRNC(ByRef TmpDT As DataTable, Cantidad As Decimal, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, CvePS As Integer, PS As String, Obs As String, @@ -3087,6 +3132,10 @@ Partial Class Inventarios_RecepcionUsados ObjPS.Dispose() GuardaAjuste() + + 'If TmpDTPolizaVirtual Is Nothing Then + ' CreaDTmpDTPolizaVirtual() + 'End If End Sub Protected Sub CargarDescuento() @@ -3251,15 +3300,126 @@ Partial Class Inventarios_RecepcionUsados Using ObjMarcas As New ClsProductosServicios If ObjMarcas.GetMarcas(UsuarioActual.CveEmpresa) Then DdlMarcaPSAjuste.DataSource = ObjMarcas.DtResultados + DdlMarcaRem.DataSource = ObjMarcas.DtResultados End If End Using + DdlMarcaPSAjuste.DataBind() + DdlMarcaRem.DataBind() DdlMarcaPSAjuste.Items.Insert(0, New ListItem("Todas", "-1")) + DdlMarcaRem.Items.Insert(0, New ListItem("Todas", "-1")) UpAjuste.Update() End Sub +#Region "P O L I Z A - V I R T U A L" + Private Sub CreaDTmpDTPolizaVirtual() + TmpDTPolizaVirtual = New DataTable + TmpDTPolizaVirtual.Columns.Add("CvePS", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("Cantidad", GetType(Decimal)) + TmpDTPolizaVirtual.Columns.Add("PU", GetType(Decimal)) + TmpDTPolizaVirtual.Columns.Add("Descuento", GetType(Decimal)) + TmpDTPolizaVirtual.Columns.Add("Total", GetType(Decimal)) + TmpDTPolizaVirtual.Columns.Add("CveVentaDetalle", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("TipoServicio", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("TipoPoliza", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("CveModeloAuto", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("AnioVehiculo", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("TieneUsado", GetType(Boolean)) + TmpDTPolizaVirtual.Columns.Add("FechaUsado", GetType(DateTime)) + TmpDTPolizaVirtual.Columns.Add("CvePSUsado", GetType(Integer)) + TmpDTPolizaVirtual.Columns.Add("CveBCIUsado", GetType(Integer)) + End Sub + Private Function AddPolizaVirtual(CvePS As Integer) As Boolean + + Dim Retorno As Boolean = True + + 'If Modalidad = "U" Then + ' If TmpDTPolizaVirtual.Rows.Count > 0 Then + ' Dim Elimino As Boolean = False + ' For Each RowPoliza As DataRow In TmpDTPolizaVirtual.Rows + ' If RowPoliza("CvePS").ToString().ToEntero() = CvePS Then + ' RowPoliza.Delete() + ' Elimino = True + ' Exit For + ' End If + ' Next + ' If Elimino Then + ' TmpDTRecepcionUsados.AcceptChanges() + ' End If + ' End If + 'End If + + Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") + + If DrPS IsNot Nothing Then + 'SOLO DEBE AGREGAR POLIZA VIRTUAL SI ES ACUMULADOR + If Not DrPS("CveClasificacion").ToString().ToEntero().Contiene(20520, 20522, 20513, 20511, 20521, 20512, 20514, 20229) Then + Return Retorno + End If + Else + Retorno = False + Return Retorno + End If + + Dim Cantidad As Decimal = 1 + Dim PU As Decimal = txtPrecio.Text.ToDecimal() + Dim Descuento As Decimal = 0 + Dim ImporteAjuste As Decimal = TxtImporteAjuste.Text.ToDecimal().RoundSQL(2) + + Dim Total As Decimal = ((Cantidad * PU) - Descuento).RoundSQL(2) + Dim TipoServicio As Integer = -1 + Dim FechaUsado As DateTime = If(TxtFechaAjuste.Text.ToDateTime() < MinFecha, Now, TxtFechaAjuste.Text.ToDateTime()) + Dim CveModeloAuto As Integer = -1 + Dim AnioVehiculo As Integer = 0 + Dim TipoPoliza As Integer = 1 'VENTA + + If Total = ImporteAjuste Then + TipoPoliza = 3 'GARANTIA + Else + TipoPoliza = 2 'AJUSTE + End If + + 'Dim TieneUsado As Boolean = GvRecepcionUsados.Rows.Cast(Of GridViewRow).Any(Function(GvRow) GvRow.RowType = DataControlRowType.DataRow AndAlso GvRow.FCTextBox("TxtCantidad").Text.ToDecimal() > 0) + Dim CvePSUsado As Integer = -1 + Dim CveBCIUsado As Integer = -1 + + 'If TieneUsado Then + ' For Each GvRow As GridViewRow In GvRecepcionUsados.Rows + ' If GvRow.RowType = DataControlRowType.DataRow Then + ' If GvRow.FCTextBox("TxtCantidad").Text.ToDecimal() > 0 Then + ' CvePSUsado = GvRow.DataKey("CvePSCargo").ToEntero() + ' CveBCIUsado = GvRow.FCDropDownList("DdlBCIUsado").SelectedValue.ToEntero() + + ' Exit For + ' End If + ' End If + ' Next + 'End If + + Dim Row As DataRow = TmpDTPolizaVirtual.NewRow() + Row("CvePS") = CvePS + Row("Cantidad") = Cantidad + Row("PU") = PU + Row("Descuento") = Descuento + Row("Total") = Total + Row("CveVentaDetalle") = -1 + Row("TipoServicio") = TipoServicio + Row("TipoPoliza") = TipoPoliza + Row("CveModeloAuto") = CveModeloAuto + Row("AnioVehiculo") = AnioVehiculo + Row("TieneUsado") = 1 + Row("FechaUsado") = FechaUsado + Row("CvePSUsado") = CvePSUsado + Row("CveBCIUsado") = CveBCIUsado + + TmpDTPolizaVirtual.Rows.Add(Row) + + Return Retorno + End Function +#End Region + Partial Class MFolioGarantiaMensaje Public Property CvePS As Integer diff --git a/Inventarios/TraspasoAlmacen.aspx.vb b/Inventarios/TraspasoAlmacen.aspx.vb index 7027576d3..17e5e4a07 100644 --- a/Inventarios/TraspasoAlmacen.aspx.vb +++ b/Inventarios/TraspasoAlmacen.aspx.vb @@ -3071,7 +3071,7 @@ Partial Class Inventarios_TraspasoAlmacen ElseIf DrAlmO("CveTipoAlmacen").ToString.ToEntero = 22 Then 'Recepcion de Usados - DdlAlmacenDestino.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros("CveTipoAlmacen IN (22) AND Estatus = 'Activo'") + DdlAlmacenDestino.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros("CveTipoAlmacen IN (21,22) AND Estatus = 'Activo'") DdlAlmacenDestino.DataBind() DdlAlmacenDestino.Items.Insert(0, New ListItem("Seleccione", "-1")) Else diff --git a/Nomina/ConceptoNomina.aspx.cs b/Nomina/ConceptoNomina.aspx.cs index 6b4412482..ff61ea299 100644 --- a/Nomina/ConceptoNomina.aspx.cs +++ b/Nomina/ConceptoNomina.aspx.cs @@ -321,7 +321,7 @@ public partial class Nomina_CatConcepto : ClsPaginas if (EsEditar) { - TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto); + TieneError = !ObjNomina.UpdateConcepto(codigo, concepto, tipo, formula, sistema, estado, CveConceptoPadre, CveConcepto, retencion, CveClasificacion, IdCtaContable, CveTipoGasto, tipoCalculo, CveConceptoContable, AplicaFiniquito, AutomaticoGlobal, Especie, Imprimir, CveSATConcepto,UsuarioActual.CveEmpresa); if (TieneError) { diff --git a/Nomina/Nomina2.aspx b/Nomina/Nomina2.aspx index 881dcec31..46221f24b 100644 --- a/Nomina/Nomina2.aspx +++ b/Nomina/Nomina2.aspx @@ -4,7 +4,10 @@ @@ -726,7 +730,7 @@
@@ -753,6 +757,7 @@ + @@ -773,6 +778,7 @@ + @@ -797,7 +803,6 @@
-
@@ -861,6 +866,9 @@ +
+ +
@@ -879,7 +887,6 @@
-
@@ -941,6 +948,9 @@ +
+ +
@@ -998,7 +1008,6 @@
-
-
@@ -1096,9 +1104,8 @@
-
- Agregar + Guardar Actualizar
@@ -1227,12 +1234,13 @@
+
+ Actualizar + Guardar +
+ -
- Actualizar - Agregar -
@@ -1257,6 +1265,11 @@
+
+
+ Agregar +
+
-
-
- Agregar -
-
@@ -1395,12 +1403,13 @@ Descripción
+
+ Actualizar + Guardar +
+
-
- Actualizar - Agregar -
@@ -1429,7 +1438,7 @@