-- cambios en libreria profact, complemento pago, y agregado de CuentasAterceros
This commit is contained in:
@@ -327,12 +327,14 @@ Public Class CFDIConceptos
|
||||
Public Property ClaveProdServ As String = ""
|
||||
Public Property ClaveUnidad As String = ""
|
||||
Public Property Impuestos As List(Of CFDIConceptosImpuestos)
|
||||
Public Property ACuentaTerceros As CFDIConceptosACuentaTerceros
|
||||
Public Property Descuento As Decimal = 0.00D
|
||||
Public Property ObjetoImpuesto As String = "02"
|
||||
Public Property ImporteGravaIVAAdicional As Decimal = 0.00D 'caso IEPS
|
||||
|
||||
Sub New()
|
||||
Impuestos = New List(Of CFDIConceptosImpuestos)
|
||||
ACuentaTerceros = New CFDIConceptosACuentaTerceros
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -349,6 +351,16 @@ Public Class CFDIConceptosImpuestos
|
||||
Public Property ImporteMN As Decimal = 0.000000D
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
<Serializable>
|
||||
Public Class CFDIConceptosACuentaTerceros
|
||||
Public Property RfcACuentaTerceros As String = ""
|
||||
Public Property NombreACuentaTerceros As String = ""
|
||||
Public Property RegimenFiscalACuentaTerceros As String = ""
|
||||
Public Property DomicilioFiscalACuentaTerceros As String = ""
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
<Serializable>
|
||||
|
||||
@@ -1113,7 +1113,8 @@ Public Class ClsBancos
|
||||
Timbre = Timbrado.PreparaTimbrePago40(RFCEmpresa, UsuarioActual.Empresa.Empresa, UsuarioActual.Empresa.CodigoRegimenFiscal,
|
||||
RFCCliente, dr("NombreCliente").ToString, dr("ClienteCP").ToString, dr("CodigoRegimenFiscal").ToString, Serie, Folio.ToString, FechaTimbrado, Cuentapago,
|
||||
dr("FechaDocumento").ToString.ToDate, dr("ClaveFormaPagoSAT").ToString, dr("AbreviaturaSAT").ToString, dr("VentasTotalPagado").ToString.ToDecimal,
|
||||
UsuarioActual.Empresa.CP.ToString, CuentaBeneficiario, dr("TipoCambioPago").ToString.ToDecimal, dttpagos, dttpagosimpuestos, CFDIRelacionado:=CFDIRelacionado)
|
||||
UsuarioActual.Empresa.CP.ToString, CuentaBeneficiario, dr("TipoCambioPago").ToString.ToDecimal, dttpagos, dttpagosimpuestos, CFDIRelacionado:=CFDIRelacionado,
|
||||
RfcACuentaTerceros:=dr("RfcACuentaTerceros").ToString, NombreACuentaTerceros:=dr("NombreACuentaTerceros").ToString, RegimenFiscalACuentaTerceros:=dr("RegimenFiscalACuentaTerceros").ToString, DomicilioFiscalACuentaTerceros:=dr("DomicilioFiscalACuentaTerceros").ToString)
|
||||
|
||||
Else
|
||||
CFDIVersion = "3.3"
|
||||
|
||||
@@ -1325,7 +1325,7 @@ Public Class ClsContabilidad
|
||||
|
||||
Try
|
||||
|
||||
If GetEncabezadoPrePoliza(CvePrePoliza, Empresa.CveEmpresa) Then
|
||||
If GetEncabezadoPrePoliza(CvePrePoliza, Empresa.CveEmpresa) AndAlso DtResultados.Rows.Count > 0 Then
|
||||
CveTipoPoliza = Data.Rows(0)("CveTipoPoliza").ToString.ToEntero
|
||||
Cargos = Data.Rows(0)("Cargos").ToString.ToDecimal
|
||||
Abonos = Data.Rows(0)("Abonos").ToString.ToDecimal
|
||||
|
||||
@@ -7788,7 +7788,7 @@ Public Class ClsPaginas
|
||||
'concepto pago
|
||||
Concepto = String.Format("{0} NC:{1}", CompraActual.ProveedorNombre, Pago.Referencia)
|
||||
If Pago.TipoPago = "Egsc" AndAlso Not ErrorMovtos Then ' A N T I C I P O / E G R E S O S X C O M P R O B A R
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(11, CompraActual.CveMoneda, True, CompraActual.CveTipoConceptoProveedor)
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(11, Pago.CveMonedaPago, True, CompraActual.CveTipoConceptoProveedor)
|
||||
If Pago.CveMonedaPago > 1 Then
|
||||
'Agregamos la Extranjera
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Pago.ImportePago, Pago.ImportePago, ConPrepAplicacion.CveConcepto, Pago.Referencia, Concepto, CompraActual.IdCtaContableAnticipoProv, CveCompra:=CompraActual.CveCompra, CveProveedor:=Pago.CveProveedor, CveIE:=Pago.CveIE, ImporteME:=Pago.ImportePago, TipoCambio:=TCValuacionPago, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
|
||||
@@ -7800,7 +7800,7 @@ Public Class ClsPaginas
|
||||
End If
|
||||
End If
|
||||
If Pago.TipoPago.Contiene("NC", "DEV") AndAlso Not ErrorMovtos Then ' N O T A D E C R E D I T O
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(15, CompraActual.CveMoneda, True, CompraActual.CveTipoConceptoProveedor)
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(15, Pago.CveMonedaPago, True, CompraActual.CveTipoConceptoProveedor)
|
||||
If Pago.CveMonedaPago > 1 Then
|
||||
'Agregamos la Extranjera
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Pago.ImportePago, Pago.ImportePago, ConPrepAplicacion.CveConcepto, Pago.Referencia, Concepto, CompraActual.IdCtaContableProv, CveCompra:=Pago.CveCompraAmortizacion, CveCompraAmortizacion:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, ImporteME:=Pago.ImportePago, TipoCambio:=TCValuacionPago, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
|
||||
@@ -7812,7 +7812,7 @@ Public Class ClsPaginas
|
||||
End If
|
||||
End If
|
||||
If Pago.TipoPago = "DD" AndAlso Not ErrorMovtos Then ' D E U D O R D I V E R S O
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(17, CompraActual.CveMoneda, True, CompraActual.CveTipoConceptoProveedor)
|
||||
Dim ConPrepAplicacion As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(17, Pago.CveMonedaPago, True, CompraActual.CveTipoConceptoProveedor)
|
||||
If Pago.CveMonedaPago > 1 Then
|
||||
'Agregamos la Extranjera
|
||||
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Pago.ImportePago, Pago.ImportePago, ConPrepAplicacion.CveConcepto, Pago.Referencia, Concepto, CompraActual.IdCtaContableProv, CveCompra:=Pago.CveCompraAmortizacion, CveCompraAmortizacion:=CompraActual.CveCompra, CveProveedor:=Pago.CveProveedor, CveIE:=Pago.CveIE, ImporteME:=Pago.ImportePago, TipoCambio:=TCValuacionPago, CveSubProyecto:=CompraActual.CveSubProyecto, CvePersonal:=Pago.CvePersonal) Then ErrorMovtos = True
|
||||
|
||||
@@ -10,6 +10,8 @@ Imports System.Xml
|
||||
Imports System.Xml.Serialization
|
||||
Imports Extensiones
|
||||
Imports Newtonsoft.Json.Linq
|
||||
Imports Profact.TimbraCFDI33.Complementos.CartaPorte10
|
||||
Imports Profact.TimbraCFDI33.Complementos.CartaPorte20
|
||||
Imports ProfactCartaPorte = Profact.TimbraCFDI33.Complementos.CartaPorte20
|
||||
|
||||
|
||||
@@ -1042,7 +1044,11 @@ Public Class Timbrado
|
||||
Serie As String, Folio As String, FechaTimbrado As DateTime,
|
||||
CuentaPago As String, FechaPago As DateTime, FormaPago As String, MonedaPago As String, Monto As Decimal, LugarExpedicion As String,
|
||||
CuentaBeneficiario As String, TipoCambioP As Decimal, dttpagos As Data.DataTable, dttpagosimpuestos As DataTable,
|
||||
Optional UsoCFDI As String = "CP01", Optional CFDIRelacionado As String = "") As CFDITimbre
|
||||
Optional UsoCFDI As String = "CP01", Optional CFDIRelacionado As String = "",
|
||||
Optional RfcACuentaTerceros As String = "",
|
||||
Optional NombreACuentaTerceros As String = "",
|
||||
Optional RegimenFiscalACuentaTerceros As String = "",
|
||||
Optional DomicilioFiscalACuentaTerceros As String = "") As CFDITimbre
|
||||
|
||||
Dim Timbre As New CFDITimbre
|
||||
|
||||
@@ -1087,6 +1093,14 @@ Public Class Timbrado
|
||||
.ClaveProdServ = "84111506",
|
||||
.Noidentificacion = "",
|
||||
.ObjetoImpuesto = "01"}
|
||||
|
||||
'Pago ACuentaTerceros
|
||||
If RfcACuentaTerceros <> "" Then
|
||||
concepto.ACuentaTerceros.RfcACuentaTerceros = RfcACuentaTerceros
|
||||
concepto.ACuentaTerceros.NombreACuentaTerceros = NombreACuentaTerceros
|
||||
concepto.ACuentaTerceros.DomicilioFiscalACuentaTerceros = DomicilioFiscalACuentaTerceros
|
||||
concepto.ACuentaTerceros.RegimenFiscalACuentaTerceros = RegimenFiscalACuentaTerceros
|
||||
End If
|
||||
Timbre.Conceptos.Add(concepto)
|
||||
|
||||
Select Case FormaPago
|
||||
@@ -1137,6 +1151,7 @@ Public Class Timbrado
|
||||
ObjetoImpuesto = dr("ObjetoImpuesto").ToString
|
||||
VentaImportePagoMN = dr("VentasTotalPagado").ToString.ToDecimal
|
||||
|
||||
|
||||
'' si la moneda es igual, se omite el tipo de cambio de la venta
|
||||
If MonedaPago = VentaAbreviaturaSAT Then
|
||||
VentaTipoCambio = 1
|
||||
@@ -3628,10 +3643,10 @@ Public Class Timbrado
|
||||
If Not UsuarioActual.Empresa.FacturaProduccion OrElse UsuarioActual.CveEmpresa = 1 Then
|
||||
AmbienteProductivo = False
|
||||
Clave = "12345678a"
|
||||
EmisorRFC = "IIA040805DZ4"
|
||||
EmisorNombre = "INDISTRIA ILUMINADORA DE ALMACENES SA DE CV"
|
||||
ArchivoLLave = $"{UsuarioActual.Empresa.Ruta}Certificados\publicKey.key"
|
||||
ArchivoCertificado = $"{UsuarioActual.Empresa.Ruta}Certificados\publicCer.cer"
|
||||
EmisorRFC = "EKU9003173C9"
|
||||
UsuarioActual.Empresa.Empresa = "ESCUELA KEMPER URGATE"
|
||||
ArchivoLLave = $"{UsuarioActual.Empresa.Ruta}Certificados\EKU9003173C9.key"
|
||||
ArchivoCertificado = $"{UsuarioActual.Empresa.Ruta}Certificados\EKU9003173C9.cer"
|
||||
UsuarioActual.Empresa.CodigoRegimenFiscal = "601"
|
||||
End If
|
||||
|
||||
@@ -3792,6 +3807,11 @@ Public Class Timbrado
|
||||
comprobante.Conceptos(i).InformacionAduanera = New Profact.TimbraCFDI40.ComprobanteConceptoInformacionAduanera(1) {} 'solo un codigo por el momento
|
||||
comprobante.Conceptos(i).InformacionAduanera(0) = New Profact.TimbraCFDI40.ComprobanteConceptoInformacionAduanera() With {.NumeroPedimento = concep.NumeroPedimento}
|
||||
End If
|
||||
If concep.ACuentaTerceros IsNot Nothing AndAlso concep.ACuentaTerceros.RfcACuentaTerceros <> "" Then
|
||||
comprobante.Conceptos(i).ACuentaTerceros = New Profact.TimbraCFDI40.ComprobanteConceptoACuentaTerceros() With {
|
||||
.RfcACuentaTerceros = concep.ACuentaTerceros.RfcACuentaTerceros, .NombreACuentaTerceros = concep.ACuentaTerceros.NombreACuentaTerceros,
|
||||
.RegimenFiscalACuentaTerceros = concep.ACuentaTerceros.RegimenFiscalACuentaTerceros, .DomicilioFiscalACuentaTerceros = concep.ACuentaTerceros.DomicilioFiscalACuentaTerceros}
|
||||
End If
|
||||
|
||||
j = 0
|
||||
k = 0
|
||||
@@ -4246,7 +4266,9 @@ Public Class Timbrado
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).ImpuestoP = Tra.Impuesto
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).TipoFactorP = Tra.TipoFactor
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).TasaOCuotaP = Tra.TasaOCuota.RoundSQL(6)
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).TasaOCuotaPSpecified = True
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).ImporteP = Tra.ImporteMN.RoundSQL(6)
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).ImportePSpecified = True
|
||||
ComPag.Pago(ii).ImpuestosP(0).TrasladosP(x).BaseP = Tra.BaseMN.RoundSQL(2)
|
||||
x += 1
|
||||
Next
|
||||
@@ -4333,7 +4355,7 @@ Public Class Timbrado
|
||||
ComCartaPorte.Mercancias.Mercancia(i) = New ProfactCartaPorte.CartaPorteMercanciasMercancia
|
||||
|
||||
If concep.BienesTransp <> "" Then
|
||||
ComCartaPorte.Mercancias.Mercancia(i).BienesTransp = CType([Enum].Parse(GetType(ProfactCartaPorte.c_ClaveProdServCP), "Item" & concep.BienesTransp), ProfactCartaPorte.c_ClaveProdServCP)
|
||||
ComCartaPorte.Mercancias.Mercancia(i).BienesTransp = concep.BienesTransp
|
||||
End If
|
||||
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Descripcion = concep.Descripción
|
||||
@@ -4345,7 +4367,7 @@ Public Class Timbrado
|
||||
ComCartaPorte.Mercancias.Mercancia(i).CveMaterialPeligrosoSpecified = True
|
||||
'si lleva material pelgroso, debe llevar embalaje
|
||||
ComCartaPorte.Mercancias.Mercancia(i).EmbalajeSpecified = True
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Embalaje = CType([Enum].Parse(GetType(ProfactCartaPorte.c_TipoEmbalaje), "Item" & concep.Embalaje), ProfactCartaPorte.c_TipoEmbalaje)
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Embalaje = concep.Embalaje
|
||||
ComCartaPorte.Mercancias.Mercancia(i).DescripEmbalaje = concep.DescripEmbalaje
|
||||
End If
|
||||
|
||||
@@ -4760,22 +4782,17 @@ Public Class Timbrado
|
||||
|
||||
If Retorno = "[]" Then
|
||||
Retorno = resultadoTimbre.Descripcion
|
||||
MensajeErrorCFDI = resultadoTimbre.Descripcion
|
||||
End If
|
||||
If MensajeErrorCFDI = "[]" Then
|
||||
Retorno = resultadoTimbre.Descripcion
|
||||
End If
|
||||
|
||||
End If
|
||||
resultadoTimbre.GuardaXml(RutaArchivo, NombreArchivoXML)
|
||||
Catch ex As Exception
|
||||
Retorno = ex.ToString()
|
||||
End Try
|
||||
|
||||
Else
|
||||
Retorno = resultadoTimbre.Detalle
|
||||
MensajeErrorCFDI = resultadoTimbre.Detalle
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
GuardaLogTimbrado(swTiempo.ToString, UsuarioActual.Empresa.CvePAC)
|
||||
@@ -5121,7 +5138,6 @@ Public Class Timbrado
|
||||
docp.CadPago,
|
||||
docp.SelloPago)
|
||||
|
||||
|
||||
If docp.DocumentosRelacionados.Count > 0 Then
|
||||
|
||||
For Each doc As CFDIComplementoPagosDocsRelacionados In docp.DocumentosRelacionados
|
||||
@@ -5555,7 +5571,7 @@ Public Class Timbrado
|
||||
If Not UsuarioActual.Empresa.FacturaProduccion OrElse UsuarioActual.CveEmpresa = 1 Then
|
||||
|
||||
EmisorRFC = "EKU9003173C9"
|
||||
UsuarioActual.Empresa.Empresa = "ESCUELA KEMPER URGATE SA DE CV"
|
||||
UsuarioActual.Empresa.Empresa = "ESCUELA KEMPER URGATE"
|
||||
ArchivoLLave = $"{UsuarioActual.Empresa.Ruta}Certificados\EKU9003173C9.key"
|
||||
ArchivoCertificado = $"{UsuarioActual.Empresa.Ruta}Certificados\EKU9003173C9.cer"
|
||||
|
||||
@@ -6522,7 +6538,7 @@ Public Class Timbrado
|
||||
ComCartaPorte.Mercancias.Mercancia(i) = New ProfactCartaPorte.CartaPorteMercanciasMercancia
|
||||
|
||||
If concep.BienesTransp <> "" Then
|
||||
ComCartaPorte.Mercancias.Mercancia(i).BienesTransp = CType([Enum].Parse(GetType(ProfactCartaPorte.c_ClaveProdServCP), "Item" & concep.BienesTransp), ProfactCartaPorte.c_ClaveProdServCP)
|
||||
ComCartaPorte.Mercancias.Mercancia(i).BienesTransp = concep.BienesTransp
|
||||
End If
|
||||
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Descripcion = concep.Descripción
|
||||
@@ -6534,7 +6550,7 @@ Public Class Timbrado
|
||||
ComCartaPorte.Mercancias.Mercancia(i).CveMaterialPeligrosoSpecified = True
|
||||
'si lleva material pelgroso, debe llevar embalaje
|
||||
ComCartaPorte.Mercancias.Mercancia(i).EmbalajeSpecified = True
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Embalaje = CType([Enum].Parse(GetType(ProfactCartaPorte.c_TipoEmbalaje), "Item" & concep.Embalaje), ProfactCartaPorte.c_TipoEmbalaje)
|
||||
ComCartaPorte.Mercancias.Mercancia(i).Embalaje = concep.Embalaje
|
||||
|
||||
End If
|
||||
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user