Cancelar movimientos de usados
This commit is contained in:
@@ -1912,6 +1912,27 @@ Namespace Modelos
|
|||||||
DtVentasNC.Rows.Add(Dr)
|
DtVentasNC.Rows.Add(Dr)
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
Private Function CancelarMovimientosUsados(factura As Modelos.Factura, UsuarioActual As Usuario, ByRef ObjAcum As ClsAcumuladores) As Boolean
|
||||||
|
Dim Retorno As Boolean = True
|
||||||
|
If ObjAcum.DistribuidorMovtosGet(factura.CveCliente, UsuarioActual.CveEmpresa, CveVentaRNCCargo:=factura.CveVenta, CveConcepto:=2) Then
|
||||||
|
Dim CveConceptoSalida As Integer = 2
|
||||||
|
|
||||||
|
Dim DtSalidas As DataTable = ObjAcum.DtResultados.FiltraParametros("Cantidad > 0")
|
||||||
|
If DtSalidas IsNot Nothing AndAlso DtSalidas.Rows.Count > 0 Then
|
||||||
|
For Each RowSalida As DataRow In DtSalidas.Rows
|
||||||
|
Dim Cantidad As Decimal = RowSalida("Cantidad").ToString().ToDecimal() * -1
|
||||||
|
|
||||||
|
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, Cantidad, RowSalida("CveTamaño").ToString.ToEntero, CveConceptoSalida, factura.CveVenta, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 0D, "") Then
|
||||||
|
Retorno = False
|
||||||
|
Exit For
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
DtSalidas.Dispose()
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
Return Retorno
|
||||||
|
End Function
|
||||||
Private Function GuardarUsados(ByRef ObjAcum As ClsAcumuladores, ByRef ObjVentas As ClsVentas, ByRef ObjInventario As ClsInventarios, factura As Modelos.Factura, ByRef Optional Resp As MMensajeFactura = Nothing) As Boolean
|
Private Function GuardarUsados(ByRef ObjAcum As ClsAcumuladores, ByRef ObjVentas As ClsVentas, ByRef ObjInventario As ClsInventarios, factura As Modelos.Factura, ByRef Optional Resp As MMensajeFactura = Nothing) As Boolean
|
||||||
Dim Resultado As Boolean = True
|
Dim Resultado As Boolean = True
|
||||||
|
|
||||||
@@ -4574,6 +4595,7 @@ Namespace Modelos
|
|||||||
Dim ObjInventario As New ClsInventarios(ObjVentas.IniciaTransacSQL())
|
Dim ObjInventario As New ClsInventarios(ObjVentas.IniciaTransacSQL())
|
||||||
Dim ObjContrato As New ClsContratos(ObjVentas.IniciaTransacSQL())
|
Dim ObjContrato As New ClsContratos(ObjVentas.IniciaTransacSQL())
|
||||||
Dim ObjEventos As New ClsOIEventos(ObjVentas.IniciaTransacSQL())
|
Dim ObjEventos As New ClsOIEventos(ObjVentas.IniciaTransacSQL())
|
||||||
|
Dim ObjAcum As New ClsAcumuladores(ObjVentas.IniciaTransacSQL())
|
||||||
Dim ObjAC As ClsContPAQi = Nothing
|
Dim ObjAC As ClsContPAQi = Nothing
|
||||||
|
|
||||||
If UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
|
If UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
|
||||||
@@ -4990,6 +5012,16 @@ Namespace Modelos
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'CANCELA MOVIMIENTOS DE USADOS
|
||||||
|
If Not ErrorCancelar Then
|
||||||
|
If ObjFactura.TipoDocto = "Ing" Then
|
||||||
|
If Not CancelarMovimientosUsados(ObjFactura, UsuarioActual, ObjAcum) Then
|
||||||
|
ErrorCancelar = True
|
||||||
|
MensajeError = "Ocurrió un error al cancelar los movimientos de usados"
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE
|
'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE
|
||||||
|
|||||||
@@ -7791,6 +7791,7 @@
|
|||||||
var totalCheque = ToDouble($get("TxtImporteCheque").value);
|
var totalCheque = ToDouble($get("TxtImporteCheque").value);
|
||||||
var totalTransferencia = ToDouble($get("TxtImporteTransferencia").value);
|
var totalTransferencia = ToDouble($get("TxtImporteTransferencia").value);
|
||||||
var totalRNC = ToDouble($get("HdnTotalRNC").value);
|
var totalRNC = ToDouble($get("HdnTotalRNC").value);
|
||||||
|
var totalAmortizado = ToDouble($get("HdnAnticipos").value);
|
||||||
|
|
||||||
var TotalOtrosContado = 0;
|
var TotalOtrosContado = 0;
|
||||||
|
|
||||||
@@ -7800,7 +7801,7 @@
|
|||||||
}
|
}
|
||||||
} catch (e) { }
|
} catch (e) { }
|
||||||
|
|
||||||
var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia + TotalOtrosContado + totalRNC;
|
var total = totalEfectivo + totalCredito + totalDebito + totalCheque + totalTransferencia + TotalOtrosContado + totalRNC + totalAmortizado;
|
||||||
var totalVenta = ToDouble($get('TxtTotal').value);
|
var totalVenta = ToDouble($get('TxtTotal').value);
|
||||||
|
|
||||||
if (total > totalVenta) {
|
if (total > totalVenta) {
|
||||||
@@ -7809,7 +7810,7 @@
|
|||||||
$get("TxtCambio").value = "0.00";
|
$get("TxtCambio").value = "0.00";
|
||||||
}
|
}
|
||||||
|
|
||||||
$get("TxtImporteContado").value = total - totalRNC;
|
$get("TxtImporteContado").value = total - totalRNC - totalAmortizado;
|
||||||
}
|
}
|
||||||
|
|
||||||
// ****************************************************************************************************************************************************************************
|
// ****************************************************************************************************************************************************************************
|
||||||
|
|||||||
@@ -10084,8 +10084,9 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If tPS.Length > 1000 Then
|
If tPS.Length >= 1000 Then
|
||||||
tPS = tPS.Remove(999, tPS.Length - 1)
|
Dim tPSRecortado = tPS.Remove(999, tPS.Length - 999)
|
||||||
|
tPS = tPSRecortado
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'condicionante, especial
|
'condicionante, especial
|
||||||
@@ -10690,8 +10691,14 @@ Partial Class Ventas
|
|||||||
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
factura.Timbre.Comprobante.Serie = ObjVentas.Serie
|
||||||
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString()
|
factura.Timbre.Comprobante.Folio = ObjVentas.Folio.ToString()
|
||||||
|
|
||||||
If Not GuardarUsados(ObjVentas.IniciaTransacSQL, factura) Then
|
If ObjFactura.TipoDocto = "Ing" Then
|
||||||
ErrorList.Add("Error al guardar usados")
|
If Not GuardarUsados(2, ObjVentas.IniciaTransacSQL, factura) Then
|
||||||
|
ErrorList.Add("Error al guardar usados")
|
||||||
|
End If
|
||||||
|
ElseIf ObjFactura.TipoDocto = "Dev" Then
|
||||||
|
If Not GuardarUsados(1, ObjVentas.IniciaTransacSQL, factura) Then
|
||||||
|
ErrorList.Add("Error al guardar usados")
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
If factura.TipoDocto = "Egs" AndAlso NuevaFactura = 1 Then
|
||||||
@@ -12109,7 +12116,7 @@ Partial Class Ventas
|
|||||||
|
|
||||||
importeMovimiento = 0
|
importeMovimiento = 0
|
||||||
Case 103 'Descuento
|
Case 103 'Descuento
|
||||||
If ObjFactura.Descuento <> 0 AndAlso Not ObjFactura.TipoDocto.Contiene("Rem", "RNC") AndAlso DdlTipoAmortizacionAnticipo.SelectedValue = "-1" Then
|
If ObjFactura.Descuento <> 0 AndAlso Not ObjFactura.TipoDocto.Contiene("Rem", "RNC") AndAlso (DdlTipoAmortizacionAnticipo.SelectedValue = "-1" OrElse UsuarioActual.CveEmpresa = 141) Then
|
||||||
|
|
||||||
importeMovimiento = ObjFactura.Descuento * Multiplicador * ValorMultiplicador
|
importeMovimiento = ObjFactura.Descuento * Multiplicador * ValorMultiplicador
|
||||||
importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador * ValorMultiplicador
|
importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador * ValorMultiplicador
|
||||||
@@ -14319,6 +14326,7 @@ Partial Class Ventas
|
|||||||
'cuando es amortización por NOTA DE CREDITO
|
'cuando es amortización por NOTA DE CREDITO
|
||||||
If DdlTipoAmortizacionAnticipo.SelectedValue = "2" Then
|
If DdlTipoAmortizacionAnticipo.SelectedValue = "2" Then
|
||||||
LblAntAplicados.Text = String.Format("Amortización por Nota de Crédito: {0:C}", Amortizacion) : LblAntAplicados.Visible = True
|
LblAntAplicados.Text = String.Format("Amortización por Nota de Crédito: {0:C}", Amortizacion) : LblAntAplicados.Visible = True
|
||||||
|
HdnAnticipos.Value = Amortizacion.RoundSQL(2).ToString()
|
||||||
Amortizacion = 0
|
Amortizacion = 0
|
||||||
HdnTipoDescuento.Value = "-1"
|
HdnTipoDescuento.Value = "-1"
|
||||||
HdnDescuento.Value = "0"
|
HdnDescuento.Value = "0"
|
||||||
@@ -16425,7 +16433,7 @@ Partial Class Ventas
|
|||||||
Dim Row As DataRow = Nothing
|
Dim Row As DataRow = Nothing
|
||||||
Dim TotalCalculableImpuestos As Decimal = 0
|
Dim TotalCalculableImpuestos As Decimal = 0
|
||||||
Dim TotalCalculableImpuestosIVA As Decimal = 0
|
Dim TotalCalculableImpuestosIVA As Decimal = 0
|
||||||
PU = PU.RoundAD(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
|
PU = PU.RoundSQL(6) ' el precio unitario puede llevar hasta 6 decimales permitidos
|
||||||
|
|
||||||
If Not TmpDT.Columns.Contains("RetIVA") Then
|
If Not TmpDT.Columns.Contains("RetIVA") Then
|
||||||
TmpDT.Columns.Add("RetIVA", GetType(Decimal))
|
TmpDT.Columns.Add("RetIVA", GetType(Decimal))
|
||||||
@@ -16555,24 +16563,24 @@ Partial Class Ventas
|
|||||||
|
|
||||||
|
|
||||||
Row("IVA") = Row("PorcentajeIVA")
|
Row("IVA") = Row("PorcentajeIVA")
|
||||||
Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundAD(NumeroDecimales)
|
Row("ImporteIVA") = (Row("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
|
||||||
Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
|
Row("ImporteRetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Row("RetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
|
Row("RetIVA") = (ClienteRetIVA * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
|
|
||||||
Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
|
Row("ImporteRetISR") = (ClienteRetISR * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
Row("PorcentajeRetIVA") = ClienteRetIVA
|
Row("PorcentajeRetIVA") = ClienteRetIVA
|
||||||
Row("PorcentajeRetISR") = ClienteRetISR
|
Row("PorcentajeRetISR") = ClienteRetISR
|
||||||
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
|
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
|
||||||
Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundAD(NumeroDecimales)
|
Row("ImporteIEPS") = (DrPS("IEPSPorcentaje").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
|
||||||
Row("IEPS") = Row("ImporteIEPS")
|
Row("IEPS") = Row("ImporteIEPS")
|
||||||
Row("Descuento") = (Descuento).RoundAD(NumeroDecimales)
|
Row("Descuento") = (Descuento).RoundSQL(NumeroDecimales)
|
||||||
Row("TipoDescuento") = HdnTipoDescuento.Value
|
Row("TipoDescuento") = HdnTipoDescuento.Value
|
||||||
Row("CvePromocionDetalle") = CvePromocionDetalle
|
Row("CvePromocionDetalle") = CvePromocionDetalle
|
||||||
Row("Total") = (Cantidad * PU)
|
Row("Total") = (Cantidad * PU)
|
||||||
Row("TotalImporte") = (Cantidad * PU).RoundAD(NumeroDecimales)
|
Row("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales)
|
||||||
|
|
||||||
'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
|
'Row("AsientoContableVentas") = DrPS("AsientoContableVentas")
|
||||||
' Row("IdCtaContVentas") = IdCtaContable
|
' Row("IdCtaContVentas") = IdCtaContable
|
||||||
@@ -26545,6 +26553,12 @@ Partial Class Ventas
|
|||||||
Return Nothing
|
Return Nothing
|
||||||
End Function
|
End Function
|
||||||
Private Function AgregaPSCotizacion() As Boolean
|
Private Function AgregaPSCotizacion() As Boolean
|
||||||
|
'Dim ObjFactCotizacion As New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa)
|
||||||
|
|
||||||
|
'Dim TotalCotizacion As Decimal = ObjFactCotizacion.Total 'TmpDT.SUM("TotalImporte").ToDecimal() + TmpDT.SUM("ImporteIVA").ToDecimal() + TmpDT.SUM("ImporteIEPS").ToDecimal() - TmpDT.SUM("ImporteRetIVA").ToDecimal() - TmpDT.SUM("ImporteRetISR").ToDecimal()
|
||||||
|
|
||||||
|
'ObjFactCotizacion.Dispose()
|
||||||
|
|
||||||
If DtCotizacionesPS IsNot Nothing Then
|
If DtCotizacionesPS IsNot Nothing Then
|
||||||
Dim tCantidad As Decimal = 0
|
Dim tCantidad As Decimal = 0
|
||||||
For Each Dr As DataRow In DtCotizacionesPS.Select()
|
For Each Dr As DataRow In DtCotizacionesPS.Select()
|
||||||
@@ -26554,6 +26568,15 @@ Partial Class Ventas
|
|||||||
Dr("CveProyecto").ToString().ToEntero(), Dr("Proyecto").ToString(), Dr("CveSubProyecto").ToString().ToEntero(), Dr("SubProyecto").ToString(),
|
Dr("CveProyecto").ToString().ToEntero(), Dr("Proyecto").ToString(), Dr("CveSubProyecto").ToString().ToEntero(), Dr("SubProyecto").ToString(),
|
||||||
CveContratoDetalle:=Dr("CveContratoDetalle").ToString().ToEntero(), CveVentaDetalleCotizacion:=Dr("CveVentaDetalle").ToString().ToEntero(), SeActualiza:=True)
|
CveContratoDetalle:=Dr("CveContratoDetalle").ToString().ToEntero(), CveVentaDetalleCotizacion:=Dr("CveVentaDetalle").ToString().ToEntero(), SeActualiza:=True)
|
||||||
Next
|
Next
|
||||||
|
'Dim TotalFactura = TmpDT.SUM("TotalImporte").ToDecimal() + TmpDT.SUM("ImporteIVA").ToDecimal() + TmpDT.SUM("ImporteIEPS").ToDecimal() - TmpDT.SUM("ImporteRetIVA").ToDecimal() - TmpDT.SUM("ImporteRetISR").ToDecimal()
|
||||||
|
|
||||||
|
'Dim Diferencia As Decimal = TotalCotizacion - TotalFactura
|
||||||
|
|
||||||
|
'If Diferencia <> 0 Then
|
||||||
|
' Dim LastRow As DataRow = TmpDT.Rows(TmpDT.Rows.Count - 1)
|
||||||
|
' LastRow("ImporteIVA") = LastRow("ImporteIVA").ToString().ToDecimal() - Diferencia
|
||||||
|
'End If
|
||||||
|
|
||||||
CalculaTotalesVenta()
|
CalculaTotalesVenta()
|
||||||
Return True
|
Return True
|
||||||
Else
|
Else
|
||||||
@@ -26566,6 +26589,9 @@ Partial Class Ventas
|
|||||||
#Region " COTIZACIONES - FACTURAR "
|
#Region " COTIZACIONES - FACTURAR "
|
||||||
Private Function PreparaFacturarCotizacion() As Boolean
|
Private Function PreparaFacturarCotizacion() As Boolean
|
||||||
'LIMPIAMOS
|
'LIMPIAMOS
|
||||||
|
|
||||||
|
'Dim TotalCotizacion As Decimal = TxtTotal.Text.Replace(",", "").ToDecimal()
|
||||||
|
|
||||||
TmpDT.Rows.Clear()
|
TmpDT.Rows.Clear()
|
||||||
TxtSubTotal.Text = "0.00"
|
TxtSubTotal.Text = "0.00"
|
||||||
TxtSubTotal2.Text = "0.00"
|
TxtSubTotal2.Text = "0.00"
|
||||||
@@ -26594,6 +26620,18 @@ Partial Class Ventas
|
|||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'Dim TotalFactura As Decimal = TmpDT.SUM("TotalImporte").ToDecimal() + TmpDT.SUM("ImporteIVA").ToDecimal() + TmpDT.SUM("ImporteIEPS").ToDecimal() - TmpDT.SUM("ImporteRetIVA").ToDecimal() - TmpDT.SUM("ImporteRetISR").ToDecimal()
|
||||||
|
|
||||||
|
'Dim Diferencia As Decimal = TotalCotizacion - TotalFactura
|
||||||
|
|
||||||
|
'If Diferencia <> 0 Then
|
||||||
|
' Dim LastRow As DataRow = TmpDT.Rows(TmpDT.Rows.Count - 1)
|
||||||
|
|
||||||
|
' LastRow("ImporteIVA") = LastRow("ImporteIVA").ToString().ToDecimal() + Diferencia
|
||||||
|
|
||||||
|
' CalculaTotalesVenta()
|
||||||
|
'End If
|
||||||
|
|
||||||
If TmpDT.Rows.Count = 0 Then
|
If TmpDT.Rows.Count = 0 Then
|
||||||
Alert("No hay conceptos por facturar de esta cotización o ha sido cambiada su información. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
|
Alert("No hay conceptos por facturar de esta cotización o ha sido cambiada su información. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
|
||||||
Return False
|
Return False
|
||||||
@@ -27985,17 +28023,17 @@ Partial Class Ventas
|
|||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Function GuardarUsados(SqlTransaccion As SqlClient.SqlTransaction, factura As Modelos.Factura) As Boolean
|
Private Function GuardarUsados(CveConcepto As Integer, SqlTransaccion As SqlClient.SqlTransaction, factura As Modelos.Factura) As Boolean
|
||||||
Dim Resultado As Boolean = True
|
Dim Resultado As Boolean = True
|
||||||
|
|
||||||
If ClienteEsDistribuidor AndAlso factura.TipoDocto.Contiene("Ing") Then
|
If ClienteEsDistribuidor Then
|
||||||
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
Dim ObjAcum As New ClsAcumuladores(SqlTransaccion)
|
||||||
|
|
||||||
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
Dim CvePSPSA As Integer = UsuarioActual.Empresa.Funcionalidad(533).ToEntero
|
||||||
|
|
||||||
For Each drow As DataRow In factura.DtDetalle.Rows
|
For Each drow As DataRow In factura.DtDetalle.Rows
|
||||||
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
If drow("CveTamaño").ToString.ToEntero > 0 And (CvePSPSA <> drow("CvePS").ToString.ToEntero) Then
|
||||||
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, 2, factura.CveVenta, UsuarioActual.CveUsuario,
|
If Not ObjAcum.DistribuidorMovtosAdd(factura.CveCliente, drow("Cantidad").ToString.ToEntero, drow("CveTamaño").ToString.ToEntero, CveConcepto, factura.CveVenta, UsuarioActual.CveUsuario,
|
||||||
UsuarioActual.CveEmpresa, 0D, "") Then
|
UsuarioActual.CveEmpresa, 0D, "") Then
|
||||||
Resultado = False
|
Resultado = False
|
||||||
Exit For
|
Exit For
|
||||||
|
|||||||
Reference in New Issue
Block a user