-
-
-
diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb
index 783eb8d27..ae7a6221f 100644
--- a/Compras/eFacturas.aspx.vb
+++ b/Compras/eFacturas.aspx.vb
@@ -5086,7 +5086,6 @@ Partial Class Compras_eFacturas
cargasolicitudes()
End If
-
End Sub
@@ -5306,9 +5305,6 @@ Partial Class Compras_eFacturas
#End Region
-
-
-
Protected Sub LnkRegistarFactura_Click(sender As Object, e As EventArgs)
DVRegistraFacturas.Visible = True
GvD.Columns(0).Visible = True
@@ -5323,14 +5319,11 @@ Partial Class Compras_eFacturas
Dim Contador As Integer = 0
Dim ErrorProcesoStr As String = ""
-
-
If Not DdlPS.SelectedValue.ToEntero > 0 Then
Alert("Debe seleccionar un producto", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
-
For Each GvRow As GridViewRow In GvD.Rows
If GvRow.FCCheckBox("chkRegistraFactura").Checked Then
@@ -5351,7 +5344,6 @@ Partial Class Compras_eFacturas
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
@@ -5367,15 +5359,12 @@ Partial Class Compras_eFacturas
Contador = Contador + 1
Else
ErrorProceso = True
- ErrorProcesoStr = CompraActual.MSG_Error
+ ErrorProcesoStr = CompraActual.MensajeError
Exit For
End If
-
-
End If
Next
-
If Not ErrorProceso Then
CargaDatos()
If Contador > 0 Then
@@ -5385,9 +5374,8 @@ Partial Class Compras_eFacturas
Alert($"Se registraron {Contador} Compras. error {ErrorProcesoStr}", TipoMensaje.MsgAdvertencia)
End If
-
-
End Sub
+
End Class
Public Class Compra2
@@ -5593,7 +5581,6 @@ Public Class Compra2
Public Property TotalTraslados As Decimal = 0D
Public Property TrasladoIVA As Decimal = 0D
Public Property TrasladoIEPS As Decimal = 0D
- Public Property TrasladoIEP As Decimal = 0D
Public Property SumaTotalTraslados As Decimal = 0D
Public Property OtrosImpuestos As Decimal = 0D
Private Property OtrosImpuestosRetenciones As Decimal = 0D
@@ -5604,9 +5591,8 @@ Public Class Compra2
Public Property XMlStr As String
Public Property XMLCargaExistosa As Boolean = True
-
Public Property Observaciones As String = ""
- Public Property CveEstatusFactura As Integer = -1
+ Public Property CveEstatusFactura As Integer = 1
Public Property CvePrePoliza As Integer = -1
Public Property Redondeo As Decimal = 0
Public Property IdPoliza As Integer = -1
@@ -5628,7 +5614,7 @@ Public Class Compra2
Private Errores As StringBuilder = New StringBuilder
- Public ReadOnly Property MSG_Error As String
+ Public ReadOnly Property MensajeError As String
Get
Return Errores.ToString()
End Get
@@ -5699,7 +5685,6 @@ Public Class Compra2
CargaComprobanteXML(XMLDoc)
End If
-
End Sub
Private Sub CargaDesdeString(XmlFuente As String)
XMlStr = XmlFuente.Replace("<br>", "").Replace("<", "").Replace("o;?", "")
@@ -5717,10 +5702,8 @@ Public Class Compra2
CargaComprobanteXML(XMLDoc)
End If
-
End Sub
-
Private Sub CargaComprobanteXML(XMLDoc As XmlDocument)
Dim nodo As XmlNode = XMLDoc.DocumentElement
@@ -5728,7 +5711,6 @@ Public Class Compra2
Dim StrCFDIVerion As String = ValorXML(nodo, "version")
-
If StrCFDIVerion = "3.2" Then
CFDIVersion = EnumCFDIVersion.v32
ElseIf StrCFDIVerion = "3.3" Then
@@ -5916,7 +5898,6 @@ Public Class Compra2
#Region "DETALLES"
-
Dim ObjeFacturas As New ClsCompras
Dim AjustaUltimoConcepto = False
@@ -5967,11 +5948,8 @@ Public Class Compra2
End If
TmpDT.AcceptChanges()
ValidacionesTotalesXml()
-
-
End If
-
Me.PorcentajeIVA = TmpDT.MAX("IVAPorcentaje").ToDecimal
#End Region
@@ -6786,7 +6764,6 @@ Public Class Compra2
Row("IVAPorcentaje") = IVA
End If
-
Row("RetIVA") = (RetIVA * Total).RoundSQL
Row("RetIVAPorcentaje") = RetIVA
Row("RetISR") = (RetISR * Total).RoundSQL
@@ -6819,16 +6796,11 @@ Public Class Compra2
Row("CveTipoGastoAC") = CveTipoGastoAC
Row("CveClasificacionOG") = CveClasificacionOG
End If
-
-
'Esta parte es para validar cuando la factura tenga ieps en o se asignara el ieps como una partida ya no se considere
If (CveFactura > 0 Or CveCompra > 0) And IEPS = 0 Then
Row("IEPSPS") = 0
Row("IEPSPSPorcentaje") = 0
End If
-
-
-
TmpDT.Rows.Add(Row)
TmpDT.Rows.IndexOf(Row)
@@ -6899,9 +6871,6 @@ Public Class Compra2
CompraSaldo = LocalTotal
End If
-
-
-
Me.NumNoDed = TmpDT.COUNT("CvePS", "NoDeducible = True ")
@@ -6923,9 +6892,6 @@ Public Class Compra2
Return False
End Try
-
-
-
'DATOS GENERALES
DrPS("Obs") = ""
DrPS("Proyecto") = Proyecto
@@ -6972,23 +6938,14 @@ Public Class Compra2
DrPS("CveCultivoCuadroDetalle") = -1
DrPS("TemporadaCuadro") = ""
-
Else
Errores.AppendLine($"No se encontrol el producto con CvePS {CvePS}")
Respuesta = False
End If
-
-
-
TmpDT.AcceptChanges()
Return Respuesta
End Function
-
-
-
-
-
Private Sub ValidacionesTotalesXml()
If Not TmpDT.Columns.Contains("Amortizacion") Then
@@ -7005,7 +6962,6 @@ Public Class Compra2
Dim RetISRTemp = TmpDT.SUMD("RetISR")
Dim TotalTemp As Decimal = Subtotal2Temp - RetIVATemp - RetISRTemp + Math.Round(IVATemp, 6) + IEPSTemp + OtrosImpuestos - OtrosImpuestosRetenciones
-
If Math.Abs(Math.Round(DescuentosTemp, 6) - Math.Round(Descuento, 6)) > 0.01 Then
Msg &= String.Format("- Los descuentos del detalle no coinciden con el descuento general
")
End If
@@ -7050,12 +7006,8 @@ Public Class Compra2
Me.RetIVA = RetIVATemp
Me.RetISR = RetISRTemp
Me.IEPS = IEPSTemp
-
-
-
CompraSaldo = TotalTemp
-
AsignaValoresOriginales(SubtotalTemp, Subtotal2Temp, IVATemp, RetIVATemp, RetISRTemp, Total)
End Sub
@@ -7075,7 +7027,6 @@ Public Class Compra2
Dim Amortizacion As Decimal = 0
-
If TmpDT.Rows.Count > 0 Then ' si hay movimientos y si esta afectando al total, que se haga el ajuste
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
@@ -7109,11 +7060,8 @@ Public Class Compra2
SubTotalConceptos = SubTotal
-
End Sub
-
-
Public Function ValidateUUID(ByVal uuid As String) As Boolean
Dim pattern As String = "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
Dim regex As New Regex(pattern)
@@ -7149,26 +7097,19 @@ Public Class Compra2
End If
End Function
-
-
-
Public Function AddCompra() As Boolean
- If Not AjustesValidacion() Then
- Return False
- End If
+ If Not AjustesValidacion() Then Return False
Dim respuesta As Boolean = True
-
-
Dim ObjCompras As New ClsCompras
- ObjCompras.IniciaTransacSQL()
+ Dim ObjConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL())
- If Not AddPrepolizaCabecera(ObjCompras.IniciaTransacSQL()) Then
+ If Not AddPrepolizaCabecera(ObjConta) Then
respuesta = False
End If
- If respuesta And ObjCompras.AddCompra("Fac", Me.Descripcion, Me.Serie, Me.Folio, Me.FolioSecundario, Me.CveProveedor, Me.SubTotal, Me.Descuento,
+ If respuesta AndAlso ObjCompras.AddCompra(If(Me.TipoComprobante = "I", "Fac", "NC"), Me.Descripcion, Me.Serie, Me.Folio, Me.FolioSecundario, Me.CveProveedor, Me.SubTotal, Me.Descuento,
Me.Amortizacion, Me.IVA, Me.RetIVA, Me.RetISR, Me.IEPS, Me.OtrosImpuestos,
Me.Redondeo, Me.Total, Me.Fecha, Me.CveMoneda, Me.TipoCambio, If(Me.FechaPago = Nothing, Me.Fecha, Me.FechaPago), Me.AplicaNotaCredito, Me.Observaciones, Me.CveEstatusFactura,
Me.CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Me.IdPoliza, CveCajaChica:=Me.CveCajaChica, CvePersonal:=Me.CvePersonal, NumeroReembolso:=Me.NumeroReembolso, CveProveedorSucursal:=Me.CveProveedorSucursal,
@@ -7181,7 +7122,6 @@ Public Class Compra2
respuesta = False
End If
-
If respuesta AndAlso Me.CveCompra > 0 Then
For Each Row As DataRow In Me.TmpDT.Rows
@@ -7209,14 +7149,10 @@ Public Class Compra2
End If
If respuesta Then
- If Not AddPrepolizaDetalles(transaccion:=ObjCompras.IniciaTransacSQL()) Then
- respuesta = False
- End If
+ If Not AddPrepolizaDetalles(ObjConta) Then respuesta = False
End If
-
- Dim ObjConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL())
- If respuesta AndAlso ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, 4) Then
+ If respuesta AndAlso ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, 4) Then
If ObjConta.ValorPolizaDescuadre > 0 Then
Errores.AppendLine($"eFacturas/Compras-Guardar | Error{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}.")
GuardaLogAD($"eFacturas/Compras-Guardar | Error{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
@@ -7225,12 +7161,9 @@ Public Class Compra2
End If
If respuesta Then
- If Not ObjCompras.UpdateCompraFactura(Me.CveCompra, Me.CveFactura, Me.Serie, Me.Folio) Then
- respuesta = False
- End If
+ If Not ObjCompras.UpdateCompraFactura(Me.CveCompra, Me.CveFactura, Me.Serie, Me.Folio) Then respuesta = False
End If
-
If respuesta Then
ObjCompras.Commit()
Else
@@ -7238,134 +7171,81 @@ Public Class Compra2
End If
ObjCompras.Dispose()
-
+ ObjConta.Dispose()
Return respuesta
End Function
-
-
- Private Function AddPrepolizaCabecera(Optional transaccion As SqlTransaction = Nothing) As Boolean
+ Private Function AddPrepolizaCabecera(ByRef ObjConta As ClsContabilidad) As Boolean
Dim respuesta As Boolean = False
-
- Dim ObjConta As ClsContabilidad
- Dim DisposeClases As Boolean
-
-
- If transaccion IsNot Nothing Then
- ObjConta = New ClsContabilidad(transaccion)
- DisposeClases = False
- Else
- ObjConta = New ClsContabilidad
- DisposeClases = True
- End If
-
-
Dim ConceptoPoliza As String = String.Format("{0} - {1} - {2}", NombreProveedor, SerieFolio, "")
Me.CvePrePoliza = ObjConta.AddPrePolizas("eFacturas/Registrar", 1, Me.Total, Me.Total, Me.CveMoneda, Me.Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, 0, "", CveTipoPoliza:=Me.CveTipoPoliza)
respuesta = If(Me.CvePrePoliza > 0, True, False)
-
- If DisposeClases Then
- ObjConta.Dispose()
- End If
-
-
Return respuesta
-
End Function
- Private Function AddPrepolizaDetalles(transaccion As SqlTransaction) As Boolean
+ Private Function AddPrepolizaDetalles(ByRef ObjConta As ClsContabilidad) As Boolean
Dim respuesta As Boolean = True
-
- Dim ObjConta As ClsContabilidad
- Dim DisposeClases As Boolean
-
-
- If transaccion IsNot Nothing Then
- ObjConta = New ClsContabilidad(transaccion)
- DisposeClases = False
- Else
- ObjConta = New ClsContabilidad
- DisposeClases = True
- End If
-
Dim Concepto As String = $"{Me.NombreProveedor} {Me.SerieFolio}"
Dim Referencia As String = Me.SerieFolio
-
- 'TC del xml
-
+ Dim importeMovimiento As Decimal
+ Dim importeMN As Decimal
'6
For Each RowDetalle As DataRow In TmpDT.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "CveSubProyecto"}).Rows
- Dim importe = TmpDT.SUMD("Total", $" CveClasificacion = {RowDetalle("CveClasificacion").ToString} AND CveSubProyecto = {RowDetalle("CveSubProyecto").ToString}")
- Dim importeMN = importe * Me.TipoCambio
-
+ importeMovimiento = TmpDT.SUMD("Total", $" CveClasificacion = {RowDetalle("CveClasificacion").ToString} AND CveSubProyecto = {RowDetalle("CveSubProyecto").ToString}")
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
If importeMN <> 0 Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importe, Referencia, 6, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=Me.CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(TipoCambio = 1, 0, importe), TipoCambio:=TipoCambio,
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importeMovimiento, importeMN, 6, Referencia, Concepto, -1, CveCompra:=CveCompra, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=Me.CveCreditoDetalle, ImporteME:=If(TipoCambio = 1, 0, importeMovimiento), TipoCambio:=TipoCambio,
CveClasificacion:=RowDetalle("CveClasificacion").ToString().ToEntero(), CveSubProyecto:=RowDetalle("CveSubProyecto").ToString().ToEntero(), Contabilizable:=True) Then
respuesta = False
Exit For
End If
End If
-
Next
-
'14
- If Me.IVA > 0 Then
- Dim importeMovimiento As Decimal = Me.IVA
- Dim importeMN As Decimal = importeMovimiento * Me.TipoCambio
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importeMovimiento, Referencia, 14, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=Math.Round(importeMN, 2, MidpointRounding.AwayFromZero), ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=Me.PorcentajeIVA, Contabilizable:=True) Then
+ If respuesta AndAlso Me.IVA > 0 Then
+ importeMovimiento = Me.IVA
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, importeMovimiento, importeMN, 14, Referencia, Concepto, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=Me.PorcentajeIVA, Contabilizable:=True) Then
respuesta = False
End If
-
End If
-
'25
- If Me.IEPS > 0 Then
- Dim importeMovimiento As Decimal = Me.IEPS
- Dim importeMN As Decimal = importeMovimiento * Me.TipoCambio
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, 25, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=Math.Round(importeMN, 2, MidpointRounding.AwayFromZero), ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
+ If respuesta AndAlso Me.IEPS > 0 Then
+ importeMovimiento = Me.IEPS
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, 25, Referencia, Concepto, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
respuesta = False
End If
-
End If
-
-
- If Me.RetIVA > 0 Then
- Dim importeMovimiento As Decimal = Me.RetIVA
- Dim importeMN As Decimal = importeMovimiento * Me.TipoCambio
+ '
+ If respuesta AndAlso Me.RetIVA > 0 Then
+ importeMovimiento = Me.RetIVA
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
Dim ret As ConceptosRetenciones = ConceptoPrePolizaRetIVA
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, ret.CveConceptoxAcreditar, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=Math.Round(importeMN, 2, MidpointRounding.AwayFromZero), ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, ret.CveConceptoxAcreditar, Referencia, Concepto, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
respuesta = False
End If
End If
-
- If Me.RetISR > 0 Then
- Dim importeMovimiento As Decimal = Me.RetISR
- Dim importeMN As Decimal = importeMovimiento * Me.TipoCambio
+ '
+ If respuesta AndAlso Me.RetISR > 0 Then
+ importeMovimiento = Me.RetISR
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
Dim ret As ConceptosRetenciones = ConceptoPrePolizaRetISR
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, ret.CveConceptoxAcreditar, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=Math.Round(importeMN, 2, MidpointRounding.AwayFromZero), ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, ret.CveConceptoxAcreditar, Referencia, Concepto, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
respuesta = False
End If
End If
-
-
'5
If respuesta Then
-
-
- Dim importeMovimiento As Decimal = Me.Total
- Dim importeMN As Decimal = importeMovimiento * Me.TipoCambio
+ importeMovimiento = Me.Total
+ importeMN = (importeMovimiento * Me.TipoCambio).RoundSQL
Dim ConPreP As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(1, Me.CveMoneda, False, Me.CveTipoConceptoProveedor)
Dim ImporteME = importeMovimiento
-
Dim UsaComplementaria As Boolean = True
If Me.CveMoneda > 1 Then ImporteME = importeMovimiento
@@ -7375,34 +7255,17 @@ Public Class Compra2
Else
importeMN = importeMovimiento
End If
-
-
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, importeMN, ConPreP.CveConcepto, Referencia, Concepto, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
+ respuesta = False
+ End If
If respuesta AndAlso Me.CveMoneda > 1 AndAlso UsaComplementaria Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, 0, (importeMovimiento * TipoCambio - importeMovimiento).RoundSQL, ConPreP.CveConceptoComplementario, Referencia, Concepto, -1, CveCompra:=Me.CveCompra, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=Me.CvePersonal, CveCompraAmortizacion:=Me.CveCompraAmortizacion, TipoCambio:=Me.TipoCambio, TipoCambioPago:=1, ImporteME:=ImporteME, CveSubProyecto:=Me.CveSubProyecto) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, (importeMovimiento * Me.TipoCambio - importeMovimiento).RoundSQL, ConPreP.CveConceptoComplementario, Referencia, Concepto, -1, CveCompra:=Me.CveCompra, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=Me.CvePersonal, CveCompraAmortizacion:=Me.CveCompraAmortizacion, TipoCambio:=Me.TipoCambio, TipoCambioPago:=1, ImporteME:=ImporteME, CveSubProyecto:=Me.CveSubProyecto) Then
respuesta = False
End If
End If
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, ConPreP.CveConcepto, Concepto, Me.Fecha, -1, -1, CveCompra:=CveCompra, CveSubProyecto:=Me.CveSubProyectoPrincipal, CveProveedor:=Me.CveProveedor, CveIE:=Me.CveIE, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=Math.Round(importeMN, 2, MidpointRounding.AwayFromZero), ImporteME:=If(Me.TipoCambio = 1, 0, importeMovimiento), TipoCambio:=Me.TipoCambio, PorcentajeImpuesto:=0, Contabilizable:=True) Then
- respuesta = False
- End If
-
End If
-
- If DisposeClases Then
- If respuesta Then
- ObjConta.Commit()
- Else
- ObjConta.RollBack()
- End If
-
- ObjConta.Dispose()
- End If
-
-
Return respuesta
-
End Function
End Class