diff --git a/App_Code/ClsOC.vb b/App_Code/ClsOC.vb
index 08a417153..a9083317b 100644
--- a/App_Code/ClsOC.vb
+++ b/App_Code/ClsOC.vb
@@ -30,6 +30,7 @@ Public Class ClsOC
Public Property CveOrdenCompra As Integer
Public Property CveOrdenCompraDetalle As Integer
Public Property Folio As Integer
+ Public Property SerieFolio As String = ""
Public Property Serie As String = ""
Public Property CveIEAnticipo As Integer
Public Property CveProveedorAnticipo As Integer
@@ -609,6 +610,7 @@ Public Class ClsOC
Dim dr As DataRow = Data.Rows(0)
_CveOrdenCompra = dr("CveOrdenCompra").ToString.ToEntero
_Folio = dr("Folio").ToString.ToEntero
+ _SerieFolio = dr("SerieFolio").ToString
_Serie = dr("Serie").ToString
_CveIEAnticipo = dr("CveIEAnticipo").ToString.ToEntero
_FolioIEAnticipo = dr("FolioIEAnticipo").ToString.ToEntero
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index 30b432f89..d98568038 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -646,7 +646,7 @@ Namespace Modelos
ObjVentas.Dispose()
- If Me.RealizarDevolucionAlmacen Then
+ If Me.RealizarDevolucionAlmacen = 1 Then
Me.CveAlmacenDevolucion = Me.CveAlmacenDevolucionVenta
End If
@@ -5523,12 +5523,12 @@ Namespace Modelos
'''
'''
'''
- Public Function CancelarFactura(RealizarDevolucionAlmacen As Boolean, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveMotivoCancelacion As Integer = -1, Optional Motivo As String = "", Optional ValidarSAT As Boolean = True, Optional CveEstadoCancelacion As Integer = 0, Optional CancelarBoletos As Boolean = False, Optional AplicaCancelacionConPagos As Boolean = False, Optional GeneraIxCconPago As Boolean = False) As MCancelacionVentaMensaje
+ Public Function CancelarFactura(RealizarDevolucionAlmacen As Integer, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveMotivoCancelacion As Integer = -1, Optional Motivo As String = "", Optional ValidarSAT As Boolean = True, Optional CveEstadoCancelacion As Integer = 0, Optional CancelarBoletos As Boolean = False, Optional AplicaCancelacionConPagos As Boolean = False, Optional GeneraIxCconPago As Boolean = False) As MCancelacionVentaMensaje
'Comprobante emitido con errores sin relación
Return CancelarVenta(Me, Me.UsuarioActual, RealizarDevolucionAlmacen:=RealizarDevolucionAlmacen, ListaRemisionesCancelar:=ListaRemisionesCancelar, CveMotivoCancelacion:=CveMotivoCancelacion, MotivoCancelacion:=Motivo, CveEstadoCancelacion:=CveEstadoCancelacion, CancelarBoletos:=CancelarBoletos, AplicaCancelacionConPagos:=AplicaCancelacionConPagos, GeneraIxCconPago:=GeneraIxCconPago)
End Function
- Private Function CancelarVenta(ObjFactura As Modelos.Factura, UsuarioActual As Usuario, Optional EsRefacturacion As Boolean = False, Optional RealizarDevolucionAlmacen As Boolean = False,
+ Private Function CancelarVenta(ObjFactura As Modelos.Factura, UsuarioActual As Usuario, Optional EsRefacturacion As Boolean = False, Optional RealizarDevolucionAlmacen As Integer = 0,
Optional ListaRemisionesCancelar As List(Of Integer) = Nothing, Optional CveEstatusFacturaAsignado As Integer = -1, Optional FechaCancelacion As String = "-1",
Optional AcuseCancelacion As String = "", Optional CveMotivoCancelacion As Integer = -1, Optional MotivoCancelacion As String = "",
Optional FolioSustitucion As String = "", Optional ValidarSAT As Boolean = True, Optional CveEstadoCancelacion As Integer = 0,
@@ -5684,7 +5684,7 @@ Namespace Modelos
Dim RevivirRemisiones As Boolean = Not EsRefacturacion AndAlso ((TieneRemisionesRelacionadas AndAlso ListaRemisionesCancelar Is Nothing) OrElse (DtRemisionesRelacionadas.Rows.Count > ListaRemisionesCancelar.Count))
'REMISION YA SE DEBE HACER POR EL PROCESO DE DEVOLUCION DE ALMACEN
- If Not EsRefacturacion AndAlso (ObjFactura.SaldoAlmacen <> 0 AndAlso ObjFactura.EsDevolucionVenta.Contiene(0, 1)) AndAlso Not RealizarDevolucionAlmacen And RevivirRemisiones = False Then
+ If Not EsRefacturacion AndAlso (ObjFactura.SaldoAlmacen <> 0 AndAlso ObjFactura.EsDevolucionVenta.Contiene(0, 1)) AndAlso Not (RealizarDevolucionAlmacen.Contiene(1, 2)) And RevivirRemisiones = False Then
Retorno.Mensaje = "La factura no se puede cancelar debido a que tiene movimientos de inventario."
Retorno.TipoMensaje = TipoMensaje.MsgAdvertencia
@@ -6129,7 +6129,7 @@ Namespace Modelos
If Not ErrorCancelar AndAlso TieneSalida Then
- If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen Then
+ If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen = 1 Then
'REALIZA DEVOLUCION A LAS SALIDAS PENDIENTES
If Not ObjFactura.TipoDocto.Contiene("Rem", "Ped") Then
For Each RowMovimiento As DataRow In DtSalidas.Rows
@@ -6278,8 +6278,8 @@ Namespace Modelos
End If
End If
- 'AGREGA BITACORA A VENTA
- If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen AndAlso CveMovimientoDevolucion > 0 Then
+ 'AGREGA BITACORA A VENTA
+ If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen = 1 AndAlso CveMovimientoDevolucion > 0 Then
Dim MensajeBitacora As String = "Devuelta"
If Not ObjEventos.AddEventoBitacora(String.Format("Venta {2} en Folio: {1}", CveMovimientoDevolucion, Folio, MensajeBitacora), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVenta) Then
MensajeError = "Ocurrió un error al agregar la bitacora."
@@ -6444,7 +6444,7 @@ Namespace Modelos
End If
'CANCELACION DE MOVIMIENTOS DE REMISION, PEDIDOS
- If Not ErrorCancelar AndAlso ObjFactura.TipoDocto.Contiene("Rem", "Ped") AndAlso RealizarDevolucionAlmacen AndAlso ObjFactura.SaldoAlmacen <> 0 Then
+ If Not ErrorCancelar AndAlso ObjFactura.TipoDocto.Contiene("Rem", "Ped") AndAlso RealizarDevolucionAlmacen = 1 AndAlso ObjFactura.SaldoAlmacen <> 0 Then
Dim CveMovimientoUsado As Integer = -1
Dim CveAlmacenUsado As Integer = 0
Dim CveAlmacenGeneral As Integer = 0
@@ -6548,7 +6548,7 @@ Namespace Modelos
'EMPRESA HOSPITALARIA - SI ES PEDIDO LA DEVOLUCION SE DEBE HACER DESPUES DE CANCELAR EL PEDIDO
If Not ErrorCancelar AndAlso UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso ObjFactura.TipoDocto = "Ped" Then
- If Not RealizarDevolucionAlmacen AndAlso TieneAlmacen Then
+ If Not RealizarDevolucionAlmacen = 1 AndAlso TieneAlmacen Then
If Not ObjInventario.ActualizarEsDevolucionVenta(ObjFactura.CveVenta, 1, AplicaDevolucionCompleta:=True) Then
ErrorCancelar = True
MensajeError = "No se pudo actualizar el estatus de almacen del pedido"
@@ -6678,6 +6678,7 @@ Namespace Modelos
If Not ObjVentas.UpdateEstatusOCRelacionada(ObjFactura.CveVenta, CveEstatusCancelacion, ObjFactura.CveEmpresa) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al cancelar la orden de servicio"
+ else
End If
End If
End If
@@ -6686,12 +6687,14 @@ Namespace Modelos
'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE
If Not ErrorCancelar Then
- If RealizarDevolucionAlmacen AndAlso CveAlmacenDevolucion > 0 Then
- If Not ObjVentas.UpdateVentaRealizarDevolucion(CveVenta, RealizarDevolucionAlmacen, CveAlmacenDevolucion) Then
+
+ If RealizarDevolucionAlmacen = 1 AndAlso CveAlmacenDevolucion > 0 Then
+ If Not ObjVentas.UpdateVentaRealizarDevolucion(CveVenta, True, CveAlmacenDevolucion) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al marcar la venta para devolución"
End If
End If
+
End If
'ACTUALIZA ESTATUS
@@ -7642,7 +7645,7 @@ Namespace Modelos
Public Property TipoDocto As String
Public Property TipoComprobante As String
Public Property RefDocto As String = ""
- Public Property RealizarDevolucionAlmacen As Boolean
+ Public Property RealizarDevolucionAlmacen As Integer
Public Property CveAlmacenDevolucionVenta As Integer
Public Property TipoDocumento As String
diff --git a/Ashx/SIGWeb.ashx b/Ashx/SIGWeb.ashx
index cc2504d43..eedb48556 100644
--- a/Ashx/SIGWeb.ashx
+++ b/Ashx/SIGWeb.ashx
@@ -1723,7 +1723,7 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion
If ObjFacturaCancelacion.TipoDocto = "Rem" Then
- Dim respuesta = ObjFacturaCancelacion.CancelarFactura(True, New List(Of Integer))
+ Dim respuesta = ObjFacturaCancelacion.CancelarFactura(1, New List(Of Integer))
If respuesta IsNot Nothing Then
retorno = JsonConvert.SerializeObject(respuesta)
End If
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 74017a021..a24cdb404 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -2290,6 +2290,28 @@ Partial Class Compras_Compras
Alert("El xml no contiene la etiqueta 'método de pago', favor de verificar la emisión con el proveedor.", TipoMensaje.MsgAdvertencia)
BtnGuardar.Visible = False
End If
+
+ If UsuarioActual.Empresa.Funcionalidad(109) = "1" Then
+ For Each item As DataRow In TmpDT.Rows
+ Dim EquivalenciaBase = GlobalDTProductosServiciosEquivalencias(item("CvePS").ToString().ToEntero(), -1, UsuarioActual.CveEmpresa).FiltroPrimero("UnidadBase = 1")
+ If EquivalenciaBase IsNot Nothing Then
+ If item("CveUM").ToString() <> EquivalenciaBase("CveUM").ToString() Then
+ Dim EquivalenciaACambiar = GlobalDTProductosServiciosEquivalencias(item("CvePS").ToString().ToEntero(), item("CveUM").ToString().ToEntero(), UsuarioActual.CveEmpresa).FiltroPrimero("")
+ If EquivalenciaACambiar IsNot Nothing Then
+ Dim Cantidad As Decimal = Math.Round(item("Cantidad").ToString().ToDecimal() / EquivalenciaACambiar("Cantidad").ToString().ToDecimal(), 6)
+ Dim PU As Decimal = Math.Round((item("Total").ToString().ToDecimal() + item("Descuento").ToString().ToDecimal()) / Cantidad, 6)
+ item("Cantidad") = Cantidad
+ item("PU") = PU
+ End If
+ item("CveUM") = EquivalenciaBase("CveUM")
+ item("UM") = EquivalenciaBase("UM")
+ End If
+ End If
+ Next
+ GvPS.DataSource = TmpDT
+ GvPS.DataBind()
+ UpPS.Update()
+ End If
End If
Else
Alert("No se Encontró la Factura", TipoMensaje.MsgAdvertencia)
@@ -6705,26 +6727,38 @@ Partial Class Compras_Compras
End If
Next
+
+ Dim importeMNTemp As Decimal = 0
+ Dim CveCompraAmortizacion As Integer = -1
+
For Each Gvr As GridViewRow In GVNCInvAlmacen.Rows
If Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDouble > 0 Then
- Dim importeMNTemp As Decimal = 0
+
If Not ObjCompras.ComprasDetalleDevolucionesAdd(Gvr.DataKey("CveCompraDetalle").ToEntero, CveCompra, Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDouble, UsuarioActual.CveEmpresa) Then
ErrorMovInv = True
Exit For
End If
- Dim DifTC As Decimal = tipoCambioActual - Gvr.DataKey("TipoCambio").ToDecimal
+ ' Dim DifTC As Decimal = tipoCambioActual - Gvr.DataKey("TipoCambio").ToDecimal
'diferenciaTransito = DifTC * (Gvr.DataKey("IVA").ToDecimal / Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDecimal)
'diferenciaTransito += DifTC * (Gvr.DataKey("IEPSPS").ToDecimal / Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDecimal)
- importeMNTemp = (Gvr.FCTextBox("TxtPU").Text.ToDecimal * Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDecimal * tipoCambioActual).RoundSQL
+ importeMNTemp = importeMNTemp + (Gvr.FCTextBox("TxtPU").Text.ToDecimal * Gvr.FCTextBox("TxtCantidadNCInv").Text.ToDecimal * tipoCambioActual).RoundSQL
ImporteTransito += importeMNTemp
+ CveCompraAmortizacion = Gvr.DataKey("CveCompra").ToEntero
'se registra por cada compra relacionada
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMNTemp, importeMNTemp, ConceptoContabilizacionNC, Referencia, Concepto, CveCompra:=CveCompra, CveCompraAmortizacion:=Gvr.DataKey("CveCompra").ToEntero, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza) Then
- ErrorPrepoliza = True
- End If
+
End If
Next
+ If importeMNTemp > 0 Then
+ 'importeMNTemp = importeMNTemp - TxtDescuento.Text.ToDecimal
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMNTemp, importeMNTemp, ConceptoContabilizacionNC, Referencia, Concepto, CveCompra:=CveCompra, CveCompraAmortizacion:=CveCompraAmortizacion, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza) Then
+ ErrorPrepoliza = True
+ End If
+ End If
+
+
'si se marca que no se va a recibir, falta validación
If Not ErrorMovInv AndAlso Not ObjCompras.UpdateEstatusAlmacen(CveCompra, 1, UsuarioActual.CveUsuario) Then
ErrorMovInv = True
@@ -7687,10 +7721,10 @@ Partial Class Compras_Compras
If Not ErrorPrepoliza AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, Opcion:=4, AutoConta:=AutoConta) Then
TieneError = True
- 'If ObjConta.ValorPolizaDescuadre > 0 Then
- ' Alert($"{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia}", TipoMensaje.MsgError)
- ' ErrorPrepolizaDescuadre = True
- 'End If
+ If ObjConta.ValorPolizaDescuadre > 0 AndAlso UsuarioActual.CveRol = 1 Then
+ Alert($"{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia}", TipoMensaje.MsgError)
+ ErrorPrepolizaDescuadre = True
+ End If
End If
diff --git a/Inventarios/Kardex.aspx b/Inventarios/Kardex.aspx
index fa7ad4e6a..fc597ae2b 100644
--- a/Inventarios/Kardex.aspx
+++ b/Inventarios/Kardex.aspx
@@ -136,7 +136,7 @@
Caducidad de producto
- Existecias por capas
+ Existencias por capas
Ayuda
@@ -646,6 +646,7 @@
+
diff --git a/Inventarios/Kardex.aspx.vb b/Inventarios/Kardex.aspx.vb
index de836aa38..201d4f049 100644
--- a/Inventarios/Kardex.aspx.vb
+++ b/Inventarios/Kardex.aspx.vb
@@ -586,8 +586,13 @@ Partial Class Inventarios_Kardex
Dim FechaI As DateTime = If(TxtFechaI.Text <> "" AndAlso TxtFechaI.Text <> "__/__/____", TxtFechaI.Text.ToDateTime(), MinFecha)
Dim FechaF As DateTime = If(TxtFechaF.Text <> "" AndAlso TxtFechaF.Text <> "__/__/____", TxtFechaF.Text.ToDateTime(), MaxFecha)
+ Dim almacenes = ddlAlmacen.GetSelectedValues()
+ If String.IsNullOrEmpty(almacenes) Then
+ almacenes = "-1"
+ End If
+
Using ObjInv As New ClsInventarios
- If ObjInv.GetInvExistenciasCapas(ddlProducto2.SelectedValue.ToEntero(), FechaI, FechaF, UsuarioActual.CveEmpresa, ddlAlmacen.GetSelectedValues()) Then
+ If ObjInv.GetInvExistenciasCapas(ddlProducto2.SelectedValue.ToEntero(), FechaI, FechaF, UsuarioActual.CveEmpresa, almacenes) Then
GvExistenciasCapas.DataSource = ObjInv.DtResultados
End If
End Using
diff --git a/OC/OC.aspx b/OC/OC.aspx
index a32cd644a..b044e98f4 100644
--- a/OC/OC.aspx
+++ b/OC/OC.aspx
@@ -178,6 +178,7 @@
+
@@ -696,7 +697,7 @@
-
+
@@ -946,7 +947,7 @@
-
+
@@ -1704,7 +1705,7 @@
|
-
+
|
diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb
index 29b1e46d1..ba29176e6 100644
--- a/OC/OC.aspx.vb
+++ b/OC/OC.aspx.vb
@@ -661,11 +661,12 @@ Partial Class OC_OC
CargarCentrosDeCosto(Nothing, DdlSubProyectoEntrega, Nothing, Nothing, "Seleccione")
If UsuarioActual.CveEmpresa = 189 Then
- 'GlobalDTOCEstatusUsuarios(CveEmpresaActual, UsuarioActual.CveUsuario, TipoOC)
+
DdlSubProyectoGral.DataSource = GlobalDTOCEstatusUsuarios(CveEmpresaActual, UsuarioActual.CveUsuario, TipoOC).FiltraParametros("", "SubProyecto", DistinctColumns:={"CveSubProyecto", "SubProyecto"})
DdlSubProyectoGral.DataBind()
DdlSubProyectoGral.Items.Insert(0, New ListItem("Seleccione uno", "-1"))
DdlSubProyectoGral.SelectedValueExist(UsuarioActual.CveSubProyecto)
+
TdProyectoSubPrpyectoDdl.Visible = False
TdProyectoSubPrpyecto.Visible = False
GvD.Columns(4).Visible = False
@@ -1014,6 +1015,9 @@ Partial Class OC_OC
If UsuarioActual.CveRol = 1 Then
TrDescuentoEscalonado.Visible = True
TrDescuentoProntoPago.Visible = True
+ End If
+
+ If UsuarioActual.Empresa.CveEmpresa = 189 AndAlso CveOrdenCompra <> Nothing AndAlso CveOrdenCompra > 0 Then
BtnEdicionMasiva.Visible = True
End If
@@ -1577,6 +1581,21 @@ Partial Class OC_OC
TxtPorcentajeProntoPago.Text = (100 * objOC.PorcentajeProntoPago).ToString("###.00")
If UsuarioActual.CveEmpresa = 189 Then
+ Dim existeCvesubproyecto As Boolean = False
+ If objOC.DtResultados.Rows(0)("CveSubProyectoGral").ToString.ToEntero > 0 Then
+ For Each tmpItem As ListItem In DdlSubProyectoGral.Items
+ If tmpItem.Value.ToEntero = objOC.DtResultados.Rows(0)("CveSubProyectoGral").ToString.ToEntero Then
+ existeCvesubproyecto = True
+ Exit For
+ End If
+ Next
+ End If
+
+ If Not existeCvesubproyecto Then
+ Dim tmpSubProyecto As String = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, objOC.DtResultados.Rows(0)("CveSubProyectoGral").ToString.ToEntero, -1).FiltroPrimeroValor("SubProyecto")
+ DdlSubProyectoGral.Items.Add(New ListItem(tmpSubProyecto, objOC.DtResultados.Rows(0)("CveSubProyectoGral").ToString))
+ End If
+
DdlSubProyectoGral.SelectedValueExist(objOC.DtResultados.Rows(0)("CveSubProyectoGral").ToString)
End If
@@ -1609,7 +1628,7 @@ Partial Class OC_OC
HLGenerarVenta.Visible = True
HLGenerarVenta.NavigateUrl = $"/Ventas/Ventas.aspx?CveOC={pCveOrdenCompra}"
- lblFolio.Text = String.Format("OC {0}", objOC.Folio)
+ lblFolio.Text = String.Format("OC {0}", objOC.SerieFolio)
lblTipoPadreHijo.Text = "REQ"
ChkCotizacion.Visible = False
@@ -1672,7 +1691,7 @@ Partial Class OC_OC
Case "REQ"
ViewState("TipoOC") = objOC.Tipo
ViewState("TipoLargo") = "Requisición"
- lblFolio.Text = "REQ " + objOC.Folio.ToString
+ lblFolio.Text = "REQ " + objOC.SerieFolio.ToString
lblTipoPadreHijo.Text = "OC"
ChkCotizacion.Visible = True
DdlProveedores.SelectedValue = objOC.CveProveedor.ToString
@@ -1694,7 +1713,7 @@ Partial Class OC_OC
Case "OS"
ViewState("TipoOC") = "REQ"
ViewState("TipoLargo") = "Orden de Servicio"
- lblFolio.Text = "OS " + objOC.Folio.ToString
+ lblFolio.Text = "OS " + objOC.SerieFolio.ToString
'lblTipoPadreHijo.Text = "OC"
ChkCotizacion.Visible = True
TipoOS = True
@@ -9515,6 +9534,7 @@ Partial Class OC_OC
End If
+ RegistraScript("$(document).ready(function() {setTimeout(function() {document.getElementById('DVSeccionGVD').scrollIntoView({ behavior: 'smooth' }); }, 250);});", "100")
UPPDetalle.Update()
@@ -9603,6 +9623,7 @@ Partial Class OC_OC
CargaDatosDetalles()
+
Return True
End Function
diff --git a/OS/OrdenesServicios.aspx b/OS/OrdenesServicios.aspx
index 713b9ab26..dbc6ce8af 100644
--- a/OS/OrdenesServicios.aspx
+++ b/OS/OrdenesServicios.aspx
@@ -529,7 +529,9 @@
-
+
+
+
diff --git a/OS/OrdenesServicios.aspx.vb b/OS/OrdenesServicios.aspx.vb
index 2410af31a..c19e0616e 100644
--- a/OS/OrdenesServicios.aspx.vb
+++ b/OS/OrdenesServicios.aspx.vb
@@ -5,6 +5,8 @@ Imports Extensiones
Imports System.IO
Imports System.Data
Imports System.Data.SqlClient
+Imports System.Diagnostics
+Imports System.ServiceModel.Security
Partial Class OS_OrdenesServicios
Inherits ClsPaginas
@@ -470,6 +472,13 @@ Partial Class OS_OrdenesServicios
DVUsuarioAtendio3.Visible = True
End If
End If
+
+ If TipoEstatus.Contiene(1, 2, 3, 4) And CveVenta <= 0 Then
+ BtnCancelar.Visible = True
+ Else
+ BtnGuardar.Visible = False
+ End If
+
End If
End Sub
@@ -911,7 +920,13 @@ Partial Class OS_OrdenesServicios
End Sub
Private Sub CargaEstatusOS()
DdlEstatusOS.Items.Clear()
- DdlEstatusOS.DataSource = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa)
+ If TipoEstatus = 5 Then
+ DdlEstatusOS.DataSource = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa)
+ DdlEstatusOS.Enabled = False
+ Else
+ DdlEstatusOS.DataSource = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltraParametros(" TipoEstatus <> 5 ")
+ End If
+
DdlEstatusOS.DataBind()
'DdlEstatusOS.SelectedValue = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", "TipoEstatus = 1", "Orden ASC")
End Sub
@@ -3579,4 +3594,58 @@ Partial Class OS_OrdenesServicios
End If
End If
End Sub
+
+ Protected Sub BtnCancelar_Click(sender As Object, e As EventArgs)
+
+
+ Dim CveEstatusOrdenServicioCancelacion As Integer = GlobalDTEstatusOrdenServicios(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveEstatusOrdenServicio", " TipoEstatus = 5 ").ToEntero
+ Dim CveAlmacenDevolucion As Integer
+ Dim CveMotivoCancelacion As Integer = GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveMotivoCancelacion", "CveSATMotivoCancelacion IN (3)").ToEntero
+
+ If Not CveEstatusOrdenServicioCancelacion > 0 Then
+ Alert("No se encontro el esatus de cancelacion", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ If Not CveMotivoCancelacion > 0 Then
+ Alert("No se encontro la clave el motivo de cancelacion", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ Dim ObjFacturaCancelacion As New Modelos.Factura(UsuarioActual, CvePedido, UsuarioActual.CveEmpresa, EsCancelacion:=True, VerificaAlmacen:=True)
+
+ Try
+
+ Dim resp As Modelos.Factura.MCancelacionVentaMensaje = Nothing
+
+ If ObjFacturaCancelacion IsNot Nothing AndAlso ObjFacturaCancelacion.CveVenta > 0 Then
+
+ Dim SWatch As New Stopwatch
+ SWatch.Start()
+
+ Dim DevAlm As Boolean = True
+
+ ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion
+
+ resp = ObjFacturaCancelacion.CancelarFactura(2, New List(Of Integer), CveMotivoCancelacion:=CveMotivoCancelacion, Motivo:="Cancelacion de Orden de servicio")
+
+ If resp.HuboError Then
+ Alert($"Se presento un error al cancelar la orden de servicio, {resp.Mensaje}".ToString(), TipoMensaje.MsgError)
+ Else
+ Alert($"la orden de servicio se cancelada correctamente, {resp.Mensaje}", resp.TipoMensaje, " location.reload(true); ")
+
+ Dim objGeneral As New ClsGenerales
+ objGeneral.AddHistorialBitacora(256, -1, -1, -1, CveOS, -1, -1, -1, "Cancelada", DdlEstatusOS.SelectedItem.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 0, "", "", "")
+ objGeneral.Dispose()
+
+
+ End If
+
+ End If
+
+ Catch ex As Exception
+ Alert("Se presento un error al cancelar la orden de servicio")
+ End Try
+
+ End Sub
End Class
\ No newline at end of file
diff --git a/PortalCliente/PortalCliente.aspx.vb b/PortalCliente/PortalCliente.aspx.vb
index a52d8ebde..2c06bdd99 100644
--- a/PortalCliente/PortalCliente.aspx.vb
+++ b/PortalCliente/PortalCliente.aspx.vb
@@ -1741,7 +1741,7 @@ Partial Class Ventas_PortalCliente
If GvRow.DataKey("CveVenta").ToEntero() > 0 Then
Dim ObjFactura As New Modelos.Factura(UsuarioActual, GvRow.DataKey("CveVenta").ToEntero(), UsuarioActual.CveEmpresa)
If ObjFactura IsNot Nothing Then
- Dim Resp = ObjFactura.CancelarFactura(RealizarDevolucionAlmacen:=False, ListaRemisionesCancelar:=New List(Of Integer))
+ Dim Resp = ObjFactura.CancelarFactura(0, ListaRemisionesCancelar:=New List(Of Integer))
Alert(Resp.Mensaje, If(Resp.HuboError, TipoMensaje.MsgError, TipoMensaje.MsgInformacion))
End If
Else
diff --git a/RH/CatPersonal.aspx b/RH/CatPersonal.aspx
index 943b7d063..7508c99b0 100644
--- a/RH/CatPersonal.aspx
+++ b/RH/CatPersonal.aspx
@@ -462,19 +462,19 @@
- MetodoPago
+ Metodo de Pago
- TipoContrato
+ Tipo Contrato
- MotivoBaja
+ Motivo Baja
@@ -486,7 +486,7 @@
- FechaIngreso
+ Fecha Ingreso
@@ -502,13 +502,13 @@
- SalarioDiarioPago
+ Salario Diario Pago
- SalarioDiario
+ Salario Diario
@@ -520,7 +520,7 @@
- SalarioDiarioSS
+ Salario DiarioSS
@@ -532,37 +532,37 @@
- NumDiasAguinaldo
+ Num Dias Aguinaldo
- PorPrimaVacacional
+ Por Prima Vacacional
- Ubicacion
+ Ubicación
- FechaNacimiento
+ Fecha Nacimiento
- LugarNacimiento
+ Lugar Nacimiento
- Direccion
+ Dirección
@@ -604,19 +604,19 @@
- NombrePadre
+ Nombre Padre
- NombreMadre
+ Nombre Madre
- ClienteAsignado
+ Cliente Asignado
@@ -669,6 +669,12 @@
+
+ Correo Personal
+
+
+
+
@@ -749,7 +755,7 @@
diff --git a/RH/CatPersonal.aspx.vb b/RH/CatPersonal.aspx.vb
index 5f0caa47a..31984727b 100644
--- a/RH/CatPersonal.aspx.vb
+++ b/RH/CatPersonal.aspx.vb
@@ -349,272 +349,55 @@ Partial Class RH_CatPersonal
#Region "P E R Z O N A L I Z A R"
Protected Sub BtnPersonalizar_Click(sender As Object, e As System.EventArgs) Handles BtnPersonalizar.Click
-
- If ChkCodigo.Checked Then
- GvDatos.Columns(0).Visible = True
- Else
- GvDatos.Columns(0).Visible = False
- End If
-
- If ChkNombre.Checked Then
- GvDatos.Columns(1).Visible = True
- Else
- GvDatos.Columns(1).Visible = False
- End If
-
- If ChkNSS.Checked Then
- GvDatos.Columns(2).Visible = True
- Else
- GvDatos.Columns(2).Visible = False
- End If
-
- If ChlRFC.Checked Then
- GvDatos.Columns(3).Visible = True
- Else
- GvDatos.Columns(3).Visible = False
- End If
-
- If ChkTurno.Checked Then
- GvDatos.Columns(4).Visible = True
- Else
- GvDatos.Columns(4).Visible = False
- End If
-
- If ChkPuesto.Checked Then
- GvDatos.Columns(5).Visible = True
- Else
- GvDatos.Columns(5).Visible = False
- End If
-
- If ChkDepartamento.Checked Then
- GvDatos.Columns(6).Visible = True
- Else
- GvDatos.Columns(6).Visible = False
- End If
-
- If ChkRuta.Checked Then
- GvDatos.Columns(7).Visible = True
- Else
- GvDatos.Columns(7).Visible = False
- End If
-
- If ChkEscolaridad.Checked Then
- GvDatos.Columns(8).Visible = True
- Else
- GvDatos.Columns(8).Visible = False
- End If
-
- If ChkEstadoCivil.Checked Then
- GvDatos.Columns(9).Visible = True
- Else
- GvDatos.Columns(9).Visible = False
- End If
-
- If ChkGenero.Checked Then
- GvDatos.Columns(10).Visible = True
- Else
- GvDatos.Columns(10).Visible = False
- End If
-
- If ChkEstatusPersonal.Checked Then
- GvDatos.Columns(11).Visible = True
- Else
- GvDatos.Columns(11).Visible = False
- End If
-
- If ChkSubProyecto.Checked Then
- GvDatos.Columns(12).Visible = True
- Else
- GvDatos.Columns(12).Visible = False
- End If
-
- If ChkSupervisor.Checked Then
- GvDatos.Columns(13).Visible = True
- Else
- GvDatos.Columns(13).Visible = False
- End If
-
- If ChkTipoPeriodo.Checked Then
- GvDatos.Columns(14).Visible = True
- Else
- GvDatos.Columns(14).Visible = False
- End If
-
- If ChkMetodoPago.Checked Then
- GvDatos.Columns(15).Visible = True
- Else
- GvDatos.Columns(15).Visible = False
- End If
-
- If ChkTipoContrato.Checked Then
- GvDatos.Columns(16).Visible = True
- Else
- GvDatos.Columns(16).Visible = False
- End If
-
- If ChkMotivoBaja.Checked Then
- GvDatos.Columns(17).Visible = True
- Else
- GvDatos.Columns(17).Visible = False
- End If
-
- If ChkProyecto.Checked Then
- GvDatos.Columns(18).Visible = True
- Else
- GvDatos.Columns(18).Visible = False
- End If
-
- If ChkFechaIngreso.Checked Then
- GvDatos.Columns(19).Visible = True
- Else
- GvDatos.Columns(19).Visible = False
- End If
- If ChkSeInscribioSS.Checked Then
- GvDatos.Columns(20).Visible = True
- Else
- GvDatos.Columns(20).Visible = False
- End If
- If ChkSalarioDiarioPago.Checked Then
- GvDatos.Columns(21).Visible = True
- Else
- GvDatos.Columns(21).Visible = False
- End If
- If ChkSalarioDiario.Checked Then
- GvDatos.Columns(22).Visible = True
- Else
- GvDatos.Columns(22).Visible = False
- End If
-
- If ChkSDI.Checked Then
- GvDatos.Columns(23).Visible = True
- Else
- GvDatos.Columns(23).Visible = False
- End If
-
- If ChkSalarioDiarioSS.Checked Then
- GvDatos.Columns(24).Visible = True
- Else
- GvDatos.Columns(24).Visible = False
- End If
-
- If ChkBono.Checked Then
- GvDatos.Columns(25).Visible = True
- Else
- GvDatos.Columns(25).Visible = False
- End If
-
- If ChkNumDiasAguinaldo.Checked Then
- GvDatos.Columns(26).Visible = True
- Else
- GvDatos.Columns(26).Visible = False
- End If
-
- If ChkPorPrimaVacacional.Checked Then
- GvDatos.Columns(27).Visible = True
- Else
- GvDatos.Columns(27).Visible = False
- End If
-
- If ChkUbicacion.Checked Then
- GvDatos.Columns(28).Visible = True
- Else
- GvDatos.Columns(28).Visible = False
- End If
-
- If ChkFechaNacimiento.Checked Then
- GvDatos.Columns(29).Visible = True
- Else
- GvDatos.Columns(29).Visible = False
- End If
-
- If ChkLugarNacimiento.Checked Then
- GvDatos.Columns(30).Visible = True
- Else
- GvDatos.Columns(30).Visible = False
- End If
-
- If ChkDireccion.Checked Then
- GvDatos.Columns(31).Visible = True
- Else
- GvDatos.Columns(31).Visible = False
- End If
-
- If ChkCP.Checked Then
- GvDatos.Columns(32).Visible = True
- Else
- GvDatos.Columns(32).Visible = False
- End If
-
- If ChkCiudad.Checked Then
- GvDatos.Columns(33).Visible = True
- Else
- GvDatos.Columns(33).Visible = False
- End If
-
- If ChkEstado.Checked Then
- GvDatos.Columns(34).Visible = True
- Else
- GvDatos.Columns(34).Visible = False
- End If
-
- If ChkTelefono.Checked Then
- GvDatos.Columns(35).Visible = True
- Else
- GvDatos.Columns(35).Visible = False
- End If
-
- If ChkCelular.Checked Then
- GvDatos.Columns(36).Visible = True
- Else
- GvDatos.Columns(36).Visible = False
- End If
-
- If ChkCURP.Checked Then
- GvDatos.Columns(37).Visible = True
- Else
- GvDatos.Columns(37).Visible = False
- End If
- If ChkNombrePadre.Checked Then
- GvDatos.Columns(38).Visible = True
- Else
- GvDatos.Columns(38).Visible = False
- End If
- If ChkNombreMadre.Checked Then
- GvDatos.Columns(39).Visible = True
- Else
- GvDatos.Columns(39).Visible = False
- End If
-
- If ChkClienteAsignado.Checked Then
- GvDatos.Columns(40).Visible = True
- Else
- GvDatos.Columns(40).Visible = False
- End If
-
- If ChkUsuario.Checked Then
- GvDatos.Columns(42).Visible = True
- Else
- GvDatos.Columns(42).Visible = False
- End If
- If ChkRiesgoPuesto.Checked Then
- GvDatos.Columns(43).Visible = True
- Else
- GvDatos.Columns(43).Visible = False
- End If
- If ChkRegistroPatronal.Checked Then
- GvDatos.Columns(44).Visible = True
- Else
- GvDatos.Columns(44).Visible = False
- End If
- If ChkTipodeSalario.Checked Then
- GvDatos.Columns(45).Visible = True
- Else
- GvDatos.Columns(45).Visible = False
- End If
+ GvDatos.Columns(0).Visible = ChkCodigo.Checked
+ GvDatos.Columns(1).Visible = ChkNombre.Checked
+ GvDatos.Columns(2).Visible = ChkNSS.Checked
+ GvDatos.Columns(3).Visible = ChlRFC.Checked
+ GvDatos.Columns(4).Visible = ChkTurno.Checked
+ GvDatos.Columns(5).Visible = ChkPuesto.Checked
+ GvDatos.Columns(6).Visible = ChkDepartamento.Checked
+ GvDatos.Columns(7).Visible = ChkRuta.Checked
+ GvDatos.Columns(8).Visible = ChkEscolaridad.Checked
+ GvDatos.Columns(9).Visible = ChkEstadoCivil.Checked
+ GvDatos.Columns(10).Visible = ChkGenero.Checked
+ GvDatos.Columns(11).Visible = ChkEstatusPersonal.Checked
+ GvDatos.Columns(12).Visible = ChkSubProyecto.Checked
+ GvDatos.Columns(13).Visible = ChkSupervisor.Checked
+ GvDatos.Columns(14).Visible = ChkTipoPeriodo.Checked
+ GvDatos.Columns(15).Visible = ChkMetodoPago.Checked
+ GvDatos.Columns(16).Visible = ChkTipoContrato.Checked
+ GvDatos.Columns(17).Visible = ChkMotivoBaja.Checked
+ GvDatos.Columns(18).Visible = ChkProyecto.Checked
+ GvDatos.Columns(19).Visible = ChkFechaIngreso.Checked
+ GvDatos.Columns(20).Visible = ChkSeInscribioSS.Checked
+ GvDatos.Columns(21).Visible = ChkSalarioDiarioPago.Checked
+ GvDatos.Columns(22).Visible = ChkSalarioDiario.Checked
+ GvDatos.Columns(23).Visible = ChkSDI.Checked
+ GvDatos.Columns(24).Visible = ChkSalarioDiarioSS.Checked
+ GvDatos.Columns(25).Visible = ChkBono.Checked
+ GvDatos.Columns(26).Visible = ChkNumDiasAguinaldo.Checked
+ GvDatos.Columns(27).Visible = ChkPorPrimaVacacional.Checked
+ GvDatos.Columns(28).Visible = ChkUbicacion.Checked
+ GvDatos.Columns(29).Visible = ChkFechaNacimiento.Checked
+ GvDatos.Columns(30).Visible = ChkLugarNacimiento.Checked
+ GvDatos.Columns(31).Visible = ChkDireccion.Checked
+ GvDatos.Columns(32).Visible = ChkCP.Checked
+ GvDatos.Columns(33).Visible = ChkCiudad.Checked
+ GvDatos.Columns(34).Visible = ChkEstado.Checked
+ GvDatos.Columns(35).Visible = ChkTelefono.Checked
+ GvDatos.Columns(36).Visible = ChkCelular.Checked
+ GvDatos.Columns(37).Visible = ChkCURP.Checked
+ GvDatos.Columns(38).Visible = ChkNombrePadre.Checked
+ GvDatos.Columns(39).Visible = ChkNombreMadre.Checked
+ GvDatos.Columns(40).Visible = ChkClienteAsignado.Checked
+ GvDatos.Columns(42).Visible = ChkUsuario.Checked
+ GvDatos.Columns(43).Visible = ChkRiesgoPuesto.Checked
+ GvDatos.Columns(44).Visible = ChkRegistroPatronal.Checked
+ GvDatos.Columns(45).Visible = ChkTipodeSalario.Checked
GvDatos.Columns(46).Visible = ChkBanco.Checked
GvDatos.Columns(47).Visible = ChkCuentaBancaria.Checked
- GvDatos.Columns(48).Visible = ChkClaBE.Checked
-
+ GvDatos.Columns(48).Visible = ChkCLABE.Checked
+ GvDatos.Columns(49).Visible = ChkCorreo.Checked
If (GvDatos.Rows.Count > 0) Then
GvDatos.UseAccessibleHeader = True
diff --git a/Transportes/RepBoletos.aspx.vb b/Transportes/RepBoletos.aspx.vb
index 11e309130..45385581d 100644
--- a/Transportes/RepBoletos.aspx.vb
+++ b/Transportes/RepBoletos.aspx.vb
@@ -78,7 +78,7 @@ Partial Class ListadoBoletos
If ObjRem.DtDetalle.Rows.Count > 0 Then
'SI SOLO TIENE UNA PARTIDA CANCELAR LA REMISION
If ObjRem.DtDetalle.Rows.Count = 1 OrElse BoletosVigentes <= 1 Then
- Dim RespCancelacion = ObjRem.CancelarFactura(False, ValidarSAT:=False, CancelarBoletos:=True, ListaRemisionesCancelar:=New List(Of Integer))
+ Dim RespCancelacion = ObjRem.CancelarFactura(0, ValidarSAT:=False, CancelarBoletos:=True, ListaRemisionesCancelar:=New List(Of Integer))
If RespCancelacion IsNot Nothing Then
TieneError = RespCancelacion.HuboError
Else
diff --git a/Ventas/RepCancelacionesPorRespuesta.aspx.cs b/Ventas/RepCancelacionesPorRespuesta.aspx.cs
index ba4f8cd91..5c4189503 100644
--- a/Ventas/RepCancelacionesPorRespuesta.aspx.cs
+++ b/Ventas/RepCancelacionesPorRespuesta.aspx.cs
@@ -572,7 +572,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
//SI REGISTRA SALIDA DE ALMACÉN EN AUTOMÁTICO Y ES DEVOLUCION QUE REALIZE EL MOVMIENTO DE SALIDA DE ALMACEN
if ((UsuarioActual.Empresa.Funcionalidad(567) == "1" || UsuarioActual.Empresa.Funcionalidad(531) == "1") && factura.TipoDocto == "Dev" && factura.SaldoAlmacen != 0)
{
- factura.RealizarDevolucionAlmacen = true;
+ factura.RealizarDevolucionAlmacen = 1;
}
bool AplicaCancelacionConPagos = false;
@@ -583,7 +583,7 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
if (UsuarioActual.TienePermisoProceso(269) && UsuarioActual.Empresa.Funcionalidad(109) == "1" && factura.TipoDocto == "Ing" && factura.SaldoAlmacen != 0)
{
- factura.RealizarDevolucionAlmacen = true;
+ factura.RealizarDevolucionAlmacen = 1;
}
retorno = factura.EjecutarCancelacionPendiente(CveEstatus, CancelacionFecha, CancelacionAcuse, AplicaCancelacionConPagos: AplicaCancelacionConPagos);
diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb
index 73147059c..1916c9590 100644
--- a/Ventas/Ventas.aspx.vb
+++ b/Ventas/Ventas.aspx.vb
@@ -12033,7 +12033,7 @@ Partial Class Ventas
Dim ForzarAjuste As Boolean = False
'EL IMPORTE DE NC NO PUEDE SER MAYOR AL DE LA FACTURA
- If UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso (tTipoAmortizacion = 1) Then
+ If (tTipoAmortizacion = 1) Then
ForzarAjuste = True
End If
@@ -12103,7 +12103,7 @@ Partial Class Ventas
'**** IMPUESTOS LOCALES
factura.DtDetalle = tmpcon
- Dim TotalSubTotal As Decimal = tmpcon.SUMD("TotalImporte").RoundSQL(2)
+ Dim TotalSubTotal As Decimal = tmpcon.SUMD("TotalImporte")
Dim TotalDescuentos As Decimal = tmpcon.SUMD("Descuento")
Dim TotalIVA As Decimal = tmpcon.SUMD("ImporteIVA")
@@ -26067,7 +26067,9 @@ Partial Class Ventas
AplicaCancelacionConPagos = True
End If
- resp = ObjFacturaCancelacion.CancelarFactura(ChkDevAlm.Checked, ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion, AplicaCancelacionConPagos:=AplicaCancelacionConPagos)
+
+
+ resp = ObjFacturaCancelacion.CancelarFactura(If(ChkDevAlm.Checked, 1, 0), ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion, AplicaCancelacionConPagos:=AplicaCancelacionConPagos)
strMensaje.Append(resp.Mensaje)
Dim DtBonificaciones As DataTable = Nothing
@@ -26084,7 +26086,7 @@ Partial Class Ventas
Try
'VERIFICA SI TIENE RNC DE BONIFICACION
Dim Bon As New Modelos.Factura(UsuarioActual, RowBon("CveVentaBonificacion").ToString().ToEntero(), UsuarioActual.CveEmpresa, VerificaAlmacen:=False)
- Dim respBon As Modelos.Factura.MCancelacionVentaMensaje = Bon.CancelarFactura(False, ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion)
+ Dim respBon As Modelos.Factura.MCancelacionVentaMensaje = Bon.CancelarFactura(0, ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion)
If respBon.HuboError Then
strMensaje.AppendFormat("
Ocurrió un error al cancelar la remisión de NC de bonificación {0} .", Bon.SerieFolio)
Else
@@ -30645,7 +30647,7 @@ Partial Class Ventas
Dim ImporteReferencia As Decimal = If(NivelTotal = 1, Total, SubTotal)
- Dim Porcentaje As Decimal = ((Importe * 100) / ImporteReferencia) / 100
+ Dim Porcentaje As Decimal = ((Importe * 100D) / ImporteReferencia) / 100D
Dim FiltroStr As String = ""
Dim TotalImpuestosLocalesVentaOriginal As Decimal = 0
@@ -30653,7 +30655,7 @@ Partial Class Ventas
'CALCULA LO EQUIVALENTE EN IMPUSTOS LOCALES
If TmpDTImpuestos IsNot Nothing AndAlso TmpDTImpuestos.Rows.Count > 0 Then
- TotalImpuestosLocalesVentaOriginal = TmpDTImpuestos.SUM("Importe")
+ TotalImpuestosLocalesVentaOriginal = TmpDTImpuestos.SUMD("Importe")
TotalImpuestosLocalesRecalculado = TotalImpuestosLocalesVentaOriginal * Porcentaje
End If
@@ -30667,7 +30669,7 @@ Partial Class Ventas
For Each Dr As DataRow In DtImpuestosLocal.Rows
FiltroStr = String.Format("ISNULL(PorcentajeIVA,0) = {0} AND ISNULL(PorcentajeRetIVA,0) = {1} AND ISNULL(PorcentajeRetISR,0) = {2} AND ISNULL(PorcentajeIEPS,0) = {3} AND ISNULL(CveSubProyecto,0) = {4} ", Dr("PorcentajeIVA").ToString().ToDecimal, Dr("PorcentajeRetIVA").ToString().ToDecimal, Dr("PorcentajeRetISR").ToString().ToDecimal, Dr("PorcentajeIEPS").ToString().ToDecimal, Dr("CveSubProyecto"))
Dim importePuTemp As Decimal = 0
- importePuTemp = (Porcentaje * (TmpDT.SUM("TotalImporte", FiltroStr) - TmpDT.SUM("Descuento", FiltroStr)))
+ importePuTemp = (Porcentaje * (TmpDT.SUMD("TotalImporte", FiltroStr) - TmpDT.SUMD("Descuento", FiltroStr)))
Dim DescuentoAplicado As Decimal = 0
If AplicaDescuentos Then