-- pago
This commit is contained in:
@@ -9368,6 +9368,9 @@ Public Class ClsPaginas
|
||||
Dim ErrorMovtos As Boolean = False
|
||||
Dim PorcentajePago As Decimal = Pago.ImportePago / CompraActual.Total
|
||||
Dim ImporteMovimiento As Decimal = 0
|
||||
Dim ImporteMN As Decimal = 0
|
||||
Dim ImporteME As Decimal = 0
|
||||
Dim TCValuacion As Decimal = CompraActual.TC
|
||||
Dim tImportePago, tImporteCompra As Decimal
|
||||
Dim CveConceptoContableComplementaria As Integer = 206
|
||||
|
||||
@@ -9390,49 +9393,53 @@ Public Class ClsPaginas
|
||||
If UsuarioActual.Empresa.Funcionalidad(703) = "1" AndAlso UltimaFluctuacion IsNot Nothing Then
|
||||
If UltimaFluctuacion.FechaFluctuacion <= tFecha Then
|
||||
'FechaUltimaFluctuacion = UltimaFluctuacion.FechaFluctuacion
|
||||
CompraActual.TC = UltimaFluctuacion.TCFluctuacion
|
||||
TCValuacion = UltimaFluctuacion.TCFluctuacion
|
||||
End If
|
||||
End If
|
||||
|
||||
If CompraActual.CveMoneda = 1 And Pago.CveMonedaPago <> 1 Then 'factura pesos, pago en dolares
|
||||
tImportePago = ((Pago.ImportePago * CompraActual.TC / Pago.TCPago).RoundSQL * Pago.TCPago).RoundSQL
|
||||
tImportePago = ((Pago.ImportePago * TCValuacion / Pago.TCPago).RoundSQL * Pago.TCPago).RoundSQL
|
||||
ElseIf CompraActual.CveMoneda <> 1 And Pago.CveMonedaPago <> 1 Then 'factura dolares, pago en dolares
|
||||
tImporteCompra = (Pago.ImportePago * CompraActual.TC).RoundSQL
|
||||
tImporteCompra = (Pago.ImportePago * TCValuacion).RoundSQL
|
||||
tImportePago = (Pago.ImportePago * Pago.TCPago).RoundSQL
|
||||
ElseIf CompraActual.CveMoneda <> 1 And Pago.CveMonedaPago = 1 Then 'factura dolares, pago en pesos
|
||||
tImporteCompra = (Pago.ImportePago * CompraActual.TC).RoundSQL
|
||||
tImporteCompra = (Pago.ImportePago * TCValuacion).RoundSQL
|
||||
tImportePago = (Pago.ImportePago * Pago.TCPago).RoundSQL
|
||||
End If
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = Pago.ImportePago
|
||||
|
||||
'movimiento de pago proveedor
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Pago.ImportePago, Pago.ImportePago, Pago.CveConceptoPago, CompraActual.SerieFolio, Concepto, CompraActual.IdCtaContableProv, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveCompraAmortizacion:=Pago.CveCompraAmortizacion, TipoCambio:=CompraActual.TC) Then
|
||||
ErrorMovtos = True
|
||||
End If
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Pago.ImportePago, Pago.ImportePago, Pago.CveConceptoPago, CompraActual.SerieFolio, Concepto, CompraActual.IdCtaContableProv, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveCompraAmortizacion:=Pago.CveCompraAmortizacion, TipoCambio:=TCValuacion, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
|
||||
'movimiento de pago proveedor Complementaria
|
||||
If Not ErrorMovtos AndAlso CompraActual.CveMoneda > 1 Then
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Pago.ImportePago, (Pago.ImportePago * CompraActual.TC - Pago.ImportePago).RoundSQL, CveConceptoContableComplementaria, CompraActual.SerieFolio, Concepto, CompraActual.IdCtaContableProv, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveCompraAmortizacion:=Pago.CveCompraAmortizacion, TipoCambio:=CompraActual.TC, ImporteME:=Pago.ImportePago) Then
|
||||
ErrorMovtos = True
|
||||
End If
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Pago.ImportePago, (ImporteME * TCValuacion - ImporteME).RoundSQL, CveConceptoContableComplementaria, CompraActual.SerieFolio, Concepto, CompraActual.IdCtaContableProv, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveCompraAmortizacion:=Pago.CveCompraAmortizacion, TipoCambio:=TCValuacion, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
'si tiene iva y su proporcion
|
||||
If Not ErrorMovtos AndAlso CompraActual.IVA <> 0 Then
|
||||
ImporteMovimiento = (PorcentajePago * CompraActual.IVA).RoundSQL
|
||||
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
|
||||
|
||||
Dim Ret As CompraRetenciones = CompraActual.ConceptoPrePolizaIVA
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMovimiento = ((PorcentajePago * CompraActual.IVA).RoundSQL * Pago.TCPago).RoundSQL
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMovimiento = (ImporteMovimiento.RoundSQL * Pago.TCPago).RoundSQL
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
If CompraActual.IVANoDeducible > 0 Then
|
||||
|
||||
Dim ImporteNOIVA As Decimal = CompraActual.IVANoDeducible * PorcentajePago
|
||||
ImporteMovimiento = (CompraActual.IVANoDeducible * PorcentajePago).RoundSQL
|
||||
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteNOIVA, ImporteNOIVA, 280, CompraActual.SerieFolio, Concepto, Ret.IdCtaContIVANoAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 280, CompraActual.SerieFolio, Concepto, Ret.IdCtaContIVANoAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, PorcentajeImpuesto:=CompraActual.PorcentajeIVA, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
@@ -9441,32 +9448,41 @@ Public Class ClsPaginas
|
||||
'si tiene RET IVA y su proporcion
|
||||
If Not ErrorMovtos AndAlso CompraActual.RetIVA > 0 Then
|
||||
ImporteMovimiento = (PorcentajePago * CompraActual.RetIVA).RoundSQL
|
||||
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
|
||||
|
||||
Dim Ret As CompraRetenciones = CompraActual.ConceptoPrePolizaRetIVA
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMovimiento = ((PorcentajePago * CompraActual.RetIVA).RoundSQL * Pago.TCPago).RoundSQL
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
'si tiene Ret ISR y su proporcion
|
||||
If Not ErrorMovtos AndAlso CompraActual.RetISR > 0 Then
|
||||
ImporteMovimiento = (PorcentajePago * CompraActual.RetISR).RoundSQL
|
||||
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
|
||||
|
||||
Dim Ret As CompraRetenciones = CompraActual.ConceptoPrePolizaRetISR
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, Ret.CveConceptoxAcreditar, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMovimiento = ((PorcentajePago * CompraActual.RetISR).RoundSQL * Pago.TCPago).RoundSQL
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMovimiento, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, Ret.CveConceptoAcreditable, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
'si tiene IEPS y su proporcion
|
||||
If Not ErrorMovtos AndAlso CompraActual.IEPS > 0 Then
|
||||
ImporteMovimiento = (PorcentajePago * CompraActual.IEPS).RoundSQL
|
||||
ImporteMN = (ImporteMovimiento * CompraActual.TC).RoundSQL
|
||||
If CompraActual.CveMoneda > 1 Then ImporteME = ImporteMovimiento
|
||||
|
||||
Dim Ret As New CompraRetenciones
|
||||
If UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
||||
If ObjConta.GetRetCuenta(26, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then Ret.IdCtaContableAcreditable = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
|
||||
@@ -9475,12 +9491,12 @@ Public Class ClsPaginas
|
||||
|
||||
End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMovimiento, 25, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMovimiento, ImporteMN, 25, CompraActual.SerieFolio, Concepto, Ret.IdCtaContablexAcreditar, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
'si tiene funcionalidad para tomar el TC de pago. se recalcula el importe
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMovimiento = ((PorcentajePago * CompraActual.IEPS).RoundSQL * Pago.TCPago).RoundSQL
|
||||
If FuncionalidadFluctuacionImpuestos Then ImporteMN = (ImporteMovimiento * Pago.TCPago).RoundSQL
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMovimiento, 26, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 26, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
@@ -9493,8 +9509,7 @@ Public Class ClsPaginas
|
||||
tOtTipoMovto = True : tOtCveCon = 78
|
||||
ImporteMovimiento = Math.Abs(ImporteMovimiento)
|
||||
End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tOtTipoMovto, ImporteMovimiento, ImporteMovimiento, tOtCveCon, CompraActual.SerieFolio, Concepto, 0, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tOtTipoMovto, ImporteMovimiento, ImporteMovimiento, tOtCveCon, CompraActual.SerieFolio, Concepto, 0, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, CveSubProyecto:=CompraActual.CveSubProyecto, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME) Then ErrorMovtos = True
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -369,7 +369,7 @@
|
||||
<asp:UpdatePanel ID="UPCompras" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<asp:GridView ID="GvCxP" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Cuentas X Pagar Pendientes"
|
||||
DataKeyNames="CveCompra,ImporteProgramo,Saldo,SubTotal,IVA,IVADeducible,IVANoDeducible,IEPS,RetIVA,RetISR,Original,UUID,RFC,CveFactura,SerieFolio,Descripcion,CvePrePoliza,Fecha,EstatusInventario,CveProveedor,TipoCambio,TipoCambioOriginal, CveMoneda,CveRetIVAConcepto,IVAPorPagar,IVAPorPagarDeducible,IVAPorPagarNoDeducible,IEPSPorPagar,CveRetISRConcepto,PorcentajeIVA,CveTipoConcepto,CveSubProyecto,TotalOriginal,EsImportacion"
|
||||
DataKeyNames="CveCompra,ImporteProgramo,Saldo,SubTotal,IVA,IVADeducible,IVANoDeducible,IEPS,RetIVA,RetISR,Total,UUID,RFC,CveFactura,SerieFolio,Descripcion,CvePrePoliza,Fecha,EstatusInventario,CveProveedor,TipoCambio,TipoCambioOriginal, CveMoneda,CveRetIVAConcepto,IVAPorPagar,IVAPorPagarDeducible,IVAPorPagarNoDeducible,IEPSPorPagar,CveRetISRConcepto,PorcentajeIVA,CveTipoConcepto,CveSubProyecto,TotalOriginal,EsImportacion"
|
||||
Width="100%" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" Style="text-align: center;" GridLines="None">
|
||||
<Columns>
|
||||
<asp:TemplateField>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user