Error al amortizar compra
This commit is contained in:
@@ -8655,246 +8655,255 @@ Partial Class Compras_Compras
|
|||||||
ObjConta = New ClsContabilidad(ObjCompra.IniciaTransacSQL)
|
ObjConta = New ClsContabilidad(ObjCompra.IniciaTransacSQL)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
Dim Contador As Integer = 0
|
Dim Contador As Integer = 0
|
||||||
Dim Importe As Double = 0
|
Dim Importe As Double = 0
|
||||||
Dim ErrorMovtosCxP As Integer = 0
|
Dim ErrorMovtosCxP As Integer = 0
|
||||||
Dim Fecha As Date
|
Dim Fecha As Date
|
||||||
|
|
||||||
If ListaDocumentos Is Nothing And Not ListaDocumentos.Count > 0 Then
|
|
||||||
For Each gvr As GridViewRow In GVAnticipos.Rows
|
|
||||||
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
|
||||||
Contador += 1
|
|
||||||
'If gvr.DataKey("Fecha").ToDate > Fecha Then Fecha = gvr.DataKey("Fecha").ToDate 'guardo la fecha mayor
|
|
||||||
Importe += gvr.FCTextBox("TxtAnticipo").Text.ToDouble
|
|
||||||
If Math.Round(Importe, 2) - Math.Round(CompraSaldo, 2) > 0.01 Then gvr.FCTextBox("TxtAnticipo").Text = "" : gvr.FCCheckBox("Chk").Checked = False
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
Else
|
|
||||||
Contador = 1
|
|
||||||
End If
|
|
||||||
|
|
||||||
'If TxtFecha.Text.ToDate > Fecha Then Fecha = TxtFecha.Text.ToDate
|
|
||||||
Fecha = TxtFechaEjecucion.Text.ToDate
|
|
||||||
|
|
||||||
'Contador = 0
|
|
||||||
If Contador > 0 Then
|
|
||||||
If ListaDocumentos Is Nothing And Not ListaDocumentos.Count > 0 Then
|
If ListaDocumentos Is Nothing And Not ListaDocumentos.Count > 0 Then
|
||||||
If Math.Round(Importe, 2) - Math.Round(CompraSaldo, 2) > 0.01 Then
|
For Each gvr As GridViewRow In GVAnticipos.Rows
|
||||||
Alert("El Importe seleccionado excede al importe de la compra", TipoMensaje.MsgAdvertencia)
|
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
||||||
Exit Sub
|
Contador += 1
|
||||||
End If
|
'If gvr.DataKey("Fecha").ToDate > Fecha Then Fecha = gvr.DataKey("Fecha").ToDate 'guardo la fecha mayor
|
||||||
|
Importe += gvr.FCTextBox("TxtAnticipo").Text.ToDouble
|
||||||
|
If Math.Round(Importe, 2) - Math.Round(CompraSaldo, 2) > 0.01 Then gvr.FCTextBox("TxtAnticipo").Text = "" : gvr.FCCheckBox("Chk").Checked = False
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
Else
|
||||||
|
Contador = 1
|
||||||
End If
|
End If
|
||||||
|
|
||||||
ArrAnticipos.Clear()
|
'If TxtFecha.Text.ToDate > Fecha Then Fecha = TxtFecha.Text.ToDate
|
||||||
|
Fecha = TxtFechaEjecucion.Text.ToDate
|
||||||
|
|
||||||
If CveCompra > 0 Then
|
'Contador = 0
|
||||||
|
If Contador > 0 Then
|
||||||
Dim ObjContaAC As ClsContPAQi = Nothing
|
If ListaDocumentos Is Nothing And Not ListaDocumentos.Count > 0 Then
|
||||||
|
If Math.Round(Importe, 2) - Math.Round(CompraSaldo, 2) > 0.01 Then
|
||||||
'INICIALIZA OBJETOS
|
Alert("El Importe seleccionado excede al importe de la compra", TipoMensaje.MsgAdvertencia)
|
||||||
If Not (ObjComprasParametro IsNot Nothing And ObjContaParametro IsNot Nothing) Then
|
Exit Sub
|
||||||
ObjCompra = New ClsCompras
|
End If
|
||||||
ObjConta = New ClsContabilidad(ObjCompra.IniciaTransacSQL)
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Dim CveCompraNC, IdCtaContable, IdCtaContableComp As Integer
|
ArrAnticipos.Clear()
|
||||||
Dim ConceptoPoliza As String = $"Amortización {NombreProveedor} - {TxtSerie.Text}-{TxtFolio.Text}"
|
|
||||||
|
|
||||||
Try
|
If CveCompra > 0 Then
|
||||||
Dim CveIE As Integer = -1
|
|
||||||
|
|
||||||
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
|
Dim ObjContaAC As ClsContPAQi = Nothing
|
||||||
Dim CompraActual As New Compra
|
|
||||||
CompraActual.CveCompra = CveCompra
|
|
||||||
CompraActual.CveTipoConceptoProveedor = CveTipoConcepto
|
|
||||||
CompraActual.CveProveedor = CveProveedor
|
|
||||||
CompraActual.CveMoneda = DdlMoneda.SelectedValue.ToEntero
|
|
||||||
CompraActual.Fecha = TxtFecha.Text.ToDate
|
|
||||||
CompraActual.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
|
|
||||||
CompraActual.ProveedorNombre = HplProveedor.Text
|
|
||||||
CompraActual.TC = TipoCambio
|
|
||||||
CompraActual.Total = TxtTotal.Text.ToDecimal
|
|
||||||
CompraActual.IVA = TxtIVA.Text.ToDecimal
|
|
||||||
CompraActual.IVADeducible = TxtIVA.Text.ToDecimal
|
|
||||||
CompraActual.IEPS = TxtIEPS.Text.ToDecimal
|
|
||||||
CompraActual.RetIVA = TxtRetIVA.Text.ToDecimal
|
|
||||||
CompraActual.RetISR = TxtRetISR.Text.ToDecimal
|
|
||||||
CompraActual.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
|
|
||||||
CompraActual.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
|
|
||||||
CompraActual.PorcentajeIVA = PorcentajeIVA
|
|
||||||
CompraActual.UsuarioActual = UsuarioActual
|
|
||||||
CompraActual.CveSubProyecto = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
|
|
||||||
CompraActual.IdCtaContableProv = CtaProveedor
|
|
||||||
CompraActual.IdCtaContableProvComplementaria = CtaProveedorComplementaria
|
|
||||||
CompraActual.EsImportacion = chkImportacion.Checked
|
|
||||||
|
|
||||||
Dim CvePrePolizaNueva As Integer = ObjConta.AddPrePolizas("Compras/Anticipos", 52, Importe, Importe, DdlMoneda.SelectedValue.ToEntero, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
|
'INICIALIZA OBJETOS
|
||||||
|
If Not (ObjComprasParametro IsNot Nothing And ObjContaParametro IsNot Nothing) Then
|
||||||
|
ObjCompra = New ClsCompras
|
||||||
|
ObjConta = New ClsContabilidad(ObjCompra.IniciaTransacSQL)
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim CveCompraNC, IdCtaContable, IdCtaContableComp As Integer
|
||||||
|
Dim ConceptoPoliza As String = $"Amortización {NombreProveedor} - {TxtSerie.Text}-{TxtFolio.Text}"
|
||||||
|
|
||||||
|
Try
|
||||||
|
Dim CveIE As Integer = -1
|
||||||
|
|
||||||
|
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
|
||||||
|
Dim CompraActual As New Compra
|
||||||
|
CompraActual.CveCompra = CveCompra
|
||||||
|
CompraActual.CveTipoConceptoProveedor = CveTipoConcepto
|
||||||
|
CompraActual.CveProveedor = CveProveedor
|
||||||
|
CompraActual.CveMoneda = DdlMoneda.SelectedValue.ToEntero
|
||||||
|
CompraActual.Fecha = TxtFecha.Text.ToDate
|
||||||
|
CompraActual.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
|
||||||
|
CompraActual.ProveedorNombre = HplProveedor.Text
|
||||||
|
CompraActual.TC = TipoCambio
|
||||||
|
CompraActual.Total = TxtTotal.Text.ToDecimal
|
||||||
|
CompraActual.IVA = TxtIVA.Text.ToDecimal
|
||||||
|
CompraActual.IVADeducible = TxtIVA.Text.ToDecimal
|
||||||
|
CompraActual.IEPS = TxtIEPS.Text.ToDecimal
|
||||||
|
CompraActual.RetIVA = TxtRetIVA.Text.ToDecimal
|
||||||
|
CompraActual.RetISR = TxtRetISR.Text.ToDecimal
|
||||||
|
CompraActual.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
|
||||||
|
CompraActual.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
|
||||||
|
CompraActual.PorcentajeIVA = PorcentajeIVA
|
||||||
|
CompraActual.UsuarioActual = UsuarioActual
|
||||||
|
CompraActual.CveSubProyecto = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
|
||||||
|
CompraActual.IdCtaContableProv = CtaProveedor
|
||||||
|
CompraActual.IdCtaContableProvComplementaria = CtaProveedorComplementaria
|
||||||
|
CompraActual.EsImportacion = chkImportacion.Checked
|
||||||
|
|
||||||
|
Dim CvePrePolizaNueva As Integer = ObjConta.AddPrePolizas("Compras/Anticipos", 52, Importe, Importe, DdlMoneda.SelectedValue.ToEntero, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
|
||||||
|
|
||||||
|
For Each gvr As GridViewRow In GVAnticipos.Rows
|
||||||
|
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
||||||
|
|
||||||
|
CveCompraNC = gvr.DataKey("CveCompra").ToEntero
|
||||||
|
If CvePrePoliza > 0 Then
|
||||||
|
|
||||||
|
Dim CveConceptoCompra As Integer = 60
|
||||||
|
Dim CveConceptoCompraComplementaria As Integer = 266
|
||||||
|
Dim TipoMovimientoCompra As Boolean = True
|
||||||
|
Dim CveMonedaAnticipo As Integer = gvr.DataKey("CveMoneda").ToEntero
|
||||||
|
Dim TipoCambioAnt As Decimal = gvr.DataKey("TCCompra").ToDecimal
|
||||||
|
Dim ImporteAnt As Decimal = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal
|
||||||
|
Dim ImporComisionAnticipo As Decimal = gvr.FCTextBox("TxtComision").Text.ToDecimal
|
||||||
|
|
||||||
|
Dim Pago As New CompraPago
|
||||||
|
Pago.TipoPago = gvr.DataKey("TipoDocto")
|
||||||
|
Pago.ImportePago = ImporteAnt
|
||||||
|
Pago.OtroGastoIngreso = ImporComisionAnticipo
|
||||||
|
Pago.CveMonedaPago = CveMonedaAnticipo
|
||||||
|
Pago.TCPago = TipoCambioAnt
|
||||||
|
Pago.CveProveedor = gvr.DataKey("CveProveedor").ToEntero
|
||||||
|
|
||||||
|
Select Case gvr.DataKey("TipoDocto")
|
||||||
|
Case "NC", "DEV"
|
||||||
|
CveConceptoCompra = If(CveMonedaAnticipo = 1, 60, 60)
|
||||||
|
CveConceptoCompraComplementaria = 235
|
||||||
|
IdCtaContable = If(CveMonedaAnticipo = 1, CtaProveedor, CtaProveedorExtranjera)
|
||||||
|
IdCtaContableComp = CtaProveedorComplementaria
|
||||||
|
CveIE = -1
|
||||||
|
Pago.AplicaAcreditable = False
|
||||||
|
Case "Egsc"
|
||||||
|
CveConceptoCompra = If(CveMonedaAnticipo = 1, 21, 21)
|
||||||
|
CveConceptoCompraComplementaria = 266
|
||||||
|
IdCtaContable = If(CveMonedaAnticipo = 1, CtaProveedorAnticipos, CtaProveedorAnticiposExtranjera)
|
||||||
|
IdCtaContableComp = CtaProveedorAnticiposComplementaria
|
||||||
|
|
||||||
|
'vinculo la compra actual, y no la compra como si fuera nota de credito
|
||||||
|
CveCompraNC = -1
|
||||||
|
CveIE = gvr.DataKey("CveIE").ToEntero
|
||||||
|
CompraActual.IdCtaContableAnticipoProv = IdCtaContable
|
||||||
|
Case "DD"
|
||||||
|
CveConceptoCompra = If(CveMonedaAnticipo = 1, 37, 37)
|
||||||
|
IdCtaContable = CtaProveedorDeudores
|
||||||
|
'vinculo la compra actual, y no la compra como si fuera nota de credito
|
||||||
|
CveCompraNC = -1
|
||||||
|
CveIE = gvr.DataKey("CveIE").ToEntero
|
||||||
|
End Select
|
||||||
|
|
||||||
|
'PorcentajePago = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal / TxtTotal.Text.ToDecimal
|
||||||
|
|
||||||
|
Pago.CveIE = CveIE
|
||||||
|
Pago.CveCompraAmortizacion = CveCompraNC
|
||||||
|
|
||||||
|
If AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePolizaNueva, ObjConta) Then
|
||||||
|
ErrorMovtosCxP = 1
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
|
||||||
|
If ErrorMovtosCxP = 0 And CvePrePolizaNueva > 0 Then
|
||||||
|
|
||||||
|
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
||||||
|
If ObjContaAC Is Nothing Then
|
||||||
|
ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
|
||||||
|
ObjContaAC.IniciaTransacSQL()
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaNueva, UsuarioActual.CveUsuario, UsuarioActual.Empresa, MinFecha, "", ObjContaAC) Then
|
||||||
|
ErrorMovtosCxP = 3
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Select Case ErrorMovtosCxP
|
||||||
|
Case 0
|
||||||
|
|
||||||
|
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
||||||
|
If ObjContaAC IsNot Nothing Then
|
||||||
|
ObjContaAC.Commit()
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
Alert("El movimiento se aplicó correctamente.", TipoMensaje.MsgInformacion)
|
||||||
|
ObjCompra.Commit()
|
||||||
|
|
||||||
|
Dim dtnc As DataTable = Nothing
|
||||||
|
If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
|
||||||
|
dtnc = ObjCompra.DtResultados
|
||||||
|
End If
|
||||||
|
|
||||||
|
GvAnticiposSel.DataSource = dtnc
|
||||||
|
GvAnticiposSel.DataBind()
|
||||||
|
|
||||||
|
LblAmortizacion.Text = (LblAmortizacion.Text.ToDouble + Importe).FormatoNumero
|
||||||
|
CompraSaldo = CompraSaldo - Importe
|
||||||
|
HdnCompraSaldo.Value = CompraSaldo.ToString
|
||||||
|
|
||||||
|
If CompraSaldo > 0 Then CargaAnticipos(CveProveedor)
|
||||||
|
If CveCompra > 0 Then VisualizaEstatusCompraSaldo(DdlTipoComprobante.SelectedValue, CompraSaldo.ToDecimal, TxtTotal.Text.ToDecimal)
|
||||||
|
|
||||||
|
UpAnticipos.Update()
|
||||||
|
UpPS.Update()
|
||||||
|
dtnc.Dispose()
|
||||||
|
|
||||||
|
Case 1
|
||||||
|
Alert("Ocurrió un error al amortizar la nota de crédito<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico", TipoMensaje.MsgAdvertencia)
|
||||||
|
ObjCompra.RollBack()
|
||||||
|
Case 2
|
||||||
|
Alert("Ocurrió un error al amortizar la nota de crédito<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico", TipoMensaje.MsgAdvertencia)
|
||||||
|
ObjCompra.RollBack()
|
||||||
|
Case 3
|
||||||
|
Alert("Ocurrió un error al contabilizar la la amortizacion del anticipo.", TipoMensaje.MsgAdvertencia)
|
||||||
|
|
||||||
|
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
||||||
|
If ObjContaAC IsNot Nothing Then
|
||||||
|
Try
|
||||||
|
ObjContaAC.RollBack()
|
||||||
|
Catch ex As Exception
|
||||||
|
|
||||||
|
End Try
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
ObjCompra.RollBack()
|
||||||
|
End Select
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
ObjCompra.RollBack()
|
||||||
|
End Try
|
||||||
|
|
||||||
|
|
||||||
|
If ObjContaAC IsNot Nothing Then
|
||||||
|
ObjContaAC.Dispose()
|
||||||
|
End If
|
||||||
|
|
||||||
|
ObjCompra.Dispose()
|
||||||
|
|
||||||
|
Else
|
||||||
|
'sino se ha guardado la compra, se registra temporal que anticpos van a cargarle
|
||||||
|
|
||||||
For Each gvr As GridViewRow In GVAnticipos.Rows
|
For Each gvr As GridViewRow In GVAnticipos.Rows
|
||||||
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
||||||
|
ArrAnticipos.Add(New Anticipos With {.CvePrePoliza = gvr.DataKey("CvePrePoliza").ToEntero, .CveIE = gvr.DataKey("CveIE").ToString.ToEntero, .CveCompra = gvr.DataKey("CveCompra").ToEntero, .Importe = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, .ImporteComision = gvr.FCTextBox("TxtComision").Text.ToDecimal, .TCCompra = gvr.DataKey("TCCompra").ToDecimal, .TipoMovto = gvr.DataKey("TipoDocto")})
|
||||||
CveCompraNC = gvr.DataKey("CveCompra").ToEntero
|
|
||||||
If CvePrePoliza > 0 Then
|
|
||||||
|
|
||||||
Dim CveConceptoCompra As Integer = 60
|
|
||||||
Dim CveConceptoCompraComplementaria As Integer = 266
|
|
||||||
Dim TipoMovimientoCompra As Boolean = True
|
|
||||||
Dim CveMonedaAnticipo As Integer = gvr.DataKey("CveMoneda").ToEntero
|
|
||||||
Dim TipoCambioAnt As Decimal = gvr.DataKey("TCCompra").ToDecimal
|
|
||||||
Dim ImporteAnt As Decimal = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal
|
|
||||||
Dim ImporComisionAnticipo As Decimal = gvr.FCTextBox("TxtComision").Text.ToDecimal
|
|
||||||
|
|
||||||
Dim Pago As New CompraPago
|
|
||||||
Pago.TipoPago = gvr.DataKey("TipoDocto")
|
|
||||||
Pago.ImportePago = ImporteAnt
|
|
||||||
Pago.OtroGastoIngreso = ImporComisionAnticipo
|
|
||||||
Pago.CveMonedaPago = CveMonedaAnticipo
|
|
||||||
Pago.TCPago = TipoCambioAnt
|
|
||||||
Pago.CveProveedor = gvr.DataKey("CveProveedor").ToEntero
|
|
||||||
|
|
||||||
Select Case gvr.DataKey("TipoDocto")
|
|
||||||
Case "NC", "DEV"
|
|
||||||
CveConceptoCompra = If(CveMonedaAnticipo = 1, 60, 60)
|
|
||||||
CveConceptoCompraComplementaria = 235
|
|
||||||
IdCtaContable = If(CveMonedaAnticipo = 1, CtaProveedor, CtaProveedorExtranjera)
|
|
||||||
IdCtaContableComp = CtaProveedorComplementaria
|
|
||||||
CveIE = -1
|
|
||||||
Pago.AplicaAcreditable = False
|
|
||||||
Case "Egsc"
|
|
||||||
CveConceptoCompra = If(CveMonedaAnticipo = 1, 21, 21)
|
|
||||||
CveConceptoCompraComplementaria = 266
|
|
||||||
IdCtaContable = If(CveMonedaAnticipo = 1, CtaProveedorAnticipos, CtaProveedorAnticiposExtranjera)
|
|
||||||
IdCtaContableComp = CtaProveedorAnticiposComplementaria
|
|
||||||
|
|
||||||
'vinculo la compra actual, y no la compra como si fuera nota de credito
|
|
||||||
CveCompraNC = -1
|
|
||||||
CveIE = gvr.DataKey("CveIE").ToEntero
|
|
||||||
CompraActual.IdCtaContableAnticipoProv = IdCtaContable
|
|
||||||
Case "DD"
|
|
||||||
CveConceptoCompra = If(CveMonedaAnticipo = 1, 37, 37)
|
|
||||||
IdCtaContable = CtaProveedorDeudores
|
|
||||||
'vinculo la compra actual, y no la compra como si fuera nota de credito
|
|
||||||
CveCompraNC = -1
|
|
||||||
CveIE = gvr.DataKey("CveIE").ToEntero
|
|
||||||
End Select
|
|
||||||
|
|
||||||
'PorcentajePago = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal / TxtTotal.Text.ToDecimal
|
|
||||||
|
|
||||||
Pago.CveIE = CveIE
|
|
||||||
Pago.CveCompraAmortizacion = CveCompraNC
|
|
||||||
AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePolizaNueva, ObjConta)
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Next
|
Next
|
||||||
|
|
||||||
If ErrorMovtosCxP = 0 And CvePrePolizaNueva > 0 Then
|
Dim ImporteAnticipo As Decimal = 0
|
||||||
|
If ArrAnticipos.Count > 0 Then
|
||||||
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
For Each Ant As Compras_Compras.Anticipos In ArrAnticipos
|
||||||
If ObjContaAC Is Nothing Then
|
ImporteAnticipo += Ant.Importe
|
||||||
ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
|
Next
|
||||||
ObjContaAC.IniciaTransacSQL()
|
|
||||||
End If
|
|
||||||
|
|
||||||
If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaNueva, UsuarioActual.CveUsuario, UsuarioActual.Empresa, MinFecha, "", ObjContaAC) Then
|
|
||||||
ErrorMovtosCxP = 3
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Select Case ErrorMovtosCxP
|
LblAmortizacion.Text = ImporteAnticipo.FormatoNumero
|
||||||
Case 0
|
LblAplicadoCompraAnt.Text = ImporteAnticipo.FormatoNumero
|
||||||
|
LblSaldoFactura.Text = (TxtTotal.Text.ToDecimal - ImporteAnticipo).ToString.FormatoNumero
|
||||||
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
UpPS.Update()
|
||||||
If ObjContaAC IsNot Nothing Then
|
|
||||||
ObjContaAC.Commit()
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
Alert("El movimiento se aplicó correctamente.", TipoMensaje.MsgInformacion)
|
|
||||||
ObjCompra.Commit()
|
|
||||||
|
|
||||||
Dim dtnc As DataTable = Nothing
|
|
||||||
If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
|
|
||||||
dtnc = ObjCompra.DtResultados
|
|
||||||
End If
|
|
||||||
|
|
||||||
GvAnticiposSel.DataSource = dtnc
|
|
||||||
GvAnticiposSel.DataBind()
|
|
||||||
|
|
||||||
LblAmortizacion.Text = (LblAmortizacion.Text.ToDouble + Importe).FormatoNumero
|
|
||||||
CompraSaldo = CompraSaldo - Importe
|
|
||||||
HdnCompraSaldo.Value = CompraSaldo.ToString
|
|
||||||
|
|
||||||
If CompraSaldo > 0 Then CargaAnticipos(CveProveedor)
|
|
||||||
If CveCompra > 0 Then VisualizaEstatusCompraSaldo(DdlTipoComprobante.SelectedValue, CompraSaldo.ToDecimal, TxtTotal.Text.ToDecimal)
|
|
||||||
|
|
||||||
UpAnticipos.Update()
|
|
||||||
UpPS.Update()
|
|
||||||
dtnc.Dispose()
|
|
||||||
|
|
||||||
Case 1
|
|
||||||
Alert("Ocurrió un error al amortizar la nota de crédito<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico", TipoMensaje.MsgAdvertencia)
|
|
||||||
ObjCompra.RollBack()
|
|
||||||
Case 2
|
|
||||||
Alert("Ocurrió un error al amortizar la nota de crédito<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico", TipoMensaje.MsgAdvertencia)
|
|
||||||
ObjCompra.RollBack()
|
|
||||||
Case 3
|
|
||||||
Alert("Ocurrió un error al contabilizar la la amortizacion del anticipo.", TipoMensaje.MsgAdvertencia)
|
|
||||||
|
|
||||||
If (UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1") AndAlso IdPoliza > 0 AndAlso UsuarioActual.Empresa.TipoContabilidad = 2 Then
|
|
||||||
If ObjContaAC IsNot Nothing Then
|
|
||||||
Try
|
|
||||||
ObjContaAC.RollBack()
|
|
||||||
Catch ex As Exception
|
|
||||||
|
|
||||||
End Try
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
|
|
||||||
ObjCompra.RollBack()
|
|
||||||
End Select
|
|
||||||
|
|
||||||
Catch ex As Exception
|
|
||||||
ObjCompra.RollBack()
|
|
||||||
End Try
|
|
||||||
|
|
||||||
|
|
||||||
If ObjContaAC IsNot Nothing Then
|
|
||||||
ObjContaAC.Dispose()
|
|
||||||
End If
|
End If
|
||||||
|
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAnticipos"))
|
||||||
ObjCompra.Dispose()
|
|
||||||
|
|
||||||
Else
|
Else
|
||||||
'sino se ha guardado la compra, se registra temporal que anticpos van a cargarle
|
Alert("No hay movimientos seleccionados para aplicar", TipoMensaje.MsgAdvertencia)
|
||||||
|
|
||||||
For Each gvr As GridViewRow In GVAnticipos.Rows
|
|
||||||
If gvr.FCCheckBox("Chk") IsNot Nothing AndAlso gvr.FCCheckBox("Chk").Checked Then
|
|
||||||
ArrAnticipos.Add(New Anticipos With {.CvePrePoliza = gvr.DataKey("CvePrePoliza").ToEntero, .CveIE = gvr.DataKey("CveIE").ToString.ToEntero, .CveCompra = gvr.DataKey("CveCompra").ToEntero, .Importe = gvr.FCTextBox("TxtAnticipo").Text.ToDecimal, .ImporteComision = gvr.FCTextBox("TxtComision").Text.ToDecimal, .TCCompra = gvr.DataKey("TCCompra").ToDecimal, .TipoMovto = gvr.DataKey("TipoDocto")})
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
|
|
||||||
Dim ImporteAnticipo As Decimal = 0
|
|
||||||
If ArrAnticipos.Count > 0 Then
|
|
||||||
For Each Ant As Compras_Compras.Anticipos In ArrAnticipos
|
|
||||||
ImporteAnticipo += Ant.Importe
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
|
|
||||||
LblAmortizacion.Text = ImporteAnticipo.FormatoNumero
|
|
||||||
LblAplicadoCompraAnt.Text = ImporteAnticipo.FormatoNumero
|
|
||||||
LblSaldoFactura.Text = (TxtTotal.Text.ToDecimal - ImporteAnticipo).ToString.FormatoNumero
|
|
||||||
UpPS.Update()
|
|
||||||
End If
|
End If
|
||||||
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAnticipos"))
|
UPPAnticiposSel.Update()
|
||||||
Else
|
|
||||||
Alert("No hay movimientos seleccionados para aplicar", TipoMensaje.MsgAdvertencia)
|
Catch ex As Exception
|
||||||
End If
|
ObjCompra.RollBack()
|
||||||
UPPAnticiposSel.Update()
|
ObjCompra.Dispose()
|
||||||
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user