Guardar RFCReceptor en ventas.aspx
This commit is contained in:
@@ -5942,6 +5942,19 @@ Public Class ClsPaginas
|
||||
Dim TipoDocumentoRef As String = ""
|
||||
Dim AplicaPagare As String = "1"
|
||||
|
||||
Dim RFCReceptor As String = ""
|
||||
|
||||
If String.IsNullOrEmpty(Vta.RFCReceptor) Then
|
||||
RFCReceptor = Vta.Cliente.RFC
|
||||
If Vta.FacturarSucursal Then
|
||||
If Vta.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = Vta.ClienteSucursal.RFC
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
RFCReceptor = Vta.RFCReceptor
|
||||
End If
|
||||
|
||||
Dim RutaCBB As String = String.Format("{0}CBB\{1}.jpg", Ruta, Vta.SerieFolio)
|
||||
Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
|
||||
Dim ImgCBB As String '= String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
|
||||
@@ -6071,7 +6084,7 @@ Public Class ClsPaginas
|
||||
'Si no tiene CBB, SE GENERA
|
||||
If Not ImagenCBB.Exists Then
|
||||
Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
|
||||
CBB.GenerarCBB(UsuarioActual.Empresa.RFC, Vta.Cliente.RFC, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
|
||||
CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
|
||||
End If
|
||||
ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
|
||||
|
||||
@@ -6086,7 +6099,7 @@ Public Class ClsPaginas
|
||||
|
||||
'CLIENTE
|
||||
params.Add(New CrystalParametro("ClienteCodigo", Vta.Cliente.Codigo))
|
||||
params.Add(New CrystalParametro("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.RFC = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
|
||||
params.Add(New CrystalParametro("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso RFCReceptor = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
|
||||
params.Add(New CrystalParametro("ClienteDireccion", ClienteDireccion))
|
||||
params.Add(New CrystalParametro("ClienteLugar", ClienteLugar))
|
||||
|
||||
@@ -6118,7 +6131,7 @@ Public Class ClsPaginas
|
||||
params.Add(New CrystalParametro("SelloSAT", Vta.SelloSAT))
|
||||
|
||||
params.Add(New CrystalParametro("QR", ImgCBB))
|
||||
params.Add(New CrystalParametro("ClienteRFC", Vta.Cliente.RFC))
|
||||
params.Add(New CrystalParametro("ClienteRFC", RFCReceptor))
|
||||
params.Add(New CrystalParametro("FormaPago", Vta.FormaPagoText))
|
||||
params.Add(New CrystalParametro("Moneda", Vta.Moneda))
|
||||
params.Add(New CrystalParametro("TipoCambio", Vta.TipoCambio.ToString))
|
||||
@@ -6454,7 +6467,18 @@ Public Class ClsPaginas
|
||||
Dim NombreArchivoDescarga As String = ""
|
||||
Dim TipoDocumento As String = ""
|
||||
Dim TipoDocumentoRef As String = ""
|
||||
Dim RFCReceptor As String = ""
|
||||
|
||||
If String.IsNullOrEmpty(Vta.RFCReceptor) Then
|
||||
RFCReceptor = Vta.Cliente.RFC
|
||||
If Vta.FacturarSucursal Then
|
||||
If Vta.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = Vta.ClienteSucursal.RFC
|
||||
End If
|
||||
End If
|
||||
Else
|
||||
RFCReceptor = Vta.RFCReceptor
|
||||
End If
|
||||
|
||||
Dim RutaCBB As String = String.Format("{0}CBB\{1}.jpg", Ruta, Vta.SerieFolio)
|
||||
Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
|
||||
@@ -6609,7 +6633,7 @@ Public Class ClsPaginas
|
||||
'Si no tiene CBB, SE GENERA
|
||||
If Not ImagenCBB.Exists AndAlso Vta.CveCliente.ToEntero > 0 Then
|
||||
Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
|
||||
CBB.GenerarCBB(UsuarioActual.Empresa.RFC, Vta.Cliente.RFC, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
|
||||
CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
|
||||
End If
|
||||
ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
|
||||
|
||||
@@ -6627,17 +6651,17 @@ Public Class ClsPaginas
|
||||
'CLIENTE
|
||||
If Vta.CveCliente.ToEntero > 0 Or Vta.CveEmpresaCRM.ToEntero > 0 Then
|
||||
params.Add(New ReportParameter("ClienteCodigo", Vta.Cliente.Codigo))
|
||||
params.Add(New ReportParameter("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.RFC = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
|
||||
params.Add(New ReportParameter("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso RFCReceptor = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
|
||||
params.Add(New ReportParameter("ClienteDireccion", ClienteDireccion))
|
||||
params.Add(New ReportParameter("ClienteLugar", ClienteLugar))
|
||||
params.Add(New ReportParameter("ClienteRFC", Vta.Cliente.RFC))
|
||||
params.Add(New ReportParameter("ClienteRFC", RFCReceptor))
|
||||
End If
|
||||
If Vta.CveEmpresaCRM.ToEntero > 0 Then
|
||||
params.Add(New ReportParameter("ClienteCodigo", Vta.Cliente.Codigo))
|
||||
params.Add(New ReportParameter("ClienteNombre", Vta.Cliente.Nombre))
|
||||
params.Add(New ReportParameter("ClienteDireccion", ClienteDireccion))
|
||||
params.Add(New ReportParameter("ClienteLugar", ClienteLugar))
|
||||
params.Add(New ReportParameter("ClienteRFC", Vta.Cliente.RFC))
|
||||
params.Add(New ReportParameter("ClienteRFC", RFCReceptor))
|
||||
End If
|
||||
|
||||
'TOTALES
|
||||
|
||||
@@ -341,7 +341,7 @@ Public Class ClsVentas
|
||||
Optional CveFormaPago33 As Integer = -1, Optional CveMetodoPago33 As Integer = -1, Optional CveUsoCFDI As Integer = -1, Optional OrdenCompra As String = "-1", Optional CveCuentaTerminal As Integer = -1, Optional CveTipoRelacion As Integer = -1, Optional ImpuestoLocal As Double = 0,
|
||||
Optional CveTipoAmortizacionAnticipo As Integer = -1, Optional CveVentaRelacion As Integer = -1, Optional ImporteRelacion As Decimal = -1, Optional CveEmpresaCRM As Integer = -1, Optional EsInterno As Integer = -1, Optional CveAcercamientoCRM As Integer = -1,
|
||||
Optional DiasCredito As Integer = 0, Optional EsDiasCreditoFijo As Boolean = False, Optional AnticipoEspecial As Boolean = False, Optional Kilometraje As Double = 0, Optional EsAmortizacion As Boolean = False, Optional CveTipoRetencion As Integer = 0,
|
||||
Optional CorreoNotificacion As String = "", Optional FormaPaqueteria As Integer = 1, Optional FacturarSucursal As Boolean = False, Optional VentaDesglosaIEPS As Boolean = False, Optional ServicioDomicilio As Boolean = False) As Boolean
|
||||
Optional CorreoNotificacion As String = "", Optional FormaPaqueteria As Integer = 1, Optional FacturarSucursal As Boolean = False, Optional VentaDesglosaIEPS As Boolean = False, Optional ServicioDomicilio As Boolean = False, Optional RFCReceptor As String = "") As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_VentasAdd")
|
||||
@@ -435,6 +435,7 @@ Public Class ClsVentas
|
||||
.Add("@FacturarSucursal", SqlDbType.Bit).Value = FacturarSucursal
|
||||
.Add("@VentaDesglosaIEPS", SqlDbType.Bit).Value = VentaDesglosaIEPS
|
||||
.Add("@ServicioDomicilio", SqlDbType.Bit).Value = ServicioDomicilio
|
||||
.Add("@RFCReceptor", SqlDbType.VarChar).Value = RFCReceptor
|
||||
|
||||
.Add("@RETURN_VALUE", SqlDbType.Int).Direction = ParameterDirection.ReturnValue
|
||||
End With
|
||||
@@ -679,7 +680,7 @@ Public Class ClsVentas
|
||||
End Function
|
||||
Public Function UpdateEstatusFactura(Estatus As Integer, FolioFiscal As String, SelloSAT As String, FechaCancelacion As DateTime, CveVenta As Integer,
|
||||
Optional IdPolizaCancelacion As Integer = -1, Optional CvePAC As Integer = -1, Optional CveEstatusRefacturacion As Integer = 0,
|
||||
Optional CveUsuarioCambiaEstatus As Integer = -1, Optional FechaCambioEstatus As String = "-1") As Boolean
|
||||
Optional CveUsuarioCambiaEstatus As Integer = -1, Optional FechaCambioEstatus As String = "-1", Optional RFCReceptor As String = "-1") As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
|
||||
DataAdapter("PA_VentasUpdateEstatus")
|
||||
@@ -695,6 +696,7 @@ Public Class ClsVentas
|
||||
.Add("@CveEstatusRefacturacion", SqlDbType.TinyInt).Value = CveEstatusRefacturacion
|
||||
.Add("@CveUsuarioCambiaEstatus", SqlDbType.Int).Value = CveUsuarioCambiaEstatus
|
||||
.Add("@FechaCambioEstatus", SqlDbType.VarChar).Value = FechaCambioEstatus
|
||||
.Add("@RFCReceptor", SqlDbType.VarChar).Value = RFCReceptor
|
||||
End With
|
||||
|
||||
Try
|
||||
|
||||
@@ -1453,6 +1453,27 @@ Namespace Modelos
|
||||
|
||||
factura.CvePrePoliza = ObjConta.AddPrePolizas("Modelos/GuardarVentaM", factura.CvePlantillaPoliza, factura.TotalTC, factura.TotalTC, factura.CveMoneda, factura.Fecha, If(factura.CveEmpresaCRM > 0, factura.EmpresaCRM, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa)
|
||||
|
||||
Dim RFCReceptor As String = ""
|
||||
|
||||
If factura.Timbre IsNot Nothing AndAlso factura.Timbre.Receptor IsNot Nothing Then
|
||||
If Not String.IsNullOrEmpty(factura.Timbre.Receptor.RFC) Then
|
||||
RFCReceptor = factura.Timbre.Receptor.RFC.Trim
|
||||
End If
|
||||
End If
|
||||
|
||||
'SI NO SE VA TIMBRAR TOMA EL DEL CLIENTE
|
||||
If String.IsNullOrEmpty(RFCReceptor) Then
|
||||
If Not String.IsNullOrEmpty(factura.Cliente.RFC) Then
|
||||
RFCReceptor = factura.Cliente.RFC
|
||||
End If
|
||||
|
||||
If factura.FacturarSucursal Then
|
||||
If factura.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = factura.ClienteSucursal.RFC
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not ObjVentas.AddVenta(factura.TipoDocto, factura.Folio, factura.CveCliente, factura.CveClienteSucursal, factura.SubTotalTC, factura.DescuentoTC,
|
||||
factura.AmortizacionTC, factura.IVATC, factura.RetIVATC, factura.RetISRTC,
|
||||
factura.TotalTC, factura.CveMoneda, factura.TipoCambio, factura.CveMetodoPago, factura.CondicionesPago, factura.FormaPago, factura.FechaPago, factura.Fecha, factura.MotivoDescuento,
|
||||
@@ -1467,7 +1488,7 @@ Namespace Modelos
|
||||
PedidoContrato:=factura.PedidoContrato, ObservacionesAlmacen:=factura.ObservacionesAlmacen, CveSubProyecto:=factura.CveSubProyecto, CveSubProyectoCobranza:=factura.CveSubProyectoCobranza, CveSubProyectoEjecucion:=factura.CveSubProyectoEjecucion, CveFormaPago33:=factura.CveFormaPago33,
|
||||
CveMetodoPago33:=factura.CveMetodoPago33, CveUsoCFDI:=factura.CveUsoCFDI, OrdenCompra:=factura.OrdenCompra, CveCuentaTerminal:=factura.CveCuentaTerminal, CveTipoRelacion:=factura.CveTipoRelacion, ImpuestoLocal:=TotalImpuestoLocal,
|
||||
CveVentaRelacion:=(If(factura.CveVentaRelacion.ToEntero > 0, factura.CveVentaRelacion, -1)), ImporteRelacion:=(If(factura.ImporteRelacion <> Nothing, factura.ImporteRelacion, -1)),
|
||||
CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, ServicioDomicilio:=factura.ServicioDomicilio) Then
|
||||
CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, ServicioDomicilio:=factura.ServicioDomicilio, RFCReceptor:=RFCReceptor) Then
|
||||
|
||||
ErrorList.Add("Ocurrió un error al Generar la Venta.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
||||
|
||||
@@ -1482,6 +1503,16 @@ Namespace Modelos
|
||||
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
||||
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString
|
||||
|
||||
If factura.TipoDocto.Contiene("Dev", "Egs") OrElse DtVentasRelacionadas IsNot Nothing Then
|
||||
For Each row As DataRow In DtVentasRelacionadas.Rows
|
||||
If row("CveVenta").ToString().ToEntero() > 0 Then
|
||||
If Not ObjVentas.AddVentasRelacionadas(factura.CveVenta, row("CveVenta").ToString().ToEntero()) Then
|
||||
ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico")
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
||||
If DtVentasNC Is Nothing Then
|
||||
InicializaDTVentasNC()
|
||||
@@ -4987,6 +5018,8 @@ Namespace Modelos
|
||||
Dim TieneSalida As Boolean = False
|
||||
Dim DtInventario As DataTable = Nothing
|
||||
Dim DtSalidas As DataTable = Nothing
|
||||
Dim DtVirtuales As DataTable = Nothing
|
||||
Dim DtDevPrevias As DataTable = Nothing
|
||||
Dim DtDevoluciones As DataTable = Nothing
|
||||
Dim DtExistencias As DataTable = Nothing
|
||||
Dim DtRemisionesFacturadas As DataTable = Nothing
|
||||
@@ -5002,8 +5035,12 @@ Namespace Modelos
|
||||
|
||||
If Not ErrorCancelar Then
|
||||
Dim Filtro As String = ""
|
||||
Dim FiltroDevAlmacen As String = ""
|
||||
Select Case ObjFactura.TipoDocto
|
||||
Case "Ing", "Ped"
|
||||
Case "Ing"
|
||||
Filtro = "CveConcepto IN (3, 40)"
|
||||
FiltroDevAlmacen = "CveConcepto IN (18, 41)"
|
||||
Case "Ped"
|
||||
Filtro = "CveConcepto IN (3, 40)"
|
||||
Case "Dev"
|
||||
Filtro = "CveConcepto = 18"
|
||||
@@ -5022,6 +5059,15 @@ Namespace Modelos
|
||||
If ObjInventario.GetInv_Mov(CveVenta, UsuarioActual.CveEmpresa) Then
|
||||
DtInventario = ObjInventario.DtResultados.Copy()
|
||||
DtSalidas = DtInventario.FiltraParametros($"CvePS IS NULL AND {Filtro}")
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(573) = "1" Then
|
||||
DtVirtuales = DtInventario.FiltraParametros($"CvePS IS NULL AND CveConcepto = 37 AND CveTipoAlmacen = 24")
|
||||
End If
|
||||
|
||||
If ObjFactura.TipoDocto = "Ing" Then
|
||||
DtDevPrevias = DtInventario.FiltraParametros($"CvePS IS NULL AND {FiltroDevAlmacen}")
|
||||
End If
|
||||
|
||||
DtExistencias = DtInventario.FiltraParametros($"CvePS IS NOT NULL AND {Filtro} AND CveTipoPS = 2")
|
||||
TieneSalida = DtExistencias.Rows.Count > 0
|
||||
Else
|
||||
@@ -5183,6 +5229,22 @@ Namespace Modelos
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
'AGREGA BITACORA A VENTA
|
||||
If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen AndAlso CveMovimientoDevolucion > 0 Then
|
||||
Dim MensajeBitacora = "Devuelta"
|
||||
If Not ObjEventos.AddEventoBitacora(String.Format("Venta {2} en Folio: <a href=""/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}"" target=""_blank"">{1}</a>", CveMovimientoDevolucion, Folio, MensajeBitacora), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVenta) Then
|
||||
MensajeError = "Ocurrió un error al agregar la bitacora."
|
||||
ErrorCancelar = True
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
'SI EXISTE UNA DEVOLUCION PREVIAMENTE HECHA UTILIZAR COMO REFERENCIA
|
||||
If DtDevPrevias IsNot Nothing AndAlso DtDevPrevias.Rows.Count > 0 Then
|
||||
CveMovimientoDevolucion = DtDevPrevias.FiltroPrimeroValor("CveMovimiento", $"CveConcepto = {CveConceptoMovimiento}").ToEntero()
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -5195,20 +5257,14 @@ Namespace Modelos
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
'REALIZA LA DEVOLUCION AL ALMACEN VIRTUAL
|
||||
If Not ErrorCancelar AndAlso Not GeneraMovimientosVirtuales(CveVenta, CveMovimientoDevolucion, RowMovimiento("CveMovimiento").ToString().ToEntero(), ObjInventario) Then
|
||||
ErrorCancelar = True
|
||||
MensajeError = "Ocurrió un error al cargar los datos de devolución. Por favor vuelva a intentar."
|
||||
End If
|
||||
|
||||
'AGREGA BITACORA A VENTA
|
||||
If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen AndAlso CveMovimientoDevolucion > 0 Then
|
||||
Dim MensajeBitacora = "Devuelta"
|
||||
If Not ObjEventos.AddEventoBitacora(String.Format("Venta {2} en Folio: <a href=""/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}"" target=""_blank"">{1}</a>", CveMovimientoDevolucion, Folio, MensajeBitacora), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveVenta) Then
|
||||
MensajeError = "Ocurrió un error al agregar la bitacora."
|
||||
ErrorCancelar = True
|
||||
End If
|
||||
If DtVirtuales IsNot Nothing Then
|
||||
For Each RowVirtual As DataRow In DtVirtuales.Rows
|
||||
'REALIZA LA DEVOLUCION AL ALMACEN VIRTUAL
|
||||
If Not ErrorCancelar AndAlso Not GeneraMovimientosVirtuales(CveVenta, CveMovimientoDevolucion, RowVirtual("CveMovimiento").ToString().ToEntero(), ObjInventario) Then
|
||||
ErrorCancelar = True
|
||||
MensajeError = "Ocurrió un error al cargar los datos de devolución. Por favor vuelva a intentar."
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
If ErrorCancelar Then
|
||||
@@ -5217,6 +5273,7 @@ Namespace Modelos
|
||||
|
||||
Next
|
||||
|
||||
|
||||
'SI EXISTEN HAY EXISTENCIA EN (ENTREGA POR ADELANTADO) SE TIENE QUE REGRESAR AL ALMACEN ORGINAL (GENERAL,SIN COSTO)
|
||||
If Not ErrorCancelar AndAlso ListaRemisionesCancelar IsNot Nothing AndAlso ListaRemisionesCancelar.Count > 0 Then
|
||||
|
||||
@@ -5502,10 +5559,10 @@ Namespace Modelos
|
||||
Dim ValidaVirtual = True
|
||||
Dim DtPSVirtual As New DataTable("DtTamanios")
|
||||
|
||||
Dim tCveAlmacen As Integer = -1
|
||||
Dim CveAlmacenVirtual As Integer = -1
|
||||
|
||||
If ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
|
||||
tCveAlmacen = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen").ToEntero()
|
||||
If ObjInventario.GetMovimientos(CveMovimientoRelacionado, -1, -1, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
|
||||
CveAlmacenVirtual = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen").ToEntero()
|
||||
End If
|
||||
|
||||
If ObjInventario.GetMovimientosDetalleVirtual(CveMovimiento, UsuarioActual.CveEmpresa, CveMovimientoRelacionado:=CveMovimientoRelacionado) Then
|
||||
@@ -5513,11 +5570,8 @@ Namespace Modelos
|
||||
End If
|
||||
|
||||
Dim CveConceptoMovimientoVirtual As Integer = 36
|
||||
Dim CveAlmacenVirtual As Integer = -1
|
||||
Dim CveMovimientoRelacionadoVirtual As Integer = CveMovimiento
|
||||
|
||||
CveAlmacenVirtual = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=tCveAlmacen).FiltroPrimeroValor("CveAlmacenVirtual").ToEntero()
|
||||
|
||||
If DtPSVirtual IsNot Nothing AndAlso DtPSVirtual.Rows.Count > 0 AndAlso CveAlmacenVirtual > 0 AndAlso CveConceptoMovimientoVirtual > 0 Then
|
||||
CveMovimientoVirtual = ObjInventario.AddMovimiento(CveAlmacenVirtual, CveConceptoMovimientoVirtual, 1, Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, CveVenta, -1, -1,
|
||||
Observaciones:="", Guia:="", CveMovimientoRelacionado:=CveMovimientoRelacionadoVirtual, Modulo:="Modelos/CancelarVirtual")
|
||||
@@ -6059,6 +6113,7 @@ Namespace Modelos
|
||||
|
||||
|
||||
#Region "P R O P I E D A D E S"
|
||||
Public Property RFCReceptor As String = ""
|
||||
Public Property ServicioDomicilio As Boolean
|
||||
Public Property CveEstatusRefacturacion As Integer = 0
|
||||
Public Property NuevaFactura As Integer
|
||||
@@ -6139,6 +6194,7 @@ Namespace Modelos
|
||||
Public Property DtRecepcionUsados As Data.DataTable
|
||||
Public Property DtPolizasVirtuales As Data.DataTable
|
||||
Public Property DtVentasNC As Data.DataTable
|
||||
Public Property DtVentasRelacionadas As Data.DataTable
|
||||
Public Property DtDeduccion As Data.DataTable
|
||||
Public Property DtFirmas As Data.DataTable
|
||||
Public Property DtDesgloseImpuestos As Data.DataTable
|
||||
|
||||
@@ -935,7 +935,7 @@ Public Class Timbrado
|
||||
|
||||
|
||||
Dim ObjVentas As New ClsVentas()
|
||||
If Not ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=1) Then
|
||||
If Not ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=1, RFCReceptor:=ObjCFDITimbre.Receptor.RFC) Then
|
||||
Retorno = "No se pudo registrar el folio fiscal"
|
||||
End If
|
||||
ObjVentas.Dispose()
|
||||
@@ -1520,7 +1520,7 @@ Public Class Timbrado
|
||||
If Ventas.CveVenta > 0 Then
|
||||
|
||||
Dim ObjVentas As New ClsVentas()
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=UsuarioActual.Empresa.CvePAC) Then
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=UsuarioActual.Empresa.CvePAC, RFCReceptor:=ObjCFDITimbre.Receptor.RFC) Then
|
||||
Retorno = ""
|
||||
Else
|
||||
Retorno = "Error"
|
||||
@@ -2127,7 +2127,7 @@ Public Class Timbrado
|
||||
|
||||
Using ObjVentas As New ClsVentas()
|
||||
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=CvePACEspecial) Then
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", ObjCFDITimbre.Comprobante.Fecha, Ventas.CveVenta, CvePAC:=CvePACEspecial, RFCReceptor:=ObjCFDITimbre.Receptor.RFC) Then
|
||||
Retorno = ""
|
||||
Else
|
||||
Retorno = "Error"
|
||||
@@ -3820,7 +3820,7 @@ Public Class Timbrado
|
||||
|
||||
|
||||
Dim ObjVentas As New ClsVentas()
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", Now, Ventas.CveVenta, CvePAC:=UsuarioActual.Empresa.CvePAC) Then
|
||||
If ObjVentas.UpdateEstatusFactura(3, FolioFiscal, "", Now, Ventas.CveVenta, CvePAC:=UsuarioActual.Empresa.CvePAC, RFCReceptor:=ObjCFDITimbre.Receptor.RFC) Then
|
||||
Retorno = ""
|
||||
Else
|
||||
Retorno = "Error"
|
||||
|
||||
@@ -690,7 +690,7 @@ Partial Class Bancos_PopIEVentas
|
||||
If Not UsuarioActual.Empresa.Funcionalidad(529) = "1" AndAlso dr("FolioFiscal").ToString() <> "" Then
|
||||
|
||||
|
||||
Dim Valida As New ClsValidaCFDi(dr("FolioFiscal").ToString(), UsuarioActual.Empresa.RFC, dr("ClienteRFC").ToString, dr("Total").ToString.ToDecimal)
|
||||
Dim Valida As New ClsValidaCFDi(dr("FolioFiscal").ToString(), UsuarioActual.Empresa.RFC, dr("RFCReceptor").ToString, dr("Total").ToString.ToDecimal)
|
||||
|
||||
If Valida.EsValida > 0 Then
|
||||
If Valida.EsValida = 2 Then
|
||||
|
||||
@@ -3401,7 +3401,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="chequesie1">
|
||||
<div class="chequesie1" id="DivTransferencia" runat="server">
|
||||
<div class="row">
|
||||
<label class="col-md-2">Transf.:</label>
|
||||
<div class="col-md-4 input-icon">
|
||||
@@ -3725,8 +3725,8 @@
|
||||
<asp:Button ID="BtnEditarCotizacion" runat="server" Text="Actualizar" Visible="false" CssClass="btn myventasbutton btn-primary" />
|
||||
<asp:Button ID="BtnPermisoEditarCotizacion" runat="server" Text="Editar" Visible="false" CssClass="btn myventasbutton btn-primary" />
|
||||
|
||||
<asp:Button ID="BtnEditarRemision" runat="server" Text="Actualizar Remision" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
<asp:Button ID="BtnPermisoEditarRemision" runat="server" Text="Editar Remision" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
<asp:Button ID="BtnEditarRemision" runat="server" Text="Actualizar Remisión" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
<asp:Button ID="BtnPermisoEditarRemision" runat="server" Text="Editar Remisión" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
|
||||
<asp:Button ID="BtnMandaMail" runat="server" Text="MandaMail" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
<asp:Button ID="BtnCrearApartirDe" runat="server" Text="Crear a partir de" CssClass="btn myventasbutton btn-primary" Visible="false" />
|
||||
@@ -4761,10 +4761,10 @@
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<asp:RadioButtonList ID="RblTipo" runat="server" RepeatDirection="Horizontal" CssClass="input-group col-md-12" CellSpacing="100">
|
||||
<asp:ListItem Value="1" Class="one" Selected="True"><label><b>Total General</b></label></asp:ListItem>
|
||||
<asp:ListItem Value="2" Class="one"><label><b>Total x Remisión</b></label></asp:ListItem>
|
||||
<asp:RadioButtonList ID="RblTipo" runat="server" AutoPostBack="true" RepeatDirection="Horizontal" CssClass="input-group col-md-12" CellSpacing="100">
|
||||
<asp:ListItem Value="3" Class="one" Selected="True"><label><b>Total x Concepto</b></label></asp:ListItem>
|
||||
<asp:ListItem Value="1" Class="one"><label><b>Total General</b></label></asp:ListItem>
|
||||
<asp:ListItem Value="2" Class="one"><label><b>Total x Remisión</b></label></asp:ListItem>
|
||||
</asp:RadioButtonList>
|
||||
</div>
|
||||
</div>
|
||||
@@ -6909,7 +6909,7 @@
|
||||
<asp:CheckBox ID="ChkCancelarRemision" runat="server" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:HyperLinkField DataTextField="SerieFolio" HeaderText="Remision" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" />
|
||||
<asp:HyperLinkField DataTextField="SerieFolio" HeaderText="Remisión" Target="_blank" DataNavigateUrlFields="CveVenta" DataNavigateUrlFormatString="/Ventas/Ventas.aspx?CveVenta={0}" />
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
|
||||
@@ -1298,6 +1298,16 @@ Partial Class Ventas
|
||||
ViewState("CveFormaPago33Cliente") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property RFCReceptorVenta As String
|
||||
Get
|
||||
Return If(IsNothing(ViewState("RFCReceptorVenta")), "", ViewState("RFCReceptorVenta").ToString())
|
||||
End Get
|
||||
|
||||
Set(value As String)
|
||||
ViewState("RFCReceptorVenta") = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
#Region "Propiedades PuntoVenta"
|
||||
@@ -1573,7 +1583,7 @@ Partial Class Ventas
|
||||
|
||||
Private Property EnviarCorreoCliente As Boolean
|
||||
Get
|
||||
Return CBool(ViewState("EnviarCorreoCliente").ToString())
|
||||
Return CBool(IfNull(ViewState("EnviarCorreoCliente"), False))
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
ViewState("EnviarCorreoCliente") = value
|
||||
@@ -2867,6 +2877,14 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
'VALIDA ESTATUS CLIENTE - SOLO SE PUEDE USAR EL CLIENTE PARA COTIZAR EN CASO DE ESTAR INACTIVO
|
||||
If Not CveVenta > 0 AndAlso Not BtnEmitirImprimir.Visible AndAlso Request("Op") IsNot Nothing AndAlso Request("Op").ToString() <> "" Then
|
||||
If DdlTipoComprobante.SelectedValue.Contiene("Cot") Then
|
||||
BtnEmitirImprimir.Visible = True
|
||||
TrVistaPrevia.Visible = True
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
''EN REALIDAD SE OCUPAN ESTAS COSAS DENTRO DEL POSTABCK ???
|
||||
@@ -3975,6 +3993,8 @@ Partial Class Ventas
|
||||
ObjUsados.Dispose()
|
||||
End If
|
||||
|
||||
RFCReceptorVenta = DbRowVenta("RFCReceptor").ToString()
|
||||
|
||||
ViewState("CveSubProyectoVenta") = DbRowVenta("CveSubProyecto").ToString().ToEntero()
|
||||
|
||||
Me.CveEstatusFacturaPadre = DbRowVenta("CveEstatusFacturaPadre").ToString().ToEntero()
|
||||
@@ -10922,6 +10942,29 @@ Partial Class Ventas
|
||||
End If
|
||||
|
||||
factura.CvePrePoliza = ObjConta.AddPrePolizas("Ventas/GuardarVenta", factura.CvePlantillaPoliza, factura.Total, factura.Total, factura.CveMoneda, factura.Fecha, If(CveEmpresaCRM > 0, LblEmpresaCRM.Text, factura.Cliente.Nombre), factura.CveUsuario, factura.CveEmpresa)
|
||||
|
||||
Dim RFCReceptor As String = ""
|
||||
|
||||
If factura.Timbre IsNot Nothing AndAlso factura.Timbre.Receptor IsNot Nothing Then
|
||||
If Not String.IsNullOrEmpty(factura.Timbre.Receptor.RFC) Then
|
||||
RFCReceptor = factura.Timbre.Receptor.RFC.Trim
|
||||
End If
|
||||
End If
|
||||
|
||||
'SI NO SE VA TIMBRAR TOMA EL DEL CLIENTE
|
||||
If String.IsNullOrEmpty(RFCReceptor) Then
|
||||
If Not String.IsNullOrEmpty(LblRFC.Text) Then
|
||||
RFCReceptor = LblRFC.Text.Trim
|
||||
End If
|
||||
|
||||
If factura.FacturarSucursal Then
|
||||
If factura.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = factura.ClienteSucursal.RFC
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If Not ObjVentas.AddVenta(factura.TipoDocto, factura.Folio, factura.CveCliente, factura.CveClienteSucursal, factura.SubTotalTC, factura.DescuentoTC,
|
||||
factura.AmortizacionTC, factura.IVATC, factura.RetIVATC, factura.RetISRTC,
|
||||
factura.TotalTC, factura.CveMoneda, factura.TipoCambio, factura.CveMetodoPago, factura.CondicionesPago, factura.FormaPago, factura.FechaPago, factura.Fecha, factura.MotivoDescuento,
|
||||
@@ -10937,7 +10980,7 @@ Partial Class Ventas
|
||||
CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, CveAcercamientoCRM:=CveAcercamientoCRM,
|
||||
DiasCredito:=factura.DiasCredito, EsDiasCreditoFijo:=factura.EsDiasCreditoFijo, AnticipoEspecial:=If(TrAntEspecial.Visible, ChkAntEspecial.Checked, False),
|
||||
Kilometraje:=TxtKilometraje.Text.ToDouble, EsAmortizacion:=EsNCAmortizacion, CveTipoRetencion:=factura.CveTipoRetencion, CorreoNotificacion:=TxtCorreoNotificaciones.Text,
|
||||
FormaPaqueteria:=RblPaqueteria.SelectedValue.ToEntero, FacturarSucursal:=factura.FacturarSucursal, VentaDesglosaIEPS:=factura.VentaDesglosaIEPS) Then
|
||||
FormaPaqueteria:=RblPaqueteria.SelectedValue.ToEntero, FacturarSucursal:=factura.FacturarSucursal, VentaDesglosaIEPS:=factura.VentaDesglosaIEPS, RFCReceptor:=RFCReceptor) Then
|
||||
ErrorList.Add("Ocurrió un error al Generar la Venta.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
||||
Else
|
||||
If factura.TipoDocto.Contiene("Dev", "Egs") Or DtVentasNC IsNot Nothing Or CveEstatusRefacturacion = 1 Then
|
||||
@@ -12732,7 +12775,7 @@ Partial Class Ventas
|
||||
' DrPago("Importe") = DrPago("Importe").ToString().ToDecimal - TxtCambio.Text.ToDecimal
|
||||
'End If
|
||||
|
||||
CveIEPago = ObjBancos.AddBancos_IE(DrPago("CveCuenta").ToString().ToEntero(), DrPago("CveTipoMovimiento").ToString().ToEntero(), Fecha, FolioIE.ToString(), String.Format("PAGO: {0}", TxtFolio.Text), DrPago("Importe").ToString().ToDouble, DdlMoneda.SelectedValue.ToEntero(), tipoCambio, DrPago("Observaciones").ToString(), "", False, False, -1, ObjFactura.CvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCorte:=CveCorte, MesesSinIntereses:=DrPago("MesesSinIntereses").ToString().ToEntero())
|
||||
CveIEPago = ObjBancos.AddBancos_IE(DrPago("CveCuenta").ToString().ToEntero(), DrPago("CveTipoMovimiento").ToString().ToEntero(), Fecha, FolioIE.ToString(), String.Format("PAGO: {0}", TxtFolio.Text), DrPago("Importe").ToString().ToDouble, DdlMoneda.SelectedValue.ToEntero(), tipoCambio, DrPago("Observaciones").ToString(), "", False, False, -1, ObjFactura.CvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCorte:=CveCorte, MesesSinIntereses:=DrPago("MesesSinIntereses").ToString().ToEntero(), Modulo:="Ventas/Guardar")
|
||||
|
||||
If CveIEPago > 0 Then
|
||||
|
||||
@@ -14089,6 +14132,8 @@ Partial Class Ventas
|
||||
Dim CveCuentaIVAXTrasladar As Integer = 0
|
||||
Dim CveCuentaIVATrasladado As Integer = 0
|
||||
|
||||
Dim CveSubProyectoVenta As Integer = DdlSubProyectoDatos.SelectedValue.ToEntero()
|
||||
|
||||
Dim Importe91 As Decimal = 0
|
||||
|
||||
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows.Count > 0 Then
|
||||
@@ -14196,7 +14241,7 @@ Partial Class Ventas
|
||||
' CveCuentaContabilizacion = 0
|
||||
'End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, 0, Concepto, 207, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta - importeMovimiento, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioVentaValuacion) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, 0, Concepto, 207, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta - importeMovimiento, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioVentaValuacion, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
|
||||
@@ -14235,7 +14280,7 @@ Partial Class Ventas
|
||||
' CveCuentaContabilizacion = 0
|
||||
'End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToEntero(), CveVentaAmortizacion:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento * tipoCambioPago, ImporteME:=If(tipoCambioPago = 1, 0, importeMovimiento), CveCuenta:=CveCuenta) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToEntero(), CveVentaAmortizacion:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento * tipoCambioPago, ImporteME:=If(tipoCambioPago = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
End If
|
||||
@@ -14300,7 +14345,7 @@ Partial Class Ventas
|
||||
CveCuenta = 0
|
||||
importeMX = importeMovimiento
|
||||
ImporteComplementaria = ((importeMovimiento * TC) - importeMovimiento).RoundSQL
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, False, importeMovimiento, Concepto, 203, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=ImporteComplementaria, ImporteME:=If(gvr.DataKey("TipoCambio").ToString().ToDecimal = 1, 0, importeMovimiento), TipoCambio:=TC) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, False, importeMovimiento, Concepto, 203, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=ImporteComplementaria, ImporteME:=If(gvr.DataKey("TipoCambio").ToString().ToDecimal = 1, 0, importeMovimiento), TipoCambio:=TC, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
Exit For
|
||||
End If
|
||||
@@ -14313,7 +14358,7 @@ Partial Class Ventas
|
||||
CveCuenta = 0
|
||||
End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TC) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TC, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
Exit For
|
||||
End If
|
||||
@@ -14322,7 +14367,7 @@ Partial Class Ventas
|
||||
If Not ErrorConta And DdlTipoComprobante.SelectedValue = "Ant" Then
|
||||
importeMovimiento = gvr.FCTextBox("TxtAnticipo" & gvr.RowIndex).Text.ToDecimal - ((gvr.FCTextBox("TxtAnticipo" & gvr.RowIndex).Text.ToDecimal / gvr.DataKey("Original").ToDecimal) * gvr.DataKey("IVA").ToDecimal)
|
||||
If ObjConta.AddPrePolizasDetalle(CvePrepoliza, False, importeMovimiento, Concepto, 11, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveVentaAmortizacion:=gvr.DataKey("CveVenta").ToString().ToEntero(), ImporteMX:=importeMovimiento * TC, CveCuenta:=CveCuenta) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, True, importeMovimiento, Concepto, 4, Concepto, FechaMovimiento, gvr.DataKey("IdCtaContableNC").ToEntero(), -1, CveClasificacion:=gvr.DataKey("CveClasificacionNC").ToEntero(), CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=importeMovimiento * TC, CveCuenta:=gvr.DataKey("IdCtaContableNCSIG").ToEntero()) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, True, importeMovimiento, Concepto, 4, Concepto, FechaMovimiento, gvr.DataKey("IdCtaContableNC").ToEntero(), -1, CveClasificacion:=gvr.DataKey("CveClasificacionNC").ToEntero(), CveVenta:=gvr.DataKey("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveVentaAmortizacion:=CveVenta, ImporteMX:=importeMovimiento * TC, CveCuenta:=gvr.DataKey("IdCtaContableNCSIG").ToEntero(), CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
Exit For
|
||||
End If
|
||||
@@ -14345,23 +14390,23 @@ Partial Class Ventas
|
||||
If importeMovimiento <> 0 Then
|
||||
' Agregamos el 2
|
||||
If tipoCambioPago = 1 Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContClientes, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContClientes, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
Else 'Cuando son dolares
|
||||
If importeMovimiento <> 0 Then
|
||||
If IdCtaContComplementaria > 0 Or 0 > 0 Then
|
||||
'Agregamos la Complementaria
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, 0, Concepto, 207, Concepto, FechaMovimiento, IdCtaContComplementaria, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta - importeMovimiento, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, 0, Concepto, 207, Concepto, FechaMovimiento, IdCtaContComplementaria, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta - importeMovimiento, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
'Agregamos la Extranjera
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContMonedaExtranjera, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento, ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContMonedaExtranjera, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMovimiento, ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
Else
|
||||
'Agregamos la Extranjera
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContMonedaExtranjera, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 2, Concepto, FechaMovimiento, IdCtaContMonedaExtranjera, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=Math.Round(importeMovimiento * tipoCambioVenta, 2, MidpointRounding.AwayFromZero), ImporteME:=importeMovimiento, CveCuenta:=0, TipoCambio:=tipoCambioVenta, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
End If
|
||||
@@ -14378,7 +14423,7 @@ Partial Class Ventas
|
||||
|
||||
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
|
||||
CveCuenta = If(CveCuentaIVAXTrasladar > 0, CveCuentaIVAXTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, 13, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, 13, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
|
||||
@@ -14386,7 +14431,7 @@ Partial Class Ventas
|
||||
|
||||
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
|
||||
CveCuenta = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 61, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 61, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
End If
|
||||
@@ -14401,7 +14446,7 @@ Partial Class Ventas
|
||||
|
||||
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSxTrasladar
|
||||
CveCuenta = UsuarioActual.Empresa.CveCuentaIEPSxTrasladar
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, 38, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, 38, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
|
||||
@@ -14409,7 +14454,7 @@ Partial Class Ventas
|
||||
|
||||
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSTrasladado
|
||||
CveCuenta = UsuarioActual.Empresa.CveCuentaIEPSTrasladado
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 61, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, Not TipoMovimiento, importeMovimiento, Concepto, 61, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuestoAmortizacion, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
End If
|
||||
@@ -14443,7 +14488,7 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=-1, TipoCambio:=tipoCambioPago) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=importeMX, CveCuenta:=-1, TipoCambio:=tipoCambioPago, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
End If
|
||||
|
||||
@@ -14587,7 +14632,9 @@ Partial Class Ventas
|
||||
' CveCuentaContabilizacion = 0
|
||||
'End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral, PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrepoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1,
|
||||
CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=importeMX, CveCuenta:=CveCuenta, TipoCambio:=TipoCambioGeneral,
|
||||
PorcentajeImpuesto:=PorcentajeImpuesto, CveSubProyecto:=CveSubProyectoVenta) Then
|
||||
ErrorConta = True
|
||||
Exit For
|
||||
End If
|
||||
@@ -14746,7 +14793,12 @@ Partial Class Ventas
|
||||
'cuando es AMORTIZACIÓN CON FACTURA EN CERO
|
||||
If DdlTipoAmortizacionAnticipo.SelectedValue = "3" Then
|
||||
|
||||
If Amortizacion < TxtSubTotal.Text.ToDecimal Then
|
||||
Dim SubTotalRef As Decimal = TxtSubTotal.Text.ToDecimal
|
||||
If LblDescuentos.Text.ToDecimal() > 0D Then
|
||||
SubTotalRef = TxtSubTotal.Text.ToDecimal - LblDescuentos.Text.ToDecimal()
|
||||
End If
|
||||
|
||||
If Amortizacion < SubTotalRef Then
|
||||
|
||||
'[IPP] LIMPIA LO SELECCIONADO EN CASO DE QUE NO SEA AMORTIZACIÓN DEL 100% 15Junio2018
|
||||
Amortizacion = 0
|
||||
@@ -14767,7 +14819,7 @@ Partial Class Ventas
|
||||
|
||||
|
||||
End If
|
||||
CalculaTotalesVenta()
|
||||
CalculaTotalesVenta(ValidarDescuentos:=True)
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -16582,7 +16634,7 @@ Partial Class Ventas
|
||||
If dr Is Nothing Then
|
||||
|
||||
'verifica marca, si tiene asignada la promocion
|
||||
dr = DtPromociones.FiltroPrimero(String.Format("CveClasificacion = {0} AND (CveMarca = {1} OR CveMarca IS NULL) AND (CveSubProyecto = {2} OR CveSubProyecto IS NULL) AND (CveRinTamaño = {3} OR CveRinTamaño IS NULL) AND (TipoPromocion <> 3 OR (TipoPromocion = 3 AND CantidadMinima <= {4} )) ", CveClasifPS, CveMarcaPS, DdlSubProyectoDatos.SelectedValue, CveRinTamañoPS, TxtCantidad.Text), Orderby:="CantidadMinima desc")
|
||||
dr = DtPromociones.FiltroPrimero(String.Format("CvePS IS NULL AND CveClasificacion = {0} AND (CveMarca = {1} OR CveMarca IS NULL) AND (CveSubProyecto = {2} OR CveSubProyecto IS NULL) AND (CveRinTamaño = {3} OR CveRinTamaño IS NULL) AND (TipoPromocion <> 3 OR (TipoPromocion = 3 AND CantidadMinima <= {4} )) ", CveClasifPS, CveMarcaPS, DdlSubProyectoDatos.SelectedValue, CveRinTamañoPS, TxtCantidad.Text), Orderby:="CantidadMinima desc")
|
||||
|
||||
End If
|
||||
End If
|
||||
@@ -17969,9 +18021,11 @@ Partial Class Ventas
|
||||
ConfiguraTipoDocto()
|
||||
End If
|
||||
End Sub
|
||||
Private Sub CalculaTotalesVenta(Optional RecalculaImpuestosLocales As Boolean = True, Optional NCDescuento As Boolean = False)
|
||||
Private Sub CalculaTotalesVenta(Optional RecalculaImpuestosLocales As Boolean = True, Optional NCDescuento As Boolean = False, Optional ValidarDescuentos As Boolean = False)
|
||||
|
||||
Dim TotalSubTotal As Decimal = TmpDT.SUMD("TotalImporte")
|
||||
Dim TotalSubTotalRef As Decimal = TotalSubTotal
|
||||
|
||||
Dim TotalDescuentos As Decimal = TmpDT.SUMD("Descuento")
|
||||
Dim TotalAmortizacion As Decimal = LblAmortizacion.Text.ToDecimal
|
||||
Dim TotalIVA As Decimal = TmpDT.SUMD("ImporteIVA")
|
||||
@@ -17983,7 +18037,11 @@ Partial Class Ventas
|
||||
|
||||
Dim TotalProntoPago As Decimal = 0
|
||||
|
||||
If TotalAmortizacion > 0 AndAlso TotalSubTotal = TotalAmortizacion Then ' si se amortizó completa la factura, debe de limpiar los impuestos
|
||||
If ValidarDescuentos Then
|
||||
TotalSubTotalRef = TotalSubTotal - TotalDescuentos
|
||||
End If
|
||||
|
||||
If TotalAmortizacion > 0 AndAlso TotalSubTotalRef = TotalAmortizacion Then ' si se amortizó completa la factura, debe de limpiar los impuestos
|
||||
If DdlTipoAmortizacionAnticipo.SelectedValue.Contiene("3") Then
|
||||
For Each dr As DataRow In TmpDT.Rows
|
||||
dr("ImporteIVA") = 0 : dr("ImporteIEPS") = 0 : dr("ImporteRetIVA") = 0 : dr("ImporteRetISR") = 0 : dr("PorcentajeIVA") = 0 : dr("IVA") = 0
|
||||
@@ -19766,7 +19824,6 @@ Partial Class Ventas
|
||||
End If
|
||||
Else
|
||||
sb.Append("<b>No encontrado</b> <br/>")
|
||||
script = "BtnRefacturacionConfirmarAceptacion();"
|
||||
End If
|
||||
Else
|
||||
sb.Append("¿Desea realizar la refacturación?<br/>")
|
||||
@@ -20408,6 +20465,9 @@ Partial Class Ventas
|
||||
Case 2 'CONTADO
|
||||
If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") Or (UsuarioActual.Empresa.Funcionalidad(558).ToEntero() = 1 And DdlTipoComprobante.SelectedValue = "Cot") Then
|
||||
DivContado.Visible = True
|
||||
If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then
|
||||
DivTransferencia.Visible = False
|
||||
End If
|
||||
TxtImporteContado.Text = TxtTotal.Text
|
||||
End If
|
||||
TxtFechaPago.Text = Now.ToShortDateString
|
||||
@@ -22040,13 +22100,21 @@ Partial Class Ventas
|
||||
sb.Append("La factura se encuentra en el siguiente estatus del SAT:<br/>")
|
||||
|
||||
Dim TotalT As Decimal = TxtTotal.Text.ToDecimal
|
||||
Dim RFCReceptor As String = LblRFC.Text.Trim
|
||||
|
||||
'SI SE FACTURO LA SUCURSAL DEL CLIENTE TOMA EL RFC DE ESTA
|
||||
If FacturarSucursal AndAlso Me.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = Me.ClienteSucursal.RFC
|
||||
Dim RFCReceptor As String = ""
|
||||
|
||||
If String.IsNullOrEmpty(Me.RFCReceptorVenta) Then
|
||||
RFCReceptor = LblRFC.Text.Trim
|
||||
|
||||
'SI SE FACTURO LA SUCURSAL DEL CLIENTE TOMA EL RFC DE ESTA
|
||||
If FacturarSucursal AndAlso Me.ClienteSucursal IsNot Nothing Then
|
||||
RFCReceptor = Me.ClienteSucursal.RFC
|
||||
End If
|
||||
Else
|
||||
RFCReceptor = Me.RFCReceptorVenta
|
||||
End If
|
||||
|
||||
|
||||
Dim SWatch As New Stopwatch
|
||||
SWatch.Start()
|
||||
Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, TotalT.ToString(), True)
|
||||
@@ -28249,6 +28317,15 @@ Partial Class Ventas
|
||||
End Sub
|
||||
Protected Sub RblTipo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipo.SelectedIndexChanged
|
||||
HuboCambioRemi = Not HuboCambioRemi
|
||||
'TOTAL X CONCEPTO
|
||||
If RblTipo.SelectedValue = "3" Then
|
||||
ChkRemProductos.Visible = True
|
||||
Else
|
||||
ChkRemProductos.Visible = False
|
||||
ChkRemProductos.Checked = False
|
||||
End If
|
||||
|
||||
ChkRemProductos_CheckedChanged(ChkRemProductos, EventArgs.Empty)
|
||||
End Sub
|
||||
Protected Sub BtnGuardarRemisiones_Click(sender As Object, e As EventArgs) Handles BtnGuardarRemisiones.Click
|
||||
If GvRem.Rows.Count > 0 Or GvRemPS.Rows.Count > 0 Then
|
||||
|
||||
Reference in New Issue
Block a user