Compras % IVA prorateo, formato numerico al exportar a excel

This commit is contained in:
rakcsle
2025-02-15 09:20:54 -07:00
parent de02fc2155
commit e55ee74443
5 changed files with 172 additions and 3 deletions

View File

@@ -22619,7 +22619,7 @@ Partial Class Compras_Compras
nRow("SubTotal") = subtotalParcial.RoundSQL(4)
nRow("Total") = totalParcialDeseado.RoundSQL(4)
nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(2)
nRow("Porcentaje") = ((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)

View File

@@ -26,6 +26,7 @@ Imports SharpCompress.Common
Imports SharpCompress.Reader
Imports Telerik.Web.UI
Imports System.Data.SqlClient
Imports Stimulsoft.Base.Serializing
'Imports Telerik.Web.UI
@@ -6073,6 +6074,145 @@ Partial Class Compras_eFacturas
End Function
Private Sub VinculacionAutomaticaRNC()
Dim ErrorProceso As Boolean = False
Dim ErrorProcesoStr As String = ""
Dim Contador As Integer = 0
Dim Objcompras As New ClsCompras
Objcompras.IniciaTransacSQL()
'DataKeyNames="CveFactura,CveCompra,CveProveedor,SerieFolio,NombreProveedor,UUID,RFCDe,RFCPara,TipoFactura,FueValidado,TipoComprobante,Version,RFCde,XML,PDF,BloquePorComplemento,Total,CveTipoProveedor,FechaFactura"
For Each GvRow As GridViewRow In GvD.Rows
If GvRow.FCCheckBox("chkRegistraFactura").Checked Then
Dim TotalFactura As Decimal = GvRow.DataKey("Total").ToDecimal
Dim SaldoFactura As Decimal = TotalFactura
Dim CFDIXmlPath As String = $"{UsuarioActual.Empresa.Ruta}Compras\{GvRow.DataKey("RFCDe")}\{GvRow.DataKey("XML")}"
If Not File.Exists(CFDIXmlPath) Then
ErrorProceso = True
Exit For
End If
Dim CompraActual As New ClsCompraManager(CFDIXmlPath, ClsCompraManager.EnumCargaCompra.DesdeArchivo, GlobalDTTiposGastos(UsuarioActual.CveEmpresa), UsuarioActual)
CompraActual.CveFactura = GvRow.DataKey("CveFactura").ToEntero
CompraActual.CveProveedor = GvRow.DataKey("CveProveedor").ToEntero
CompraActual.CveTipoProveedor = GvRow.DataKey("CveTipoProveedor").ToEntero
CompraActual.CveTipoConceptoProveedor = GvRow.DataKey("CveTipoProveedor").ToEntero
CompraActual.TipoCompra = ClsCompraManager.EnumTipoCompra.Sin_definir
CompraActual.IEPSGasto = True
CompraActual.Descripcion = TxtDescripcionCompra.Text.Trim
CompraActual.NombreProveedor = GvRow.DataKey("NombreProveedor")
Dim CvePersonal As Integer = -1 'DdlPersonalReembolso.SelectedValue.ToEntero
Dim CveCajachica As Integer = -1 'DdlCuentaCajaChicaReembolso.SelectedValue.ToEntero
If RBLContado.SelectedValue.ToEntero = 6 Then 'Caja Chica
CveCajachica = DdlCuentaCajaChicaReembolso.SelectedValue.ToEntero
ElseIf RBLContado.SelectedValue.ToEntero = 2 Then ' viaticos
CvePersonal = DdlPersonalReembolso.SelectedValue.ToEntero
ElseIf RBLContado.SelectedValue.ToEntero = 4 Then ' deudores
End If
If CompraActual.ConfiguraRegistroCompra(DdlPS.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, CveCajachica, CvePersonal,
DdlRetIVAConcepto.SelectedValue.ToEntero, DdlRetISRConcepto.SelectedValue.ToEntero, NumeroReembolso:=TxtNumeroReembolso.Text,
DTProrrateo:=DTProrrateo, DTPagosDeudores:=New DataTable) Then
'FIX ME OIC Recuerda cambiar el tipo de documento al registrar, actualmente tiene FAC y NC uno u otro, ajustar para que registre *** Egs *** cuado TipoComprobante = 'E'
If CompraActual.AddCompra(Objcompras.IniciaTransacSQL()) Then
Contador = Contador + 1
Else
ErrorProceso = True
ErrorProcesoStr = CompraActual.MensajeError
Exit For
End If
Else
ErrorProceso = True
ErrorProcesoStr = CompraActual.MensajeError
Exit For
End If
If RBLContado.SelectedValue.ToEntero = 4 Then 'Deudores
Dim CompraActualPagar = New Compra
If Objcompras.GetCompras(CompraActual.CveCompra, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
If Objcompras.DtResultados IsNot Nothing AndAlso Objcompras.DtResultados.Rows.Count > 0 Then
Dim dr As DataRow = Objcompras.DtResultados.Rows(0)
CompraActualPagar.CveCompra = CompraActual.CveCompra
CompraActualPagar.CveTipoConceptoProveedor = dr("CveTipoConcepto").ToString.ToEntero
CompraActualPagar.CveProveedor = dr("CveProveedor").ToString.ToEntero
CompraActualPagar.CveMoneda = dr("CveMoneda").ToString.ToEntero
CompraActualPagar.Fecha = dr("Fecha").ToString.ToDate
CompraActualPagar.SerieFolio = dr("SerieFolio").ToString
'CompraActualPagar.ProveedorNombre = TxtPagueseA.Text
CompraActualPagar.TC = dr("TipoCambio").ToString.ToDecimal
CompraActualPagar.Total = dr("Total").ToString.ToDecimal
CompraActualPagar.IVA = dr("IVA").ToString.ToDecimal
CompraActualPagar.IVADeducible = dr("IVADeducible").ToString.ToDecimal.RoundSQL
CompraActualPagar.IVANoDeducible = dr("IVANoDeducible").ToString.ToDecimal.RoundSQL
CompraActualPagar.IEPS = dr("IEPS").ToString.ToDecimal
CompraActualPagar.RetIVA = dr("RetIVA").ToString.ToDecimal
CompraActualPagar.RetISR = dr("RetISR").ToString.ToDecimal
CompraActualPagar.CveConceptoRetIVA = dr("CveRetIVAConcepto").ToString.ToEntero
CompraActualPagar.CveConceptoRetISR = dr("CveRetISRConcepto").ToString.ToEntero
CompraActualPagar.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
CompraActualPagar.UsuarioActual = UsuarioActual
CompraActualPagar.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
CompraActualPagar.EsImportacion = CBool(dr("EsImportacion"))
CompraActualPagar.CompraNoDeducible = dr("NoDeducible").ToString.ToEntero
Else
ErrorProceso = True
End If
Else
ErrorProceso = True
End If
End If
End If
If ErrorProceso Then
Exit For
End If
Next
If ErrorProceso Then
Objcompras.RollBack()
Alert($"Se registraron {Contador} Compras. error {ErrorProcesoStr}", TipoMensaje.MsgAdvertencia)
Else
Objcompras.Commit()
CargaDatos(NowADS())
CambieDeudor()
CargaDatos(NowADS())
If Contador > 0 Then
Alert($"Se registraron {Contador} Compras")
End If
End If
Objcompras.Dispose()
End Sub
End Class