-- cambio de vinculacion de anticipos por descuento
This commit is contained in:
@@ -104,6 +104,15 @@ Partial Class Compras_Compras
|
|||||||
Set(ByVal value As List(Of String))
|
Set(ByVal value As List(Of String))
|
||||||
ViewState("ListaDocumentos") = value
|
ViewState("ListaDocumentos") = value
|
||||||
End Set
|
End Set
|
||||||
|
End Property
|
||||||
|
|
||||||
|
Public Property TieneAnticiposXML As Boolean
|
||||||
|
Get
|
||||||
|
TieneAnticiposXML = DirectCast(ViewState("TieneAnticiposXML"), Boolean)
|
||||||
|
End Get
|
||||||
|
Set(ByVal value As Boolean)
|
||||||
|
ViewState("TieneAnticiposXML") = value
|
||||||
|
End Set
|
||||||
End Property
|
End Property
|
||||||
|
|
||||||
Private Property DTOCTemp As DataTable
|
Private Property DTOCTemp As DataTable
|
||||||
@@ -873,6 +882,7 @@ Partial Class Compras_Compras
|
|||||||
|
|
||||||
|
|
||||||
Private Property Descuentos As Decimal = 0
|
Private Property Descuentos As Decimal = 0
|
||||||
|
Private Property Amortizaciones As Decimal = 0
|
||||||
Private Property EmisorRFC As String
|
Private Property EmisorRFC As String
|
||||||
Private Property ReceptorRFC As String
|
Private Property ReceptorRFC As String
|
||||||
Private Property TrasladoIVA As Decimal = 0
|
Private Property TrasladoIVA As Decimal = 0
|
||||||
@@ -1116,6 +1126,7 @@ Partial Class Compras_Compras
|
|||||||
'ImgBtnBuscarOC.Attributes.Add("data-toggle", "tooltip")
|
'ImgBtnBuscarOC.Attributes.Add("data-toggle", "tooltip")
|
||||||
'ImgBtnBuscarOC.Attributes.Add("data-placement", "top")
|
'ImgBtnBuscarOC.Attributes.Add("data-placement", "top")
|
||||||
CargaDatosAgregarPS()
|
CargaDatosAgregarPS()
|
||||||
|
TieneAnticiposXML = False
|
||||||
Modalidad = ""
|
Modalidad = ""
|
||||||
Version = ""
|
Version = ""
|
||||||
CveMetodoPago = -1
|
CveMetodoPago = -1
|
||||||
@@ -1405,13 +1416,12 @@ Partial Class Compras_Compras
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
||||||
LblSaldoFactura.Text = If(CveCompra > 0, Saldo.FormatoNumero, TxtTotal.Text.FormatoNumero)
|
LblSaldoFactura.Text = If(CveCompra > 0, Saldo.FormatoNumero, TxtTotal.Text.FormatoNumero)
|
||||||
'cuando es factura con amortizacion, el importe a descontar es el saldo que se debe de aplicar para la amortizacion
|
'cuando es factura con amortizacion, el importe a descontar es el saldo que se debe de aplicar para la amortizacion
|
||||||
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 Then
|
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 Then
|
||||||
LblSaldoFactura.Text = TmpDT.SUMD("Descuento").ToString
|
LblSaldoFactura.Text = TmpDT.SUMD("Descuento").ToString
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
If UsuarioActual.CveEmpresa = 126 And CveCompra > 0 Then
|
If UsuarioActual.CveEmpresa = 126 And CveCompra > 0 Then
|
||||||
LnkExportaGv.Visible = True
|
LnkExportaGv.Visible = True
|
||||||
End If
|
End If
|
||||||
@@ -1833,6 +1843,20 @@ Partial Class Compras_Compras
|
|||||||
VerVales.Visible = True
|
VerVales.Visible = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If TieneAnticiposXML Then 'si tiene anticipos, limpia los descuentos
|
||||||
|
'LblAmortizacion.Text = ImporteAnticipo.FormatoNumero
|
||||||
|
TxtDescuento.Text = "0.00"
|
||||||
|
LblAmortizacion.Text = Descuentos.FormatoNumero
|
||||||
|
'limpia los descuentos
|
||||||
|
For Each drr As DataRow In TmpDT.Rows
|
||||||
|
'drr("Total") = drr("Total").ToString.ToDecimal + drr("Descuento").ToString.ToDecimal
|
||||||
|
drr("Amortizacion") = drr("Descuento") 'pasamos el importe de descuento a amortizacion
|
||||||
|
drr("Descuento") = 0.00
|
||||||
|
Next
|
||||||
|
Amortizaciones = Descuentos
|
||||||
|
Descuentos = 0
|
||||||
|
End If
|
||||||
|
|
||||||
Dim Msg As String = ""
|
Dim Msg As String = ""
|
||||||
|
|
||||||
|
|
||||||
@@ -2131,7 +2155,7 @@ Partial Class Compras_Compras
|
|||||||
Private Sub ValidacionesTotalesXml()
|
Private Sub ValidacionesTotalesXml()
|
||||||
|
|
||||||
Dim Msg As String = ""
|
Dim Msg As String = ""
|
||||||
Dim SubtotalTemp = TmpDT.SUM("Total") + Math.Round(TmpDT.SUM("Descuento"), 2)
|
Dim SubtotalTemp = TmpDT.SUM("Total") + Math.Round(TmpDT.SUM("Descuento") + Math.Round(TmpDT.SUM("Amortizacion")), 2)
|
||||||
Dim DescuentosTemp = TmpDT.SUM("Descuento")
|
Dim DescuentosTemp = TmpDT.SUM("Descuento")
|
||||||
Dim Subtotal2Temp = TmpDT.SUM("Total")
|
Dim Subtotal2Temp = TmpDT.SUM("Total")
|
||||||
Dim IVATemp = TmpDT.SUM("IVA")
|
Dim IVATemp = TmpDT.SUM("IVA")
|
||||||
@@ -4373,7 +4397,7 @@ Partial Class Compras_Compras
|
|||||||
|
|
||||||
'METODO DE PREPOLIZA DE ALMACEN
|
'METODO DE PREPOLIZA DE ALMACEN
|
||||||
If UsuarioActual.CveEmpresa.Contiene(1, 119, 72, 80) And UsuarioActual.Empresa.UsaInventarios And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
|
If UsuarioActual.CveEmpresa.Contiene(1, 119, 72, 80) And UsuarioActual.Empresa.UsaInventarios And Not UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
|
||||||
Dim ImporteAlmacen = TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal
|
Dim ImporteAlmacen = TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 AND ISNULL(CveAlmacen,0) = 0 AND ISNULL(AplicaCostoIndirecto,0) <> 1 AND CveTipoPS = 2").ToString.ToDecimal
|
||||||
If ImporteAlmacen > 0 Then
|
If ImporteAlmacen > 0 Then
|
||||||
If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then
|
If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV", "Ant") Then
|
||||||
If (CveImportacion > 0 Or CveFlete > 0) Then
|
If (CveImportacion > 0 Or CveFlete > 0) Then
|
||||||
@@ -4406,19 +4430,19 @@ Partial Class Compras_Compras
|
|||||||
CveEstatusFactura = 6
|
CveEstatusFactura = 6
|
||||||
End If
|
End If
|
||||||
'hay amortización directa como descuento. RMF Temporal
|
'hay amortización directa como descuento. RMF Temporal
|
||||||
'If UsuarioActual.CveEmpresa = 119 Then
|
If UsuarioActual.CveEmpresa = 119 Then
|
||||||
' If LblAmortizacion.Text.ToDouble > 0 AndAlso TxtDescuento.Text.ToDouble = 0 Then
|
'If LblAmortizacion.Text.ToDouble > 0 AndAlso TxtDescuento.Text.ToDouble = 0 Then
|
||||||
' TxtDescuento.Text = LblAmortizacion.Text
|
' TxtDescuento.Text = LblAmortizacion.Text
|
||||||
' LblAmortizacion.Text = "0.00"
|
' LblAmortizacion.Text = "0.00"
|
||||||
' End If
|
'End If
|
||||||
|
|
||||||
' 'o si el descuento es igual a la amortizacion
|
'o si el descuento es igual a la amortizacion
|
||||||
' If LblAmortizacion.Text.ToDouble = TxtDescuento.Text.ToDouble Then
|
'If LblAmortizacion.Text.ToDouble = TxtDescuento.Text.ToDouble Then
|
||||||
' TxtDescuento.Text = LblAmortizacion.Text
|
' TxtDescuento.Text = LblAmortizacion.Text
|
||||||
' LblAmortizacion.Text = "0.00"
|
' LblAmortizacion.Text = "0.00"
|
||||||
' End If
|
'End If
|
||||||
|
|
||||||
'End If
|
End If
|
||||||
|
|
||||||
'Compra
|
'Compra
|
||||||
If ObjCompras.AddCompra(DdlTipoComprobante.SelectedValue, TxtDescripcion.Text.Trim, TxtSerie.Text.Trim, TxtFolio.Text.Trim, TxtFolioSecundario.Text.Trim, CveProveedor, TxtSubTotal.Text.ToDouble, TxtDescuento.Text.ToDouble,
|
If ObjCompras.AddCompra(DdlTipoComprobante.SelectedValue, TxtDescripcion.Text.Trim, TxtSerie.Text.Trim, TxtFolio.Text.Trim, TxtFolioSecundario.Text.Trim, CveProveedor, TxtSubTotal.Text.ToDouble, TxtDescuento.Text.ToDouble,
|
||||||
@@ -5865,6 +5889,11 @@ Partial Class Compras_Compras
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(577).ToEntero = 1 Then
|
||||||
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(578).ToEntero
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
'Agregamos el Opuesto del 22 -> 15
|
'Agregamos el Opuesto del 22 -> 15
|
||||||
If importeMovimiento <> 0 Then
|
If importeMovimiento <> 0 Then
|
||||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 15, Concepto + If(tipoCambioActual > 1, $" TC: {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza, TipoCambio:=tipoCambioActual) Then
|
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, 15, Concepto + If(tipoCambioActual > 1, $" TC: {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, Contabilizable:=SeContabiliza, TipoCambio:=tipoCambioActual) Then
|
||||||
@@ -6181,33 +6210,31 @@ Partial Class Compras_Compras
|
|||||||
Else
|
Else
|
||||||
importeMovimiento = 0
|
importeMovimiento = 0
|
||||||
End If
|
End If
|
||||||
Case 285 'Ret IVA 6% Servicios
|
Case 285 'Ret IVA 6% Servicios
|
||||||
|
|
||||||
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(578).ToEntero
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(578).ToEntero
|
||||||
|
|
||||||
'If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
|
'If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
|
||||||
' If ObjConta.DtResultados.Rows.Count > 0 Then
|
' If ObjConta.DtResultados.Rows.Count > 0 Then
|
||||||
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
||||||
' CveCuenta = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
' CveCuenta = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
||||||
' End If
|
' End If
|
||||||
'End If
|
'End If
|
||||||
|
|
||||||
|
|
||||||
If DdlRetIVAConcepto.SelectedValue.ToEntero = 5 Then
|
If DdlRetIVAConcepto.SelectedValue.ToEntero = 5 Then
|
||||||
|
|
||||||
If CveMoneda = 2 Then
|
If CveMoneda = 2 Then
|
||||||
importeMN = TmpDT.SUMD("RetIVA") * TxtTC.Text.ToDecimal
|
importeMN = TmpDT.SUMD("RetIVA") * TxtTC.Text.ToDecimal
|
||||||
Else
|
Else
|
||||||
importeMN = TmpDT.SUMD("RetIVA")
|
importeMN = TmpDT.SUMD("RetIVA")
|
||||||
importeMovimiento = TmpDT.SUMD("RetIVA")
|
importeMovimiento = TmpDT.SUMD("RetIVA")
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Else
|
Else
|
||||||
importeMovimiento = 0
|
importeMovimiento = 0
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
Case 6 'Compra
|
Case 6 'Compra
|
||||||
|
|
||||||
Dim AgregaMercanciaInventario As Boolean = UsuarioActual.CveEmpresa.Contiene(1, 72, 80, 119) AndAlso UsuarioActual.Empresa.UsaInventarios AndAlso Not UsuarioActual.Empresa.Funcionalidad(126) = "1"
|
Dim AgregaMercanciaInventario As Boolean = UsuarioActual.CveEmpresa.Contiene(1, 72, 80, 119) AndAlso UsuarioActual.Empresa.UsaInventarios AndAlso Not UsuarioActual.Empresa.Funcionalidad(126) = "1"
|
||||||
@@ -6787,6 +6814,7 @@ Partial Class Compras_Compras
|
|||||||
Else
|
Else
|
||||||
ErrorPrepoliza = True
|
ErrorPrepoliza = True
|
||||||
Exit For
|
Exit For
|
||||||
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
|
||||||
' FLUCTUACION CAMBIARIA
|
' FLUCTUACION CAMBIARIA
|
||||||
@@ -7017,7 +7045,7 @@ Partial Class Compras_Compras
|
|||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If TxtTotal.Text.ToDouble > 0 Then
|
If TxtTotal.Text.ToDouble > 0 AndAlso TieneAnticiposXML = False Then
|
||||||
importeMNNC = importeMovimientoNC * tipoCambioActual * Multiplicador
|
importeMNNC = importeMovimientoNC * tipoCambioActual * Multiplicador
|
||||||
IdCtaContable = CtaProveedorExtranjera ' CtaProveedorAnticiposExtranjera
|
IdCtaContable = CtaProveedorExtranjera ' CtaProveedorAnticiposExtranjera
|
||||||
CveCuenta = CveCuentaProveedorExtranjera 'CveCuentaProveedorAnticiposExtranjera
|
CveCuenta = CveCuentaProveedorExtranjera 'CveCuentaProveedorAnticiposExtranjera
|
||||||
@@ -7119,7 +7147,7 @@ Partial Class Compras_Compras
|
|||||||
ErrorPrepoliza = True
|
ErrorPrepoliza = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If TxtTotal.Text.ToDouble > 0 Then
|
If TxtTotal.Text.ToDouble > 0 AndAlso TieneAnticiposXML = False Then
|
||||||
Dim IdCtaContablePago As Integer = CtaProveedor
|
Dim IdCtaContablePago As Integer = CtaProveedor
|
||||||
Dim CveCuentaPago As Integer = CveCuentaProveedor
|
Dim CveCuentaPago As Integer = CveCuentaProveedor
|
||||||
Dim usacomplementariaProveedor As Boolean = False
|
Dim usacomplementariaProveedor As Boolean = False
|
||||||
@@ -7180,15 +7208,19 @@ Partial Class Compras_Compras
|
|||||||
Dim PorcentajePagoAnt As Decimal = importeMovimiento / If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, TmpDT.SUMD("ImporteConImpuestos"), TxtTotal.Text.ToDecimal)
|
Dim PorcentajePagoAnt As Decimal = importeMovimiento / If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, TmpDT.SUMD("ImporteConImpuestos"), TxtTotal.Text.ToDecimal)
|
||||||
Dim ImporteIVA As Decimal = Math.Round(PorcentajePagoAnt * TxtIVA.Text.ToDecimal, 2)
|
Dim ImporteIVA As Decimal = Math.Round(PorcentajePagoAnt * TxtIVA.Text.ToDecimal, 2)
|
||||||
|
|
||||||
'Agregamos el 14
|
|
||||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteIVA, Referencia, 14, Concepto, FechaMovimiento, CtaIvaxAcreditar, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=ImporteIVA * tipoCambioActual * Multiplicador, ImporteME:=If(tipoCambioActual = 1, 0, ImporteIVA), CveCuenta:=CveCuentaIvaxAcreditar, PorcentajeImpuesto:=PorcentajeImpuestoAnticipo, Contabilizable:=SeContabiliza) Then
|
|
||||||
ErrorPrepoliza = True
|
|
||||||
End If
|
|
||||||
|
|
||||||
'Agregamos el 19
|
If ImporteIVA <> 0 Then
|
||||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteIVA, Referencia, 19, Concepto, FechaMovimiento, CtaIvaAcreditable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=ImporteIVA * tipoCambioActual * Multiplicador, ImporteME:=If(tipoCambioActual = 1, 0, ImporteIVA), PorcentajeImpuesto:=PorcentajeImpuestoAnticipo, Contabilizable:=SeContabiliza) Then
|
'Agregamos el 14
|
||||||
ErrorPrepoliza = True
|
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteIVA, Referencia, 14, Concepto, FechaMovimiento, CtaIvaxAcreditar, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=ImporteIVA * tipoCambioActual * Multiplicador, ImporteME:=If(tipoCambioActual = 1, 0, ImporteIVA), CveCuenta:=CveCuentaIvaxAcreditar, PorcentajeImpuesto:=PorcentajeImpuestoAnticipo, Contabilizable:=SeContabiliza) Then
|
||||||
End If
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Agregamos el 19
|
||||||
|
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteIVA, Referencia, 19, Concepto, FechaMovimiento, CtaIvaAcreditable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=ImporteIVA * tipoCambioActual * Multiplicador, ImporteME:=If(tipoCambioActual = 1, 0, ImporteIVA), PorcentajeImpuesto:=PorcentajeImpuestoAnticipo, Contabilizable:=SeContabiliza) Then
|
||||||
|
ErrorPrepoliza = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
@@ -7493,10 +7525,11 @@ Partial Class Compras_Compras
|
|||||||
|
|
||||||
End Select
|
End Select
|
||||||
|
|
||||||
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Ant.Importe, " ", CveConceptoAnt, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=Ant.Importe) Then
|
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Ant.Importe, " ", CveConceptoAnt, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompraNC, CveCompraAmortizacion:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=Ant.Importe) Then
|
||||||
' ImporteAnticipo += Ant.Importe ' RESTO DEL IMPORTE POR SI QUEDA DIFERENCIA DE LA SUMA DE LOS ANTICIPOS Y EL PROVEEDOR TIENE QUE PAGAR
|
' ImporteAnticipo += Ant.Importe ' RESTO DEL IMPORTE POR SI QUEDA DIFERENCIA DE LA SUMA DE LOS ANTICIPOS Y EL PROVEEDOR TIENE QUE PAGAR
|
||||||
'movimiento de pago proveedor, --no se regisra porque no se registra el total de la compra como deuda del proveedor, solo lo que queda a deber
|
'movimiento de pago proveedor, --no se regisra porque no se registra el total de la compra como deuda del proveedor, solo lo que queda a deber
|
||||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimientoCompra, Ant.Importe, " ", CveConceptoPago, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=Ant.Importe) Then
|
'si es l moviemiento es de amortizacion con descuento, no registra el pago, ya esta descontado
|
||||||
|
If TieneAnticiposXML = False AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimientoCompra, Ant.Importe, " ", CveConceptoPago, " ", TxtFechaPago.Text.ToDate, 0, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorLocal, CveAcreedor:=CveAcreedor, CveIE:=Ant.CveIE, CveColectiva:=CveColectiva, ImporteMX:=Ant.Importe) Then
|
||||||
ErrorMovtosCxP = True
|
ErrorMovtosCxP = True
|
||||||
End If
|
End If
|
||||||
PorcentajePago = (Ant.Importe) / TxtTotal.Text.ToDecimal
|
PorcentajePago = (Ant.Importe) / TxtTotal.Text.ToDecimal
|
||||||
@@ -9060,12 +9093,8 @@ Partial Class Compras_Compras
|
|||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
LblAmortizacion.Text = ImporteAnticipo.FormatoNumero
|
LblAmortizacion.Text = ImporteAnticipo.FormatoNumero
|
||||||
TxtDescuento.Text = "0.00"
|
|
||||||
'limpia los descuentos
|
|
||||||
For Each dr As DataRow In TmpDT.Rows
|
|
||||||
dr("Descuento") = 0.00
|
|
||||||
Next
|
|
||||||
UpPS.Update()
|
UpPS.Update()
|
||||||
End If
|
End If
|
||||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAnticipos"))
|
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAnticipos"))
|
||||||
@@ -10114,6 +10143,7 @@ Partial Class Compras_Compras
|
|||||||
If documento.Attributes("UUID").Value <> "" Then
|
If documento.Attributes("UUID").Value <> "" Then
|
||||||
ListaDocumentos.Add(documento.Attributes("UUID").Value)
|
ListaDocumentos.Add(documento.Attributes("UUID").Value)
|
||||||
End If
|
End If
|
||||||
|
TieneAnticiposXML = True
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
@@ -10282,10 +10312,10 @@ Partial Class Compras_Compras
|
|||||||
e.Row.BackColor = Drawing.Color.LightGray
|
e.Row.BackColor = Drawing.Color.LightGray
|
||||||
Else
|
Else
|
||||||
If e.Row.DBCampo("Saldo").ToDouble < 0 Then e.Row.Cells(3).ForeColor = Drawing.Color.Red
|
If e.Row.DBCampo("Saldo").ToDouble < 0 Then e.Row.Cells(3).ForeColor = Drawing.Color.Red
|
||||||
If e.Row.DBCampo("Saldo").ToDouble = 0 Then e.Row.FCLiteral("LtlAnticipos").Text = ""
|
If e.Row.DBCampo("Saldo").ToDouble = 0 Then e.Row.FCLiteral("LtlAnticipos").Text = ""
|
||||||
Dim ImporteAmortizacion As Decimal = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0, TmpDT.SUMD("ImporteConImpuestos"), TxtTotal.Text.ToDecimal)
|
Dim ImporteAmortizacion As Decimal = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0, TmpDT.SUMD("ImporteConImpuestos"), TxtTotal.Text.ToDecimal)
|
||||||
|
|
||||||
e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("chkAnt(this,{0},{1},{2});", e.Row.FCTextBox("TxtAnticipo").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("chkAnt(this,{0},{1},{2});", e.Row.FCTextBox("TxtAnticipo").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
||||||
e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2});", e.Row.FCCheckBox("Chk").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
e.Row.FCTextBox("TxtAnticipo").Attributes.Add("onKeyUp", String.Format("FnCambiaAnt({0},this,{1},{2});", e.Row.FCCheckBox("Chk").ClientID, e.Row.DBCampo("Saldo"), If(CveCompra > 0, Saldo, ImporteAmortizacion), e.Row.DBCampo("CveMoneda").ToEntero, If(Not e.Row.DBCampo("TCCompra").ToDouble > 1, GlobalTipoCambio(e.Row.DBCampo("Fecha").ToDate), e.Row.DBCampo("TCCompra").ToDouble), DdlMoneda.SelectedValue.ToEntero)) 'SI ES UNA COMPRA NUEVA SE PONE EL TOTAL, SI NO EL SALDO
|
||||||
|
|
||||||
If ChkNCInv.Checked Then
|
If ChkNCInv.Checked Then
|
||||||
@@ -10612,6 +10642,7 @@ Partial Class Compras_Compras
|
|||||||
DTConceptos.Columns.Add("Descuento", GetType(Double))
|
DTConceptos.Columns.Add("Descuento", GetType(Double))
|
||||||
DTConceptos.Columns.Add("IVA", GetType(Double))
|
DTConceptos.Columns.Add("IVA", GetType(Double))
|
||||||
DTConceptos.Columns.Add("Total", GetType(Double))
|
DTConceptos.Columns.Add("Total", GetType(Double))
|
||||||
|
DTConceptos.Columns.Add("Amortizacion", GetType(Double))
|
||||||
End Sub
|
End Sub
|
||||||
'Private Sub AddPS(Cantidad As Double, UM As String, PS As String, PU As Double, IVA As Double, Descuento As Double, Optional Total As Double = 0)
|
'Private Sub AddPS(Cantidad As Double, UM As String, PS As String, PU As Double, IVA As Double, Descuento As Double, Optional Total As Double = 0)
|
||||||
' Dim Row As DataRow = Nothing
|
' Dim Row As DataRow = Nothing
|
||||||
@@ -11959,14 +11990,19 @@ Partial Class Compras_Compras
|
|||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
#Region " AJUSTA IMPORTES "
|
#Region " AJUSTA IMPORTES "
|
||||||
Private Sub AjustaImporteUltimoConcepto(ImporteAjuste As Decimal, Optional EsCarga As Boolean = False)
|
Private Sub AjustaImporteUltimoConcepto(ImporteAjuste As Decimal, Optional EsCarga As Boolean = False)
|
||||||
'Dim TempSubTotal = TxtSubTotal.Text.ToDouble
|
'Dim TempSubTotal = TxtSubTotal.Text.ToDouble
|
||||||
|
Dim Amortizacion As Decimal = 0
|
||||||
|
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
||||||
|
Amortizacion = LblAmortizacion.Text.ToDecimal
|
||||||
|
End If
|
||||||
|
|
||||||
If TmpDT.Rows.Count > 0 Then ' si hay movimientos y si esta afectando al total, que se haga el ajuste
|
If TmpDT.Rows.Count > 0 Then ' si hay movimientos y si esta afectando al total, que se haga el ajuste
|
||||||
'Dim ImporteAjuste As Decimal = Total - (SubTotal2 + IVA - RetencionIVA - RetencionIVA - RetencionISR + IEPS + OtrosImpuestos)
|
'Dim ImporteAjuste As Decimal = Total - (SubTotal2 + IVA - RetencionIVA - RetencionIVA - RetencionISR + IEPS + OtrosImpuestos)
|
||||||
Dim Indice As Integer = If(TmpDT.Rows(TmpDT.Rows.Count - 1)("CvePS").ToString = UsuarioActual.Empresa.Funcionalidad(112).ToString, TmpDT.Rows.Count - 2, TmpDT.Rows.Count - 1)
|
Dim Indice As Integer = If(TmpDT.Rows(TmpDT.Rows.Count - 1)("CvePS").ToString = UsuarioActual.Empresa.Funcionalidad(112).ToString, TmpDT.Rows.Count - 2, TmpDT.Rows.Count - 1)
|
||||||
Dim tPU As Decimal
|
Dim tPU As Decimal
|
||||||
|
|
||||||
|
|
||||||
If TmpDT.Rows(Indice)("Cantidad").ToString.ToDecimal > 0 Then
|
If TmpDT.Rows(Indice)("Cantidad").ToString.ToDecimal > 0 Then
|
||||||
tPU = ImporteAjuste / TmpDT.Rows(Indice)("Cantidad").ToString.ToDecimal
|
tPU = ImporteAjuste / TmpDT.Rows(Indice)("Cantidad").ToString.ToDecimal
|
||||||
Else
|
Else
|
||||||
@@ -11983,7 +12019,7 @@ Partial Class Compras_Compras
|
|||||||
Descuentos = TmpDT.SUM("Descuento").ToString.ToDecimal
|
Descuentos = TmpDT.SUM("Descuento").ToString.ToDecimal
|
||||||
End If
|
End If
|
||||||
TxtSubTotal.Text = (SubTotal + Descuentos).FormatoNumero()
|
TxtSubTotal.Text = (SubTotal + Descuentos).FormatoNumero()
|
||||||
TxtSubTotal2.Text = SubTotal.FormatoNumero
|
TxtSubTotal2.Text = (SubTotal - Amortizacion).FormatoNumero
|
||||||
TxtDescuento.Text = Descuentos.FormatoNumero()
|
TxtDescuento.Text = Descuentos.FormatoNumero()
|
||||||
SubTotalConceptos = SubTotal
|
SubTotalConceptos = SubTotal
|
||||||
GvPS.DataSource = TmpDT : GvPS.DataBind()
|
GvPS.DataSource = TmpDT : GvPS.DataBind()
|
||||||
@@ -14861,10 +14897,10 @@ Partial Class Compras_Compras
|
|||||||
'If DdlOCVinculaInv.SelectedValue.ToEntero = 237 And Not CveFlete > 0 Then Alert("Necesita vincular un flete si selecciona Factura de Flete", TipoMensaje.MsgAdvertencia) : Exit Sub
|
'If DdlOCVinculaInv.SelectedValue.ToEntero = 237 And Not CveFlete > 0 Then Alert("Necesita vincular un flete si selecciona Factura de Flete", TipoMensaje.MsgAdvertencia) : Exit Sub
|
||||||
'If DdlOCVinculaInv.SelectedValue.ToEntero = 240 And Not CveImportacion > 0 Then Alert("Necesita vincular una Importación si selecciona Factura de Importación", TipoMensaje.MsgAdvertencia) : Exit Sub
|
'If DdlOCVinculaInv.SelectedValue.ToEntero = 240 And Not CveImportacion > 0 Then Alert("Necesita vincular una Importación si selecciona Factura de Importación", TipoMensaje.MsgAdvertencia) : Exit Sub
|
||||||
|
|
||||||
Dim SubTotalGV = 0.0D
|
Dim SubTotalGV = 0.0D
|
||||||
Dim Amortizacion As Decimal = TmpDT.SUMD("Total")
|
Dim Amortizacion As Decimal = TmpDT.SUMD("Total")
|
||||||
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
||||||
Amortizacion = TmpDT.SUMD("ImporteSinImpuestos")
|
Amortizacion = TmpDT.SUMD("ImporteSinImpuestos")
|
||||||
End If
|
End If
|
||||||
Dim SubTotalCompra As Decimal = Amortizacion
|
Dim SubTotalCompra As Decimal = Amortizacion
|
||||||
Dim DiferenciaPermitida = 1
|
Dim DiferenciaPermitida = 1
|
||||||
@@ -14933,12 +14969,14 @@ Partial Class Compras_Compras
|
|||||||
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Or VinculacionCompleta Then
|
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Or VinculacionCompleta Then
|
||||||
TotalRows += 1
|
TotalRows += 1
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
Dim Amortizacion As Decimal = 0
|
|
||||||
Dim TieneAmortizacion As Boolean = False
|
Dim TieneAmortizacion As Boolean = False
|
||||||
|
|
||||||
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
||||||
TieneAmortizacion = True
|
TieneAmortizacion = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
For Each gvr As GridViewRow In GvOC1.Rows
|
For Each gvr As GridViewRow In GvOC1.Rows
|
||||||
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Or VinculacionCompleta Then
|
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Or VinculacionCompleta Then
|
||||||
dr = DTOCGV.Rows(gvr.RowIndex)
|
dr = DTOCGV.Rows(gvr.RowIndex)
|
||||||
@@ -14957,9 +14995,8 @@ Partial Class Compras_Compras
|
|||||||
Dim SubProyecto As String = dr("SubProyecto").ToString
|
Dim SubProyecto As String = dr("SubProyecto").ToString
|
||||||
Dim Proyecto As String = dr("Proyecto").ToString
|
Dim Proyecto As String = dr("Proyecto").ToString
|
||||||
Dim Obs As String = dr("Obs").ToString
|
Dim Obs As String = dr("Obs").ToString
|
||||||
Dim PU As Decimal = gvr.FCTextBox("TxtPU").Text.ToDecimal
|
Dim PU As Decimal = gvr.FCTextBox("TxtPU").Text.ToDecimal
|
||||||
|
Dim Total As Decimal = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, Math.Round((gvr.FCTextBox("TxtCantidad").Text.ToDecimal * gvr.FCTextBox("TxtPU").Text.ToDecimal) - (TxtDescuento.Text.ToDouble / TotalRows).ToDecimal, 2), gvr.FCTextBox("TxtTotalOC1").Text.ToDecimal)
|
||||||
Dim Total As Decimal = If(TieneAmortizacion, Math.Round((gvr.FCTextBox("TxtCantidad").Text.ToDecimal * gvr.FCTextBox("TxtPU").Text.ToDecimal) - (TxtDescuento.Text.ToDouble / TotalRows).ToDecimal, 2), gvr.FCTextBox("TxtTotalOC1").Text.ToDecimal)
|
|
||||||
'Dim Total As Decimal = gvr.FCTextBox("TxtTotalOC1").Text.ToDecimal
|
'Dim Total As Decimal = gvr.FCTextBox("TxtTotalOC1").Text.ToDecimal
|
||||||
'Dim IVA As Decimal = gvr.FCHiddenField("HdnOC1IVA").Value.ToDecimal
|
'Dim IVA As Decimal = gvr.FCHiddenField("HdnOC1IVA").Value.ToDecimal
|
||||||
'Dim RetIVA As Double = gvr.FCHiddenField("HdnOC1RetIVA").Value.ToDecimal
|
'Dim RetIVA As Double = gvr.FCHiddenField("HdnOC1RetIVA").Value.ToDecimal
|
||||||
@@ -15020,11 +15057,10 @@ Partial Class Compras_Compras
|
|||||||
AddPS2(False)
|
AddPS2(False)
|
||||||
|
|
||||||
'AJUSTE DE REDONDEO O DIFERENCIA PERMITIDA DE IMPORTE
|
'AJUSTE DE REDONDEO O DIFERENCIA PERMITIDA DE IMPORTE
|
||||||
AjustaImporteUltimoConcepto((If(TieneAmortizacion, TmpDT.SUMD("ImporteSinImpuestos"), TxtSubTotal2.Text.ToDouble) + TxtOtrosImpuestos.Text.ToDouble).ToDecimal - If(TieneAmortizacion, TmpDT.SUM("ImporteSinImpuestos").ToString.ToDecimal, TmpDT.SUM("Total").ToString.ToDecimal))
|
AjustaImporteUltimoConcepto((If(TieneAmortizacion, TmpDT.SUMD("ImporteSinImpuestos"), TxtSubTotal2.Text.ToDouble) + TxtOtrosImpuestos.Text.ToDouble).ToDecimal - If(TieneAmortizacion, TmpDT.SUM("ImporteSinImpuestos").ToString.ToDecimal, TmpDT.SUM("Total").ToString.ToDecimal))
|
||||||
'AjustaImporteUltimoConcepto(TxtSubTotal2.Text.ToDecimal + TxtOtrosImpuestos.Text.ToDecimal - (TmpDT.SUM("Total").ToString.ToDecimal))
|
'AjustaImporteUltimoConcepto(TxtSubTotal2.Text.ToDecimal + TxtOtrosImpuestos.Text.ToDecimal - (TmpDT.SUM("Total").ToString.ToDecimal))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
BtnGuardar.Enabled = True
|
BtnGuardar.Enabled = True
|
||||||
If Not CierrePeriodo Then
|
If Not CierrePeriodo Then
|
||||||
BtnGuardar.Visible = True
|
BtnGuardar.Visible = True
|
||||||
@@ -16500,6 +16536,16 @@ Partial Class Compras_Compras
|
|||||||
Dim Amortizacion As Decimal = 0
|
Dim Amortizacion As Decimal = 0
|
||||||
If UsuarioActual.CveEmpresa = 119 Then
|
If UsuarioActual.CveEmpresa = 119 Then
|
||||||
Amortizacion = LblAmortizacion.Text.Trim.ToDecimal
|
Amortizacion = LblAmortizacion.Text.Trim.ToDecimal
|
||||||
|
TxtSubTotal.Text = (TxtSubTotal.Text.ToDouble + Amortizacion).ToString
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim TieneAmortizacion As Boolean = False
|
||||||
|
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
|
||||||
|
TieneAmortizacion = True
|
||||||
|
End If
|
||||||
|
|
||||||
|
If CveCompra < 0 AndAlso Not TieneAmortizacion Then
|
||||||
|
LblAmortizacion.Text = "0.00"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
TempSubTotal = TxtSubTotal.Text.ToDouble
|
TempSubTotal = TxtSubTotal.Text.ToDouble
|
||||||
@@ -16511,7 +16557,7 @@ Partial Class Compras_Compras
|
|||||||
TempIEPS = TxtIEPS.Text.ToDouble
|
TempIEPS = TxtIEPS.Text.ToDouble
|
||||||
TempRetIVA = TxtRetIVA.Text.ToDouble
|
TempRetIVA = TxtRetIVA.Text.ToDouble
|
||||||
TempRetISR = TxtRetISR.Text.ToDouble
|
TempRetISR = TxtRetISR.Text.ToDouble
|
||||||
TempTotal = Math.Round(TempSubTotal2 + TempIVA + TempIEPS - TempRetIVA - TempRetISR - TxtOtrosImpuestos.Text.ToDouble, 2)
|
TempTotal = Math.Round(TempSubTotal2 + TempIVA + TempIEPS - TempRetIVA - TempRetISR - TxtOtrosImpuestos.Text.ToDouble - Amortizacion, 2)
|
||||||
DifTotales = TxtTotal.Text.ToDouble - TempTotal
|
DifTotales = TxtTotal.Text.ToDouble - TempTotal
|
||||||
Dim DiferenciaPermitida = 0.6
|
Dim DiferenciaPermitida = 0.6
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user