From b5093f8dc85e884b3d4b8731d7c05b3a923709e5 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Fri, 24 Sep 2021 16:08:46 -0700 Subject: [PATCH 1/7] Validacion de limite de credito, en CrearAPartirDe y facturacion de cotizaciones --- Ventas/Ventas.aspx.vb | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 4ec3cd682..9e33a2d45 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -6216,7 +6216,7 @@ Partial Class Ventas Dim ValorAutorizacion As String = UsuarioActual.Empresa.Funcionalidad(595) 'OBLIGAR PAGO DE CONTADO SI EL CLIENTE NO PERMITE CREDITO - If UsuarioActual.Empresa.Funcionalidad(570) = "1" AndAlso Me.PermiteCredito = False AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") AndAlso CveVenta <= 0 Then + If UsuarioActual.Empresa.Funcionalidad(570) = "1" AndAlso Me.PermiteCredito = False AndAlso ((DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem") AndAlso CveVenta < 1) OrElse (DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot") AndAlso EsCreaApartirDe)) Then RBLPago.SelectedValue = "2" RBLPago.Items(0).Enabled = False RBLPago_SelectedIndexChanged(Nothing, Nothing) @@ -6234,6 +6234,7 @@ Partial Class Ventas DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Rem")) LnkPedido2SinFacturar.Visible = False LnkCotizaciones.Visible = False + BtnsFacturar.Visible = False End If UPCondicionesPago.Update() 'CARGAR CREDITO DISPONIBLE AL GENERAR UNA FACTURA @@ -6311,6 +6312,7 @@ Partial Class Ventas If Opcion > 0 Then If Opcion = 1 Then BtnEmitirImprimir.Visible = False + BtnsFacturar.Visible = False End If If Alertas Then Alert(OpcionMsg, TipoMensaje.MsgAdvertencia) Else @@ -6387,7 +6389,7 @@ Partial Class Ventas End If 'Puede hacer pedido - If Me.CveVenta <= 0 Then + If CveVenta <= 0 Then If Not UsuarioActual.TienePermisoProceso(177) Then If DdlTipoComprobante.Items.FindByValue("Pd2") IsNot Nothing Then DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Pd2")) @@ -18142,7 +18144,7 @@ Partial Class Ventas End Sub Private Sub SetPermisos() - If CveVenta < 1 Then + If CveVenta < 1 OrElse EsCreaApartirDe Then 'Puede cotizar If Not UsuarioActual.TienePermisoProceso(59) Then DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Cot")) @@ -23101,7 +23103,7 @@ Partial Class Ventas RequiereAlmacenDestino = True DdlAlmacenAsignado.Items.Clear() DdlAlmacenAsignado.Items.Insert(0, New ListItem(" Seleccione ", "-1")) - DdlAlmacenAsignado.SelectedValue = "-1" + DdlAlmacenAsignado.SelectedValueExist("-1") DdlAlmacenAsignado.DataBind() DdlAlmacenAsignado.Items.Insert(0, New ListItem("Almacen", DbRowVenta("CveAlmacenTraspasoOrigen").ToString())) DdlAlmacenAsignado.SelectedValueExist(DbRowVenta("CveAlmacenTraspasoOrigen").ToString()) @@ -29831,6 +29833,8 @@ Partial Class Ventas GvPS.Columns(17).Visible = True GvPS.Columns(18).Visible = True + SetPermisos() + CambiaTipoDocto() CambiaSucursalGeneral(RecargarPartidas:=False) CargaAnticipos(CveCliente) From d7a96dfd3b8d6c2cd5b773854f14c7a13ac9bb03 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 10:07:39 -0700 Subject: [PATCH 2/7] No marcar factura al facturar remision a nivel general, CveVentaDetallePadre al facturar remision --- Ventas/Ventas.aspx.vb | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 9e33a2d45..984edaf7c 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -18935,13 +18935,6 @@ Partial Class Ventas End If End If - If Not OcurrioError AndAlso ConSalida Then - 'Esquema viejo, evitamos que aparezca por surtir - If Not ObjInventario.ActualizarEsDevolucionVenta(ObjFactura.CveVenta, 2) Then - OcurrioError = True - End If - End If - End If End If @@ -19109,7 +19102,24 @@ Partial Class Ventas 'COMIENZA: VENTADETALLE 'CUANDO SEA SALIDA VA POR LA VENTA DETALLE DE LA FACTURA DE LA REMISION - OJO!! SOLO FUNCIONA HASTA ORITA QUE SE HACE SALIDA SOLO CUANDO SE FACTURA LA REMISION - Dim CveVentaDetalle = If(ConceptoEntrada.Contiene(3, 40), TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero(), MovDet("CveVentaDetalle").ToString().ToEntero()) + Dim CveVentaDetalle As Integer = -1 + Dim CveVentaDetallePadre As Integer = -1 + + If ConceptoEntrada = 3 Then + CveVentaDetalle = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() + ElseIf ConceptoEntrada = 40 Then + CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() + CveVentaDetallePadre = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() + 'CUANDO LA VENTADETALLE NO TENGA VALOR DEBE MARCAR ERROR, NUEVA RESTRICCION DE ALMACEN + If CveVentaDetallePadre < 0 Then + Alert("no se encontro la venta detalle nueva. Por favor comuniquese con atención SIG.", TipoMensaje.ToastError) + OcurrioError = True + Exit For + End If + Else + CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() + End If + 'CUANDO LA VENTADETALLE NO TENGA VALOR DEBE MARCAR ERROR, NUEVA RESTRICCION DE ALMACEN If CveVentaDetalle < 0 Then Alert("no se encontro la venta detalle. Por favor comuniquese con atención SIG.", TipoMensaje.ToastError) @@ -19130,7 +19140,7 @@ Partial Class Ventas CveMovimientoDetalleEntrada = MovDet("CveMovimientoDetalle").ToString().ToEntero() End If - If ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, Cantidad, CveUnidad, CveProducto, PU, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, FechaCaducidad:=FechaCaducidad, CveVentaDetalle:=CveVentaDetalle, CveMovimientoDetalleEntrada:=CveMovimientoDetalleEntrada) Then + If ObjInventario.AddMovimientoDetalle(CveMovimientoInventario, Cantidad, CveUnidad, CveProducto, PU, -1, CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, FechaCaducidad:=FechaCaducidad, CveVentaDetalle:=CveVentaDetalle, CveMovimientoDetalleEntrada:=CveMovimientoDetalleEntrada, CveVentaDetallePadre:=CveVentaDetallePadre) Then ContadorMovtosDetalles += 1 Else OcurrioError = True From e99551f730606bed67257954f29d662021388062 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 10:08:03 -0700 Subject: [PATCH 3/7] Campo CveVentaDetallePadre al agregar movimiento detalle --- App_Code/ClsInventarios.vb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb index c256e98fe..03880cf97 100644 --- a/App_Code/ClsInventarios.vb +++ b/App_Code/ClsInventarios.vb @@ -1279,7 +1279,7 @@ Public Class ClsInventarios Optional CveSeccionAlmacen As Integer = -1, Optional Serie As String = "", Optional Lote As String = "", Optional FechaCaducidad As Date = MinFecha, Optional Observaciones As String = "", Optional CveMovimientoDetalleEntrada As Integer = -1, Optional PUTC As Decimal = -1, Optional CostoIndirecto As Decimal = 0, Optional CveCompraDetalle As Integer = -1, Optional CveOrdenCompraDetalle As Integer = -1, Optional CveVentaDetalle As Integer = -1, - Optional CveContratoDetalle As Integer = -1, Optional CveUsuarioModifico As Integer = -1, Optional EsInterno As Integer = -1) As Boolean + Optional CveContratoDetalle As Integer = -1, Optional CveUsuarioModifico As Integer = -1, Optional EsInterno As Integer = -1, Optional CveVentaDetallePadre As Integer = -1) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_Inv_MovimientosDetalleAdd") @@ -1305,6 +1305,7 @@ Public Class ClsInventarios .Add("@CveContratoDetalle", SqlDbType.Int).Value = CveContratoDetalle .Add("@CveUsuarioModifico", SqlDbType.Int).Value = CveUsuarioModifico .Add("@EsInterno", SqlDbType.Int).Value = EsInterno + .Add("@CveVentaDetallePadre", SqlDbType.Int).Value = CveVentaDetallePadre .Add("@CveMovimientoDetalle", SqlDbType.Int).Direction = ParameterDirection.Output End With From a97dc803ab9098929bfa97273c941b3144931943 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 10:46:31 -0700 Subject: [PATCH 4/7] No verificar limite de credito al facturar , funcionalidad 702 --- Ventas/Ventas.aspx.vb | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 984edaf7c..583e7247d 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -7647,36 +7647,40 @@ Partial Class Ventas 'No exceder el limite de credito, Si no tiene contrato limita el credito, si tiene no hace nada. Si no tiene remisiones tampoco hace nada. If (Not CveContrato > 0 Or CveContratoTipo.Contiene(28)) AndAlso (Not NuevaFactura = 1) AndAlso RBLPago.SelectedValue = "1" AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Rem", "Ant") AndAlso RemisionesLista.Count <= 0 AndAlso TxtTotal.Text.ToDecimal > 0 AndAlso Not CvePedidoA > 0 Then 'If UsuarioActual.Empresa.Funcionalidad(518) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(185) Then - Dim ObjVentas As New ClsVentas - If ObjVentas.ObtenerCreditoRestante(CveCliente, DdlSucursalCliente.SelectedValue.ToEntero()) Then - If ObjVentas.DtResultados.Rows.Count > 0 Then + If Not UsuarioActual.Empresa.Funcionalidad(702) = "1" Then + Dim ObjVentas As New ClsVentas - If DdlSucursalCliente.SelectedValue.ToEntero() > 0 Then - If ObjVentas.DtResultados(0)("LimiteRestanteSucursal").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal) < 0 Then - ObjVentas.Dispose() - Alert("Se está excediendo el límite de credito permitido de la Sucursal del Cliente.", TipoMensaje.MsgInformacion) - Exit Sub + If ObjVentas.ObtenerCreditoRestante(CveCliente, DdlSucursalCliente.SelectedValue.ToEntero()) Then + If ObjVentas.DtResultados.Rows.Count > 0 Then + + If DdlSucursalCliente.SelectedValue.ToEntero() > 0 Then + If ObjVentas.DtResultados(0)("LimiteRestanteSucursal").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal) < 0 Then + ObjVentas.Dispose() + Alert("Se está excediendo el límite de credito permitido de la Sucursal del Cliente.", TipoMensaje.MsgInformacion) + Exit Sub + End If + Else + If ObjVentas.DtResultados(0)("LimiteRestanteCliente").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal) < 0 Then + ObjVentas.Dispose() + Alert("Se está excediendo el límite de credito permitido del Cliente.", TipoMensaje.MsgInformacion) + Exit Sub + End If End If + Else - If ObjVentas.DtResultados(0)("LimiteRestanteCliente").ToString().ToDecimal - If(TxtTipoCambio.Visible, TxtTotal.Text.ToDecimal * TxtTipoCambio.Text.ToDecimal, TxtTotal.Text.ToDecimal) < 0 Then - ObjVentas.Dispose() - Alert("Se está excediendo el límite de credito permitido del Cliente.", TipoMensaje.MsgInformacion) - Exit Sub - End If + ObjVentas.Dispose() + Alert("Ocurrio un error al obtener el limite de credito del cliente", TipoMensaje.MsgError) + Exit Sub End If - Else ObjVentas.Dispose() Alert("Ocurrio un error al obtener el limite de credito del cliente", TipoMensaje.MsgError) Exit Sub End If - Else ObjVentas.Dispose() - Alert("Ocurrio un error al obtener el limite de credito del cliente", TipoMensaje.MsgError) - Exit Sub End If - ObjVentas.Dispose() + 'End If End If From 8caf1f249f85d0ddc0afb89d45c46543fc859389 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 15:13:43 -0700 Subject: [PATCH 5/7] Comentar CveVentaDetallePadre en Ventas.aspx --- Ventas/Ventas.aspx.vb | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 583e7247d..1cb7988c1 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -6289,8 +6289,9 @@ Partial Class Ventas ' el cliente tiene crédito disponible, no tiene bloqueo DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("PA")) - If UsuarioActual.TienePermisoProceso(60) Then DdlTipoComprobante.SelectedValueExistInsert("Ing", "Ingresos") 'puede facturar If UsuarioActual.TienePermisoProceso(199) Then DdlTipoComprobante.SelectedValueExistInsert("Rem", "Remisión") ' puede remisionar + If UsuarioActual.TienePermisoProceso(60) Then DdlTipoComprobante.SelectedValueExistInsert("Ing", "Ingresos") 'puede facturar + DdlTipoComprobante.SelectedValueExist(UsuarioActual.CveTipoDocumento) TxtFechaPago.Text = If(DdlTipoComprobante.SelectedValue = "Rem", Now.AddDays(PlazoCobranzaRemision), Now.AddDays(PlazoCobranza)).ToShortDateString @@ -19106,23 +19107,23 @@ Partial Class Ventas 'COMIENZA: VENTADETALLE 'CUANDO SEA SALIDA VA POR LA VENTA DETALLE DE LA FACTURA DE LA REMISION - OJO!! SOLO FUNCIONA HASTA ORITA QUE SE HACE SALIDA SOLO CUANDO SE FACTURA LA REMISION - Dim CveVentaDetalle As Integer = -1 + Dim CveVentaDetalle = If(ConceptoEntrada.Contiene(3, 40), TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero(), MovDet("CveVentaDetalle").ToString().ToEntero()) Dim CveVentaDetallePadre As Integer = -1 - If ConceptoEntrada = 3 Then - CveVentaDetalle = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() - ElseIf ConceptoEntrada = 40 Then - CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() - CveVentaDetallePadre = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() - 'CUANDO LA VENTADETALLE NO TENGA VALOR DEBE MARCAR ERROR, NUEVA RESTRICCION DE ALMACEN - If CveVentaDetallePadre < 0 Then - Alert("no se encontro la venta detalle nueva. Por favor comuniquese con atención SIG.", TipoMensaje.ToastError) - OcurrioError = True - Exit For - End If - Else - CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() - End If + 'If ConceptoEntrada = 3 Then + ' CveVentaDetalle = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() + 'ElseIf ConceptoEntrada = 40 Then + ' CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() + ' CveVentaDetallePadre = TmpDT.FiltroPrimeroValor("CveVentaDetalle", $"Consec={Consec}").ToEntero() + ' 'CUANDO LA VENTADETALLE NO TENGA VALOR DEBE MARCAR ERROR, NUEVA RESTRICCION DE ALMACEN + ' If CveVentaDetallePadre < 0 Then + ' Alert("no se encontro la venta detalle nueva. Por favor comuniquese con atención SIG.", TipoMensaje.ToastError) + ' OcurrioError = True + ' Exit For + ' End If + 'Else + ' CveVentaDetalle = MovDet("CveVentaDetalle").ToString().ToEntero() + 'End If 'CUANDO LA VENTADETALLE NO TENGA VALOR DEBE MARCAR ERROR, NUEVA RESTRICCION DE ALMACEN If CveVentaDetalle < 0 Then From a6bae70c6663839c4066c0452401f13c405b07fe Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 18:46:34 -0700 Subject: [PATCH 6/7] Valor 2 para funcionalidad 702, CveVentaAnticipoPadre relacionada en factura --- Compras/PopUpVerFactura.aspx.vb | 12 ++++++++++++ Ventas/Ventas.aspx.vb | 20 +++++++++++++++----- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb index 9b63a00ee..2ce35856c 100644 --- a/Compras/PopUpVerFactura.aspx.vb +++ b/Compras/PopUpVerFactura.aspx.vb @@ -1810,6 +1810,18 @@ Partial Class PopUpVerFactura End If End If + 'SI ES TIPO RELACION 07- APLICACION DE ANTICIPOS + If dtVentas(0)("CveTipoRelacion").ToString.ToEntero = 7 Then + Dim RowTipoRelacion As DataRow = GlobalDTVtaTiposRelacion().FiltroPrimero($"CveTipoRelacion = {dtVentas(0)("CveTipoRelacion").ToString.ToEntero}") + + Vta.Timbre.CFDIRelacionados.TipoRelacion = RowTipoRelacion("SATClaveTipoRelacion").ToString() + Vta.Timbre.CFDIRelacionados.TipoRelacionTexto = RowTipoRelacion("SATTipoRelacion").ToString() + + If ObjVentas.GetVentasRelacionadas(CveVenta, UsuarioActual.CveEmpresa) Then + Vta.DtDocumentosRelacionados = ObjVentas.DtResultados.FiltraParametros("FolioFiscal IS NOT NULL") + End If + End If + 'End If 'If Vta.TipoDocto.Contiene("Egs", "Dev", "Ant") Then diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 1cb7988c1..0a069fb11 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -6241,6 +6241,7 @@ Partial Class Ventas End If If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "Cot", "PA") AndAlso CveVenta <= 0 AndAlso RBLPago.SelectedValue = "1" AndAlso PermiteCredito Then + 'FUNCIONALIDAD 702 - NO VERIFICAR LIMITE DE CRÉDITO Y CANDADOS DE VENTA If Not UsuarioActual.Empresa.Funcionalidad(702) = "1" Then RBLPago.SelectedValue = "1" RBLPago_SelectedIndexChanged(Nothing, Nothing) @@ -6253,7 +6254,7 @@ Partial Class Ventas LblCreditoDisponible.Text = CreditoDispo.FormatoNumero If PorcentajeCredito > 80 Then TrPorcentajeCredito.Visible = True : LblPorcentajeCredito.Text = $"{PorcentajeCredito.FormatoNumero}%" - If Not UsuarioActual.TienePermisoProceso(268) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "PA") Then + If Not UsuarioActual.TienePermisoProceso(268) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Ing", "Ant", "Rem", "PA") AndAlso (Not UsuarioActual.Empresa.Funcionalidad(702).Contiene("2")) Then Dim Vta As New ClsVentas Dim Opcion As Integer = Vta.ObtenerClienteLimitesVenta(CveCliente, UsuarioActual.CveEmpresa) Dim OpcionMsg As String = String.Format("El Cliente se encuentra bloqueado por la siguiente razón:

{0}", Vta.SerieVenta) @@ -6303,7 +6304,7 @@ Partial Class Ventas 'GENERAR AUTORIZACION SI TIENE EXCEDIO EL LIMITE DE CREDITO Select Case ValorAutorizacion Case "1" 'CREAR DOCUMENTO DE AUTORIZACION PA - If Not UsuarioActual.TienePermisoProceso(268) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Rem", "Ing", "Ant", "PA") Then + If Not UsuarioActual.TienePermisoProceso(268) AndAlso DdlTipoComprobante.SelectedValue.Contiene("Rem", "Ing", "Ant", "PA") AndAlso Not (UsuarioActual.Empresa.Funcionalidad(702).Contiene("2")) Then 'VERIFICAR CANDADOS DE VENTA, REMISIONES SIN FACTURAR, FACTURAS QUE NO TENGAN VENCIDAS Dim Vta As New ClsVentas @@ -8203,7 +8204,7 @@ Partial Class Ventas Dim CveVentaAnterior As Integer = Me.CveVenta GuardarVenta(ObjVentas, ObjConta, ObjInventario, ObjContr, ObjFactura, TmpDT, ObjFactura.CveNCaVincular, ObjContPaq, ObjBancos, ObjOS, - ObjEventos, ObjCGame, ObjClientes, EsNCAmortizacion:=EsNCAmortizacion) + ObjEventos, ObjCGame, ObjClientes, EsNCAmortizacion:=EsNCAmortizacion, CveAnticipoPadre:=CveAnticipoPadre) 'Agregamos las OCs a la tabla If ObjFactura.CveVenta > 0 AndAlso ErrorList.Count = 0 AndAlso DTOrdenesCompraPS IsNot Nothing AndAlso DTOrdenesCompraPS.Rows.Count > 0 AndAlso ErrorList.Count = 0 Then @@ -11178,7 +11179,7 @@ Partial Class Ventas #Region " GUARDAR - VENTA, PREPOLIZAS, INV, ESTIMACIONES, AC, NOTA DE CRÉDITO " Private Sub GuardarVenta(ByRef ObjVentas As ClsVentas, ByRef ObjConta As ClsContabilidad, ByRef ObjInventario As ClsInventarios, ByRef ObjContr As ClsContratos, factura As Modelos.Factura, ByRef TmpDTDetalle As DataTable, CveNCaVincular As Integer, ByRef objContPaqi As ClsContPAQi, Optional ByRef ObjBancos As ClsBancos = Nothing, Optional ByRef ObjOS As ClsOS = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing, ByRef Optional ObjCGame As ClsCGame = Nothing, - ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing) + ByRef Optional ObjCliente As ClsClientes = Nothing, Optional EsNCAmortizacion As Boolean = False, Optional NCDescuento As Boolean = False, Optional ListaNCDescuento As List(Of Modelos.Factura) = Nothing, Optional CveAnticipoPadre As Integer = -1) Dim Msgok As New StringBuilder Dim CveAlmacenTraspasoOrigen As Integer = -1 @@ -11284,7 +11285,7 @@ Partial Class Ventas FormaPaqueteria:=RblPaqueteria.SelectedValue.ToEntero, FacturarSucursal:=factura.FacturarSucursal, VentaDesglosaIEPS:=factura.VentaDesglosaIEPS, RFCReceptor:=RFCReceptor, Adjunto:=Adjunto, DevolucionImportePagado:=factura.DevolucionImportePagado) Then ErrorList.Add("Ocurrió un error al Generar la Venta.
Revise su factura y cualquier detalle comuníquese a Soporte Técnico") Else - If factura.TipoDocto.Contiene("Dev", "Egs") OrElse DtVentasNC IsNot Nothing OrElse CveEstatusRefacturacion > 0 Then + If factura.TipoDocto.Contiene("Dev", "Egs") OrElse DtVentasNC IsNot Nothing OrElse CveEstatusRefacturacion > 0 OrElse CveAnticipoPadre > 0 Then If DtVentasNC IsNot Nothing Then For Each row As DataRow In DtVentasNC.Rows If Not row("CveVenta").ToString().ToEntero() = -1 Then @@ -11294,6 +11295,7 @@ Partial Class Ventas End If Next Else + 'SI ES REFACTURACION DEBE AGREGAR LA VENTA ANTERIOR COMO RELACIONADA TAMBIEN If Not CveVenta = -1 Then If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, CveVenta) Then ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico") @@ -11305,6 +11307,14 @@ Partial Class Ventas End If End If End If + + 'SI TIENE UN ANTICIPO TAMBIEN DEBE RELACIONARLO + If CveAnticipoPadre > 0 Then + If Not ObjVentas.AddVentasRelacionadas(ObjVentas.CveVenta, CveAnticipoPadre) Then + ErrorList.Add("Ocurrió un error al relacionar las ventas entre si comuníquese a Soporte Técnico") + End If + End If + End If End If From 0d4dec251499f33f08cc1d39d36b855843b87f3e Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Sat, 25 Sep 2021 18:47:03 -0700 Subject: [PATCH 7/7] Carga de Historial de ventas, CxC,anticipos y bancos al hacer click en el TAB --- Ventas/Clientes.aspx | 152 ++++++++++++++++++++++++++-------------- Ventas/Clientes.aspx.vb | 44 +++++++++--- 2 files changed, 133 insertions(+), 63 deletions(-) diff --git a/Ventas/Clientes.aspx b/Ventas/Clientes.aspx index 4362af25c..f2340f58a 100644 --- a/Ventas/Clientes.aspx +++ b/Ventas/Clientes.aspx @@ -1231,8 +1231,12 @@ - + + + Historial de Ventas + +
@@ -1343,8 +1347,7 @@ - - + - + + + Cuentas x Cobrar + -
@@ -1582,6 +1587,7 @@
+