-- Aplicar Saldo a Factura

This commit is contained in:
2023-06-12 15:34:11 -07:00
parent 92c97edd81
commit 117e6adf23
2 changed files with 114 additions and 40 deletions

View File

@@ -1297,13 +1297,23 @@
<div class="row">
<div class="col-md-2">Acreedor:</div>
<div class="col-md-10">
<asp:DropDownList ID="DdlAcreedorPrePoliza" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="300px">
<asp:DropDownList ID="DdlAcreedorPrePoliza" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="300px" AutoPostBack="true">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVAcreedorPrePoliza" runat="server" ControlToValidate="DdlAcreedorPrePoliza" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Acreedor''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpAplicarSaldo"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEAcreedorPrePoliza" runat="server" HighlightCssClass="vco" TargetControlID="RFVAcreedorPrePoliza" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<div class="col-md-2">Compra:</div>
<div class="col-md-10">
<asp:DropDownList ID="DdlCompras" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="SerieFolio" DataValueField="CveCompra" Width="300px" >
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCompra" runat="server" ControlToValidate="DdlCompras" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Compra''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpAplicarSaldo"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RFVCompra" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="modal-footer">

View File

@@ -2,7 +2,9 @@
Option Explicit On
Imports System.Data
Imports System.Windows.Forms.VisualStyles.VisualStyleElement
Imports Extensiones
Imports Stimulsoft.Report.StiOptions.Export
Partial Class Bancos_Creditos
Inherits ClsPaginas
@@ -423,8 +425,8 @@ Partial Class Bancos_Creditos
LbSaldo.Text = $"Saldo <b>Acreedor</b> "
If ObjPrepoliza.GetPrePolizasDetalle(ObjCreditos.CvePrePoliza, UsuarioActual.CveEmpresa) AndAlso ObjPrepoliza.DtResultados.Rows.Count > 0 Then
LbSaldoAcreedor.Text = ObjPrepoliza.DtResultados.FiltraParametros("CveConceptoContable = 42").Rows(0)("Importe").ToString.FormatoNumero
LbSaldoDocxPagar.Text = ObjPrepoliza.DtResultados.FiltraParametros("CveConceptoContable = 50").Rows(0)("Importe").ToString.FormatoNumero
LbSaldoAcreedor.Text = ObjPrepoliza.DtResultados.FiltroPrimeroValor("Importe", "CveConceptoContable = 42").FormatoNumero
LbSaldoDocxPagar.Text = ObjPrepoliza.DtResultados.FiltroPrimeroValor("Importe", "CveConceptoContable = 50").FormatoNumero
End If
Else
@@ -1572,65 +1574,111 @@ Partial Class Bancos_Creditos
Dim CvePrePoliza = 0
'GENERA PREPOLIZA
If ObjContabilidad.GetPlantillaConceptos(UsuarioActual.CveEmpresa, 69) AndAlso ObjContabilidad.DtResultados.Rows.Count > 0 Then
Dim DtPlantilla = ObjContabilidad.DtResultados
Dim importeMovimiento = 0.0D
Dim importeMovimiento = 0.0D
Dim ConceptoContable = 0
Dim TipoMovimiento = False
Dim IdCtaContable = 0
Dim Concepto = ""
Dim Referencia = $"Crédito: {TxtReferencia.Text}"
Dim FechaMovimiento = Now.ToDate
Dim MsgError As String = ""
CvePrePoliza = ObjContabilidad.AddPrePolizas("Creditos/RegistrodeRegistro", 69, TxtCSTotalCredito.Text.ToDouble, TxtCSTotalCredito.Text.ToDouble, DdlCSTipoMoneda.SelectedValue.ToEntero, FechaMovimiento, $"Crédito: {TxtReferencia.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim ImporteDocXPagar = TxtTotalCredito.Text.ToDecimal
Dim CveActivoFijo = -1
Dim CveProveedor = -1
Dim CveCreditoPrePoliza = -1
Dim CveCreditoPrePoliza = -1
If CvePrePoliza > 0 Then
importeMovimiento = TxtVehiculoValor.Text.ToDecimal - TxtVehiculoAnticipo.Text.todecimal 'importe financiado
Concepto = $"Crédito: {TxtReferencia.Text}"
Dim Pago As New CompraPago
Pago.Fecha = Now
Pago.CveIE = CveIE
If CvePrePoliza > 0 Then
For Each Row As DataRow In DtPlantilla.Rows
ConceptoContable = Row("CveConcepto").ToString.ToEntero
TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
IdCtaContable = 0
importeMovimiento = 0
Concepto = $"Crédito: {TxtReferencia.Text}"
CveActivoFijo = -1
CveProveedor = -1
CveCreditoPrePoliza = -1
Dim ObjCompra As New ClsCompras
Select Case ConceptoContable
Case 50
importeMovimiento = ImporteDocXPagar
IdCtaContable = DdlCtaContable.SelectedValue.ToEntero
CveCreditoPrePoliza = CveCredito
CveProveedor = DdlProveedores.SelectedValue.ToEntero
Case 42
importeMovimiento = ImporteDocXPagar
If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, DdlAcreedorPrePoliza.SelectedValue.ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) AndAlso ObjProveedor.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjProveedor.IdCtaContAcreedor
CveProveedor = ObjProveedor.CveProveedor
End If
End Select
If importeMovimiento <> 0 Then
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
ErrorPrePoliza = True
End If
If ObjCompra.GetCompras(DdlCompras.SelectedValue.ToEntero, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
Dim dr As DataRow = ObjCompra.DtResultados.FiltroPrimero("")
Dim CompraActual As New Compra
CompraActual.CveCompra = dr("CveCompra").ToString.ToEntero
CompraActual.CveTipoConceptoProveedor = dr("CveTipoConcepto").ToString.ToEntero
CompraActual.CveProveedor = dr("CveProveedor").ToString.ToEntero
CompraActual.CveMoneda = dr("CveMoneda").ToString.ToEntero
CompraActual.Fecha = dr("Fecha").ToString.ToDate
CompraActual.SerieFolio = dr("SerieFolio").ToString
CompraActual.ProveedorNombre = dr("RazonSocial").ToString
CompraActual.TC = dr("TipoCambioOriginal").ToString.ToDecimal
CompraActual.Total = dr("Total").ToString.ToDecimal
CompraActual.IVA = dr("IVA").ToString.ToDecimal
CompraActual.IVADeducible = dr("IVADeducible").ToString.ToDecimal
CompraActual.IVANoDeducible = dr("IVANoDeducible").ToString.ToDecimal
CompraActual.CompraNoDeducible = dr("NoDeducible").ToString.ToEntero
CompraActual.IEPS = dr("IEPS").ToString.ToDecimal
CompraActual.RetIVA = dr("RetIVA").ToString.ToDecimal
CompraActual.RetISR = dr("RetISR").ToString.ToDecimal
CompraActual.CveConceptoRetISR = dr("CveRetISRConcepto").ToString.ToEntero
CompraActual.CveConceptoRetIVA = dr("CveRetIVAConcepto").ToString.ToEntero
CompraActual.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
CompraActual.EsImportacion = dr("EsImportacion").ToString = "1"
CompraActual.UsuarioActual = UsuarioActual
CompraActual.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
Pago.CveMonedaPago = CompraActual.CveMoneda
Pago.ImportePago = importeMovimiento
If AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjContabilidad) Then
MsgError = "No se pudo insertar la póliza"
ErrorPrePoliza = True
End If
If Not ErrorPrePoliza Then
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, 50, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
MsgError = "No se pudo insertar la póliza"
ErrorPrePoliza = True
End If
Next
Else
ErrorPrePoliza = True
End If
End If
'For Each Row As DataRow In DtPlantilla.Rows
' ConceptoContable = Row("CveConcepto").ToString.ToEntero
' TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
' IdCtaContable = 0
' importeMovimiento = 0
' CveActivoFijo = -1
' CveProveedor = -1
' CveCreditoPrePoliza = -1
' Select Case ConceptoContable
' Case 50
' importeMovimiento = ImporteDocXPagar
' IdCtaContable = DdlCtaContable.SelectedValue.ToEntero
' CveCreditoPrePoliza = CveCredito
' CveProveedor = DdlProveedores.SelectedValue.ToEntero
' Case 42
' importeMovimiento = ImporteDocXPagar
' If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, DdlAcreedorPrePoliza.SelectedValue.ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) AndAlso ObjProveedor.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjProveedor.IdCtaContAcreedor
' CveProveedor = ObjProveedor.CveProveedor
' End If
' End Select
' If importeMovimiento <> 0 Then
' If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
' ErrorPrePoliza = True
' End If
' End If
'Next
Else
ErrorPrePoliza = True
MsgError = "No se registró la prepóliza"
End If
If Not ErrorPrePoliza Then
If Not ObjBancos.UpdateCreditosPrePoliza(CveCredito, CvePrePoliza) Then
MsgError = "."
ErrorPrePoliza = True
End If
End If
@@ -1644,6 +1692,22 @@ Partial Class Bancos_Creditos
End If
End Sub
Private Sub DdlAcreedorPrePoliza_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlAcreedorPrePoliza.SelectedIndexChanged
If DdlAcreedorPrePoliza.SelectedValue.ToEntero > 0 Then
Dim ObjCompras As New ClsCompras
DdlCompras.ClearSelection()
If ObjCompras.GetCompras(-1, "-1", "-1", DdlAcreedorPrePoliza.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa) Then
DdlCompras.DataSource = ObjCompras.DtResultados.FiltraParametros("Saldo > 0")
Else
DdlCompras.DataSource = Nothing
End If
ObjCompras.Dispose()
DdlCompras.DataBind()
DdlCompras.Items.Insert(0, New ListItem(" - ", "-1"))
End If
End Sub
#End Region